Skip to main content

ステップバンドル

概要

ステップ バンドルを使用すると、YAML ファイルからステップを手動でコピーして貼り付ける必要がなく、任意のワークフロー内のステップとステップのシーケンスを便利な方法で再利用できます。

ステップ バンドルを使用すると、複数のステップを 1 つのユニットにグループ化できます。ステップ バンドルを使用すると、YAML ファイルから手動でコピーして貼り付けることなく、ステップとステップのシーケンスを再利用できます。

ステップバンドルは、ルートレベルのエンティティで構成されます。 step_bundlesステップバンドルはどのワークフローにも挿入できます。ユーティリティワークフローや ワークフローの連鎖ステップ バンドルはワークフロー内の任意の場所に配置できます。

ビルドを実行すると、バンドル内の各ステップは、バンドルが挿入された位置で実行されます。

ステップバンドルの作成

ステップ バンドルは、構成 YAML ファイルでのみ作成できます。バンドルはワークフロー エディターに表示されますが、グラフィカル UI では作成できません。

  1. プロジェクトの設定YAMLを開く

  2. 追加 step_bundles エンティティを YAML ファイルの最上位レベルに追加し、名前を付けます。バンドルはこの名前で参照されます。

    format_version: 11
    step_bundles:
      install_deps:
  3. 追加 steps プロパティを追加し、実行するステップを追加します。ワークフローの場合と同じように、ここでもステップを参照できます。

    この例では、 キャッシュを復元する ステップと npm ステップ。

    format_version: 11
    step_bundles:
      install_deps:
        steps:
        - restore-cache@1: {}
        - npm@1: {}
    
  4. 既存のワークフローにステップ バンドルを追加します。構文は次のようになります。 bundle::<bundle-name>

    workflows:
      ci:
        steps:
        - [email protected]: {}
        - bundle::install_deps: {}
        - deploy-to-bitrise-io@2: {} 

バンドル内のステップのデフォルト入力と共通値を構成する

どのステップバンドルでも、 環境変数 定義できるのは envs キー。これらの変数を使用して、バンドルに含まれるステップの入力を事前に定義したり、ステップ間で共通の値を共有したりできます。

変数は、ステップ バンドルに含まれるステップ内では使用できますが、ステップ バンドルの外部では使用できません。たとえば、ステップ バンドル内のステップ入力を事前構成するために使用できます。

  1. 設定YAMLファイルに、 envs プロパティをステップ バンドルに追加します。

    format_version: 11
    step_bundles:
      install_deps:
        envs: 
  2. envsステップ入力に使用されるキーと値のペアを追加します。

    format_version: 11
    step_bundles:
      install_deps:
        envs:     
        - CACHE_KEY: "npm-cache-{{ checksum "package-lock.json" }}"
        - NPM_COMMAND: install
  3. 適切なステップ入力にキーを追加します。

    この例では、デフォルトの入力を次のように設定しました。 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
    

ステップバンドル変数のオーバーライド

ステップ バンドルで定義された環境変数は、ワークフローのステップ リストで再割り当てすることで上書きできます。

  1. 設定YAMLファイルで、ワークフローとステップバンドルを見つけます。 steps リスト。

  2. 追加 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 ステップによって公開される出力変数。