ビルドとデプロイ

DevOps Insights 2026年8月31 日にサービス終了となり、提供が中止されます。 Continuous Delivery は、2027年2月12日に以下のリージョンで提供が中止されます: au-sydca-torus-east。 また、同日をもって、Code Risk Analyzerもすべての地域で提供を終了いたします。 あるリージョンでこれらの機能が実際に利用されていない場合、そのリージョンにおける機能は早期に提供終了となり、新規インスタンスの受け入れが停止される可能性があります。 詳細はこちら

IBM Cloud® Continuous Delivery には、Delivery Pipeline が組み込まれています。これを使用して、反復可能な継続的統合および継続的デリバリー・プロセスを実装できます。

パイプラインを構成するには、以下のタスクを実行します。

ステージの追加

  1. 「パイプライン」ページで、**「ステージの追加」**をクリックします。 「ステージ構成」ページが開きます。

  2. ステージを構成します。

    a. **「入力」タブで、ステージの入力を選択します。 「ビルド」ステージの場合、入力タブには、入力に使用するリポジトリー内のブランチを指定する「ブランチ」**フィールドが含まれます。

    b. **「ジョブ」**タブで、少なくとも 1 つのジョブを追加して構成します。 通常、最初のステージには、少なくとも 1 つのビルド・ジョブがあります。

  3. 保存 をクリックします。

ステージへのジョブの追加

  1. ステージで、**「ステージ構成」アイコンをクリックし、「ステージの構成」**をクリックします。
  2. **「ジョブ」**タブをクリックします。
  3. **「ジョブの追加」**をクリックします。 追加するジョブのタイプを選択します。
  4. ジョブを構成します。
  5. 保存 をクリックします。

にジョブを追加する*ステージにジョブを追加する
ステージにジョブを追加する

ステージの実行

「パイプライン」ページで**「ステージの実行」**アイコンをクリックして、手動でステージを実行できます。

caption-side=bottom"
ステージ上でRun Stageアイコンをクリック*ステージを
する

次の 2 つの方法のいずれかを使用して、ビルド履歴ページからオンデマンドのビルドとデプロイメントを要求することもできます。

  • 構成されたステージの下にあるボックスにビルドをドラッグする。
  • 「最終実行結果」セクションで、 送信先 アイコンをクリックし、デプロイ先のスペースを選択します。

この
を持つExecuteステージ*
をデプロイする*

実行中のステージをキャンセルするには、ステージで**「ログおよび履歴の表示」をクリックします。 ジョブのリストで、実行中のジョブの番号をクリックし、「キャンセル」をクリックします。 ジョブをクリックして「キャンセル」をクリックするか、そのステージのジョブの「停止」**アイコンをクリックして、ジョブを個別にキャンセルすることもできます。

アプリのデプロイ

デプロイ・ジョブが適切に構成されていれば、いつでもそのジョブが実行されるときに、アプリがターゲットにデプロイされます。 デプロイ・ジョブを手動で実行するには、ジョブがあるステージの**「ステージの実行」**アイコンをクリックします。

入力の改訂

ステージを手動で実行するか、その前のステージが完了したために実行される場合、実行中のステージはその入力の改訂を選択します。 通常、入力の改訂はビルド番号です。 入力の改訂を選択するには、ステージは以下の条件に従う必要があります。

  • 特定の改訂が選択されている場合は、それを使用する。
  • 特定の改訂が指定されていない場合は、同じ入力を使用するステージが見つかるまで前のステージを検索し、 その入力の最後に成功した実行の改訂を見つけて使用する。
  • 特定の改訂が指定されておらず、その他のステージが指定ソースを入力として使用しない場合、入力の最新の改訂を使用する。

前のビルドをデプロイすることができます。 ビルドが含まれるステージで、**「ログおよび履歴の表示」**をクリックします。 ページが開いたら、実行番号をクリックして展開し、ビルド・ジョブをクリックします。 **「送信先」**をクリックし、ターゲットを選択します。

アプリへのサービスの追加

IBM Cloud ダッシュボードからアプリにサービスを追加し、それらのサービスを管理することができます。 詳しくは、『外部アプリへのサービスの接続』を参照してください。

ログの表示

「ステージ履歴」ページでの実行中に、ジョブのログおよびステージを表示することができます。

  1. ジョブのログを表示するには、ジョブをクリックします。 または、ステージで**「ログおよび履歴の表示」**をクリックします。

  2. デプロイされているアプリケーションのランタイム・ログを表示するには、**「ランタイム・ログの表示」**をクリックします。

    ジョブ・ログに加えて、ビルド・ジョブの単体テストの結果、生成された成果物、コードの変更も表示できます。

    「ステージ履歴」ページからステージを実行、再デプロイ、取り消し、または構成することもできます。 ステージを実行するには**「実行」を、デプロイメント・ジョブの場合に再デプロイを行うには「再デプロイ」を、ステージを構成するには「構成」をクリックします。 ステージの実行中に実行番号をクリックして「キャンセル」**をクリックすることにより、そのステージをキャンセルできます。

スクリプトからのログのダウンロード

パイプライン・ジョブのログ・ファイルをスクリプトからダウンロードして、パイプライン・ジョブの実行中に提供される PIPELINE_LOG_URL を保存できます。 次の例は、パイプライン・ジョブのログ・ファイルを別のシステムにアップロードする手順を示しています。

  1. ステージの JOB_LOG 環境プロパティーをセットアップします。

  2. パイプライン・ジョブで、PIPELINE_LOG_URL を保存します。

    export JOB_LOG="$PIPELINE_LOG_URL"
    
  3. 同じステージ内の後のジョブで PIPELINE_LOG_URL を使用してログ・ファイルをダウンロードし、それを別のシステムにエクスポートします。 IBM Cloud ベアラー・トークンを使用して、ログ・ファイルにアクセスします。

    ibmcloud login -a cloud.ibm.com \
      --apikey <INSERT API KEY HERE>
    BEARER=$( ibmcloud iam oauth-tokens | grep "IAM token" | sed 's/^.*Bearer //g' )
    curl -H "Authorization: Bearer $BEARER"  \
      -H "Accept: text/plain" \
      -D /tmp/headers.txt \
      -o job_log.txt \
      "$JOB_LOG"
    
  4. X-More-Data ヘッダーを確認します。 ヘッダーが true に設定されている場合、ログ・ファイルは生成中または処理中です。 ヘッダーが false に設定されている場合、ログ・ファイルはすぐに使用できます。

    grep X-More-Data /tmp/headers.txt
    X-More-Data: false
    
  5. ログ・ファイルをシステムにアップロードします。

    scp job_log.txt user@example.org:/job1/logs
    

スクリプトからの成果物のダウンロード

パイプライン・ビルド・ジョブの成果物をスクリプトからダウンロードして、パイプライン・ジョブの実行中に提供される PIPELINE_ARTIFACT_URL を保存できます。 次の例は、パイプライン・ジョブの成果物を別のシステムにアップロードする手順を示しています。

  1. ステージの JOB_ARTIFACT 環境プロパティーをセットアップします。

  2. パイプライン・ジョブで、PIPELINE_ARTIFACT_URL を保存します。

    export JOB_ARTIFACT="$PIPELINE_ARTIFACT_URL"
    
  3. 同じステージ内の後のジョブで PIPELINE_ARTIFACT_URL を使用して成果物をダウンロードし、それを別のシステムにエクスポートします。 IBM Cloud ベアラー・トークンを使用して、成果物にアクセスします。

    ibmcloud login -a cloud.ibm.com \
      --apikey <INSERT API KEY HERE>
    BEARER=$( ibmcloud iam oauth-tokens | grep "IAM token" | sed 's/^.*Bearer //g' )
    DOWNLOAD_URL=$( curl -H "Authorization: Bearer $BEARER"  \
      "$JOB_ARTIFACT" )
    curl -O  "$DOWNLOAD_URL"
    
  4. 成果物をシステムにアップロードします。

    scp $(basename "$DOWNLOAD_URL") user@example.org:/job1/artifacts