Using build tags

Build tags are brief elements of information that can be used to make a system (regular) build or CI build stand out.

With build tags, you can

  • assign useful tags such as branch names, commit IDs, platforms, or architecture to a build

  • add arbitrary metadata to a build that can be used in your scripts

  • associate a commit or branch with a build, which can be used when generating an overrides file

You can view, update, and clear build tags by editing a build through the Portal, web API, or by using the kwadmin or validate admin commands.

Some tips on using build tags:

  • Use comma to separate your list of tags. Examples:

    tag1,tag2,tag3

  • Build tags can each contain spaces, but not at either end. Examples:

    tag 1,tag 2,tag 3

  • Build tags cannot be longer than 256 bytes.

  • To replace existing build tags, replace the whole tag string. For example, if you wish to replace "tag2" with "tag2A" in the string "tag1,tag2,tag3", input

    tag1,tag2A,tag3

  • To add to existing tags, simply add the new tag to the end of the existing string. For example, to add "tag4" to the string "tag1,tag2,tag3", input:

    tag1,tag2,tag3,tag4

  • You can set build tags directly on a build during the loading of a build. For example:

    kwadmin --url http://localhost:8080 load <project_name> <tables_folder> --tags tag1,tag2,tag3
  • You can add tags in either English or Japanese. For Japanese characters, use UTF-8 characters via curl.

    When posting UTF-8 and/or large data, you can use --data-binary "@filename.txt" in combination with charset=utf-8 to avoid encoding parameters manually. For example:

    1. Prepare a text file (tags.txt) containing all the request parameters:

      user=myself&project=weather_control&action=update_build&name=天気制御_prototype&tags=cloud seeding,micro singularity,本当に大ファン
    2. Run the call:

      curl -H "Content-Type: application/x-www-form-urlencoded; charset=utf-8" --data-binary "@tags.txt" http://localhost:8080/review/api

    You can also set charset when requesting data and redirect the curl output to a file as well. This process makes it easier to deal with UTF-8 characters in responses when using curl in a Windows environment. For example:

    1. Call the build web API:

      curl -H "Content-Type: application/x-www-form-urlencoded; charset=utf-8" -d "user=myself&project=weather_control&action=builds" http://localhost:8080/review/api > output.txt
    2. The response (output.txt) is shown next:

      {
      	"id": 1,
      	"name": "天気制御_prototype",
      	"date": 1691154992109,
      	"keepit": false,
      	"tags": [
      		"cloud seeding",
      		"micro singularity",
      		"本当に大ファン"
      		]
      	}
      {
      	"id": 2,
      	"name": "天気制御_production",
      	"date": 1691154992110,
      	"keepit": true,
      	"tags": [
      		"atmosphorming"
      		]
      	}
      			
  • To clear tags, send a request with no data after “tags=”. For example:
    curl --data "user=myself&project=weather_control&action=update_build&name=weather_prototype&tags=" http://localhost:8080/review/api