第2章 ビルドストラテジーの設定
プラットフォームエンジニアは、BuildStrategy または ClusterBuildStrategy カスタムリソース (CR) で、パラメーター、システム設定、リソース要件、アノテーション、ボリュームを指定することで、一貫性のあるビルドストラテジーを定義できます。これらのストラテジーにより、クラスター全体で制御された再利用可能なビルド実行が可能になります。
2.1. ストラテジーパラメーターの定義 リンクのコピーリンクがクリップボードにコピーされました!
BuildStrategy または ClusterBuildStrategy カスタムリソース (CR) でパラメーターを定義します。これらの値は、ビルド または ビルド実行 CR で設定または変更できます。
ストラテジーのパラメーターを定義する前に、以下の点を考慮してください。
-
ビルドストラテジー CR の
spec.parametersフィールドでパラメーターのリストを定義します。各項目には、名前、説明、タイプ、およびオプションでデフォルト値 (配列型の場合は複数の値) が含まれます。デフォルト値が設定されていない場合は、BuildまたはBuildRunCR で値を定義する必要があります。 -
ビルドストラテジーの
spec.stepsフィールドで、string または array 型のパラメーターを定義します。 $(params.your-parameter-name)構文を使用して、文字列型のパラメーターを指定します。ストラテジーを参照するBuildまたはBuildRunCR にyour-parameter-nameパラメーターの値を設定できます。必要に応じて、以下の文字列パラメーターを定義できます。Expand 表2.1 文字列パラメーター パラメーター 説明 imageこのパラメーターを使用して、
golang:$(params.go-version)などのカスタムタグを定義します。argsこのパラメーターを使用して、データを builder コマンドに渡します。
envこのパラメーターを使用して、環境変数の値を指定します。
$(params.your-array-parameter-name[*])構文を使用して、配列型のパラメーターを指定します。配列の指定後、引数またはコマンドで使用できます。配列内の各項目に、引数が設定されます。以下の例では、ビルドストラテジーのspec.stepsフィールドに array パラメーターを使用します。apiVersion: shipwright.io/v1beta1 kind: ClusterBuildStrategy metadata: name: <cluster_build_strategy_name> # ... spec: parameters: - name: tool-args description: Parameters for the tool type: array steps: - name: a-step command: - some-tool args: - --tool-args - $(params.tool-args[*])-
パラメーター値を単純な文字列として、または config map またはシークレットのキーへの参照として指定します。パラメーターは、
spec.stepsフィールドのcommandセクション、argsセクション、またはenvセクションで定義されている場合にのみ、設定マップまたはシークレット値を使用します。