並行ステップ

このページの内容

お困りですか?

アトラシアン コミュニティをご利用ください。

コミュニティに質問

はじめに

Parallel steps enable you to build and test faster, by running a set of self contained steps at the same time.

並列または単独のどちらで実行されているかにかかわらず、パイプラインで実行できるステップの合計数は 10 に制限されています。

この機能は次のように使用できます。

  1. ソフトウェアをビルドするための最初のステップ
  2. ソフトウェアをテストするための一連の並行ステップ:
    • ユニット テスト
    • lint
    • 連携テスト
    • ブラウザ テスト
  3. Deploying to multiple similar environments at the same time, for example:
    • production environment in different parts of the world
    • test environments that run different platform versions

All environments in a parallel step set must be of the same type, so don’t try to mix production and test environment types in the same set!


If you are doing a single build step leading to multiple parallel testing steps, then cache external build dependencies as much as possible in the first step, so you don't waste time doing it in each of your testing steps. Then run all your tests concurrently, they can use cache, and you'll get your results more quickly.

設定

並行して実行したいステップをインデントするだけで、それらを並行するように設定できます。

pipelines:
  default:
    - step:          # non-parallel step
        script:
          - ./build.sh
    - parallel:      # these 2 steps will run in parallel
        - step:
            script:
              - ./integration-tests.sh --batch 1
        - step:
            script:
              - ./integration-tests.sh --batch 2
    - step:          # non-parallel step
        script:
          - ./deploy.sh

アーティファクト

並行ステップでは、アーティファクトを生成及び消費できます。次の点に注意します。

  • 並行ステップでは、以前のステップで生成されたアーティファクトのみを使用できます。同じ並行セットのステップで生成されたものは使用できません。
  • 並行セットの後のステップでは、生成されたすべてのファイルの組み合わせを取得します。
  • ファイルを含むアーティファクトが並行ステップによって同じ場所に生成された場合、競合がファイル単位で解消され、YAML ファイルの最後のステップで生成されたファイルが優先されます。

次の画像は、アーティファクトの組み合わせ方法を示しています。

最新バージョンのファイルの優先を示すイメージ

デフォルトの変数

If you want to do some fancy logic in your scripts, the following variables are available during the parallel steps:

  • BITBUCKET_PARALLEL_STEP - zero-based index of the current step in the group, e.g. 0, 1, 2, …
  • BITBUCKET_PARALLEL_STEP_COUNT - total number of steps in the group, e.g. 5.

ビルド時間 (分)

ステップを並行した場合も、パイプラインが使用する合計のビルド時間数は変わりません。ただし、結果はより早く表示されます。結果を迅速に取得できるため、反復サイクルをそれだけ短縮できます。

最終更新日 2019 年 6 月 11 日

この内容はお役に立ちましたか?

はい
いいえ
この記事についてのフィードバックを送信する
Powered by Confluence and Scroll Viewport.