ステップバンドル
ステップ バンドルを使用すると、YAML ファイルからステップを手動でコピーして貼り付ける必要がなく、任意のワークフロー内のステップとステップのシーケンスを便利な方法で再利用できます。
ステップ バンドルを使うと、複数のステップを 1 つのユニットにグループ化できます。Step Bundle を使うと、YAML 設定ファイルから手動でコピーして貼り付けることなく、ステップやステップのシーケンスを再利用できます
ステップバンドルは、というルートレベルのエンティティで設定されます。 step_bundles
。Step バンドルをどのバンドルにも挿入できます。 ワークフロー。ユーティリティワークフローとは異なり、 ワークフローチェーニング、ステップバンドルはワークフローのどこにでも配置できます。
ビルドを実行すると、バンドル内の各ステップは、バンドルが挿入された位置で実行されます。
ステップバンドルの作成
ワークフローエディター
コンフィギュレーション YAML
-
ワークフローエディターを開きます。
-
左側で [] を選択します。 ステップバンドル。
-
クリック
バンドルがない場合。Step Bundle がすでに 1 つ以上ある場合は、中央のドロップダウンメニューを開いてをクリックします。 ステップバンドルの作成。
-
ダイアログで、バンドルの名前を入力します。
-
既存の Step バンドルがある場合は、ドロップダウンメニューからいずれかを選択できます。新しい Step バンドルは既存のバンドルのコピーになります。
-
完了したら、をクリックします
。 -
をクリックして最初の Step を追加
。ステップバンドルを別のステップバンドルに追加することをネストと呼びます。 ネストステップバンドル.
-
すでに追加されているステップまたはバンドルの上または下にカーソルを置き、プラス記号をクリックして、ステップまたはバンドルを追加します。
-
追加
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: {}
ユーティリティワークフローに基づくステップバンドルの作成
を基に Step バンドルを作成できます ユーティリティワークフロー。バンドルには、ユーティリティワークフローに含まれていたすべてのステップが含まれます。ただし、ユーティリティワークフローとは異なり、ステップバンドルは別のワークフロー内のどこにでも配置できます。
-
ワークフローエディターを開きます。
-
左側で [] を選択します。 ステップバンドル。
-
から に基づいて ドロップダウンメニューで、ユーティリティワークフローを選択します。
-
クリック ステップバンドルの作成。
ネストステップバンドル
ステップバンドルではネスティングが可能です。ステップバンドルを別のステップバンドルに追加できます。これにより、部品を簡単に交換できる大規模で複雑な構成を作成できます。別の Step バンドルには、必要な数だけ Step バンドルを追加できます
ワークフローエディター
コンフィギュレーション YAML
-
ワークフローエディターを開きます。
-
左側で [] を選択します。 ステップバンドル。
-
中央のドロップダウンメニューからステップバンドルを選択します。
-
空のバンドルの場合は、をクリックします
。バンドルにすでにステップが含まれている場合は、ステップの間にカーソルを置いてプラス記号をクリックします。
-
ダイアログで、 ステップバンドル タブ。
-
バンドルを選択して元のバンドルに追加します。
-
ドラッグアンドドロップを使用してバンドル内で移動します。
-
完了したら、をクリックします
-
設定 YAML ファイルで、その中にネストしたいステップバンドルを定義します
step_bundles
プロパティ。step_bundles: initialize: steps: - activate-ssh-key: {} - git-clone: {}
-
を使用してこのバンドルを別のバンドルの中にネストします
bundles
プロパティ。step_bundles: initialize: steps: - activate-ssh-key: {} - git-clone: {} deploy_bundle: steps: - bundle::initialize: {} - deploy-to-bitrise-io: {}
ステップバンドル入力
どのステップバンドルでも、入力のリストは以下で定義できます inputs
キー。Step バンドルに設定できる入力は次のとおりです。バンドル定義以外で追加の入力を定義することはできません。
ただし、Step バンドルの定義済み入力の値を、バンドル定義の外に設定することはできます。 ステップバンドル入力の設定.
ステップバンドル入力はステップ入力と同じモデルを共有します。Step 入力とその形式について詳しくは、以下をご覧ください ステップ入力リファレンス.
-
設定 YAML ファイルに、以下を追加します。
inputs
Step バンドルのプロパティ。format_version: 11 step_bundles: install_deps: inputs:
-
アンダー
inputs
、Step 入力に使用するキーと値のペアを追加します。format_version: 11 step_bundles: install_deps: inputs: - cache_key: "npm-cache-{{ checksum "package-lock.json" }}" - npm_command: install
-
適切なステップ入力にキーを追加します。
この例では、デフォルトの入力を次のように設定しました。
key
の入力restore-cache
ステップとcommand
の入力npm
ステップ。format_version: 11 step_bundles: install_deps: inputs: - 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
リスト。 -
を追加
inputs
Step バンドルが参照されるプロパティと、それにキーと値のペアを追加します。この例では、の新しい値を設定します
cache_key
バンドルで定義されているデフォルト値の代わりに入力してください。ワークフローが実行されると、restore-cache
ステップではnpm-cache
の代わりに値npm-cache-{{ checksum "package-lock.json" }}
。format_version: 11 step_bundles: install_deps: inputs: - 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: inputs: - cache_key: "npm-cache" - deploy-to-bitrise-io@2: {}
ステップバンドル出力
ステップは出力変数を生成できます。ステップがステップ バンドルに含まれている場合、その出力変数は、ステップ バンドル以降のワークフロー内のすべてのステップで使用できます。
たとえば、ワークフローで使用されるステップバンドルが xcode-archive
ステップ、バンドルの後の次のステップは、BITRISE_IPA_PATH
ステップによって公開される出力変数。