ステップバンドル
ステップ バンドルを使用すると、YAML ファイルからステップを手動でコピーして貼り付ける必要がなく、任意のワークフロー内のステップとステップのシーケンスを便利な方法で再利用できます。
ステップ バンドルを使用すると、複数のステップを 1 つのユニットにグループ化できます。ステップ バンドルを使用すると、YAML ファイルから手動でコピーして貼り付けることなく、ステップとステップのシーケンスを再利用できます。
ステップバンドルは、ルートレベルのエンティティで構成されます。 step_bundles
ステップバンドルはどのワークフローにも挿入できます。ユーティリティワークフローや ワークフローの連鎖ステップ バンドルはワークフロー内の任意の場所に配置できます。
ビルドを実行すると、バンドル内の各ステップは、バンドルが挿入された位置で実行されます。
ステップバンドルの作成
ステップ バンドルは、構成 YAML ファイルでのみ作成できます。バンドルはワークフロー エディターに表示されますが、グラフィカル UI では作成できません。
-
追加
step_bundles
エンティティを YAML ファイルの最上位レベルに追加し、名前を付けます。バンドルはこの名前で参照されます。format_version: 11 step_bundles: install_deps:
-
追加
steps
プロパティを追加し、実行するステップを追加します。ワークフローの場合と同じように、ここでもステップを参照できます。この例では、 キャッシュを復元する ステップと
npm
ステップ。format_version: 11 step_bundles: install_deps: steps: - restore-cache@1: {} - npm@1: {}
-
既存のワークフローにステップ バンドルを追加します。構文は次のようになります。
bundle::<bundle-name>
。workflows: ci: steps: - [email protected]: {} - bundle::install_deps: {} - deploy-to-bitrise-io@2: {}
バンドル内のステップのデフォルト入力と共通値を構成する
どのステップバンドルでも、 環境変数 定義できるのは envs
キー。これらの変数を使用して、バンドルに含まれるステップの入力を事前に定義したり、ステップ間で共通の値を共有したりできます。
変数は、ステップ バンドルに含まれるステップ内では使用できますが、ステップ バンドルの外部では使用できません。たとえば、ステップ バンドル内のステップ入力を事前構成するために使用できます。
-
設定YAMLファイルに、
envs
プロパティをステップ バンドルに追加します。format_version: 11 step_bundles: install_deps: envs:
-
下
envs
ステップ入力に使用されるキーと値のペアを追加します。format_version: 11 step_bundles: install_deps: envs: - CACHE_KEY: "npm-cache-{{ checksum "package-lock.json" }}" - NPM_COMMAND: install
-
適切なステップ入力にキーを追加します。
この例では、デフォルトの入力を次のように設定しました。
key
の入力restore-cache
ステップとcommand
の入力npm
ステップ。format_version: 11 step_bundles: install_deps: envs: - CACHE_KEY: "npm-cache-{{ checksum "package-lock.json" }}" - NPM_COMMAND: install steps: - restore-cache@1: inputs: - key: $CACHE_KEY - npm@1: {} inputs: - command: $NPM_COMMAND
ステップバンドル変数のオーバーライド
ステップ バンドルで定義された環境変数は、ワークフローのステップ リストで再割り当てすることで上書きできます。
-
設定YAMLファイルで、ワークフローとステップバンドルを見つけます。
steps
リスト。 -
追加
envs
ステップバンドルが参照されるプロパティを作成し、そこにキーと値のペアを追加します。この例では、
CACHE_KEY
変数。ワークフローが実行されると、restore-cache
ステップはnpm-cache
値の代わりにnpm-cache-{{ checksum "package-lock.json" }}
。format_version: 11 step_bundles: install_deps: envs: - CACHE_KEY: "npm-cache-{{ checksum "package-lock.json" }}" - NPM_COMMAND: install steps: - restore-cache@1: inputs: - key: $CACHE_KEY - npm@1: {} inputs: - command: $NPM_COMMAND workflows: ci: steps: - git-clone@8: {} - bundle::install_deps: envs: - CACHE_KEY: "npm-cache-" - deploy-to-bitrise-io@2: {}
ステップバンドル出力
ステップは出力変数を生成できます。ステップがステップ バンドルに含まれている場合、その出力変数は、ステップ バンドル以降のワークフロー内のすべてのステップで使用できます。
たとえば、ワークフローで使用されるステップバンドルが xcode-archive
ステップ、バンドルの後の次のステップは、BITRISE_IPA_PATH
ステップによって公開される出力変数。