ビルドタグの使用

ビルドタグは、情報の簡潔な要素であり、システム (通常の) ビルドまたは CI ビルドを目立たせるために使用できます。

ビルドタグを使用すると、次のことができます。

  • ブランチ名、コミット ID、プラットフォーム、またはアーキテクチャなどの便利なタグをビルドに割り当てる

  • スクリプトで使用できるビルドに任意のメタデータを追加する

  • コミットまたはブランチをビルドに関連付ける (そして、オーバーライドファイルの生成時に使用することができる)

ビルドタグは、ポータルまたは Web API でビルドを編集することで、あるいは kwadmin または validate 管理コマンドを使用することで、表示、更新、クリアすることができます。

ビルドタグの使用に関するヒント:

  • 複数のタグを指定する場合はカンマで区切ってください。例:

    tag1,tag2,tag3

  • ビルドタグにはスペースを含めることができますが、タグの前後にスペースを入れることはできません。例:

    tag 1,tag 2,tag 3

  • ビルドタグは 256 バイトを超えることはできません。

  • 既存のビルドタグを置き換えるには、タグ文字列全体を置き換えます。たとえば、文字列「tag1,tag2,tag3」の「tag2」を「tag2A」に置き換える場合は、次のように入力します。

    tag1,tag2A,tag3

  • 既存のタグに追加するには、既存の文字列の末尾に新しいタグを追加するだけです。たとえば、文字列「tag1,tag2,tag3」に「tag4」を追加するには、次のように入力します。

    tag1,tag2,tag3,tag4

  • ビルドのロード中に、直接ビルドにビルドタグを設定できます。例:

    kwadmin --url http://localhost:8080 load <project_name> <tables_folder> --tags tag1,tag2,tag3
  • タグは英語と日本語のどちらかで追加することができます。日本語文字の場合は、curl を介して UTF-8 文字を使用してください。

    UTF-8 データや大きなデータをポストする場合は、--data-binary "@filename.txt" を charset=utf-8 と組み合わせて使用すると、パラメータを手動でエンコードしなくても済みます。例:

    1. すべての要求パラメーターを含むテキストファイル (tags.txt) を作成します。

      user=myself&project=weather_control&action=update_build&name=天気制御_prototype&tags=cloud seeding,micro singularity,本当に大ファン
    2. 呼び出しを実行します。

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

    データを要求するときに文字セットを設定し、curl 出力をファイルにリダイレクトすることもできます。このプロセスにより、Windows 環境で curl を使用するときに応答内の UTF-8 文字を簡単に処理できるようになります。例:

    1. ビルド 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. 応答 (output.txt) は次のようになります。

      {
      	"id": 1,
      	"name": "天気制御_prototype",
      	"date": 1691154992109,
      	"keepit": false,
      	"tags": [
      		"cloud seeding",
      		"micro singularity",
      		"本当に大ファン"
      		]
      	}
      {
      	"id": 2,
      	"name": "天気制御_production",
      	"date": 1691154992110,
      	"keepit": true,
      	"tags": [
      		"atmosphorming"
      		]
      	}
      			
  • タグをクリアするには、「tags=」の後にデータを入力せずに要求を送信します。例:
    curl --data "user=myself&project=weather_control&action=update_build&name=weather_prototype&tags=" http://localhost:8080/review/api