「シェル」ステージの追加

「シェル」ステージでは、デプロイメント・パイプラインでカスタム・コマンドを実行できます。このステージは、デプロイメント・パイプラインの任意の時点で追加できます。

デプロイメント中に実行するすべてのステップを含むコマンド仕様YAMLファイルを準備する必要があります。コマンド仕様は、テナンシ内の選択したコンパートメントおよびサブネットのコンテナ・インスタンス・ホストで実行されます。デプロイメント前に別のインスタンス構成を選択することもできます。シェル・コンテナ・イメージのランタイム詳細を参照してください。デプロイメント・パイプラインを実行すると、パイプラインの出力およびログで、コマンド仕様で定義されたステップの実行を確認できます。コマンド仕様の構文および例は、コマンド仕様を参照してください。

「シェル」ステージを追加する主な利点

  • OCI CLIやその他の事前インストールされたツールを使用して、サービス・メッシュやコンテナ・インスタンスなどのOCIプラットフォームに対するデプロイメントを自動化します。シェル・コンテナ・イメージのランタイム詳細を参照してください。

    OCI CLIは、パイプライン・リソース・プリンシパルを使用してOCIリソースにアクセスするために事前認証されています。

  • Oracle SQL Developerコマンドライン(SQLcl)などのコマンドライン・ツールを使用して、データベース・スキーマ移行を実行します。
  • パイプライン・パラメータは、仕様で参照して使用します。また、デプロイメントの実行中にパラメータおよび変数を置き換えます。
  • 本番にデプロイする前に、アーティファクトに対して統合テストを実行します。
  • DevOpsワークフローをカスタマイズします。たとえば、パイプラインで追加のリソースをデプロイする前に、一部のリソースの準備が完了するのを待機できます。

パイプラインを作成する前に、DevOpsプロジェクトおよびコマンド仕様アーティファクトが必要です。アーティファクトは、インラインで定義するか、アーティファクト・レジストリに配置できます。

    1. ナビゲーション・メニューを開き、「開発者サービス」をクリックします。「DevOps」で、「プロジェクト」をクリックします。
    2. プロジェクトを選択し、「パイプラインの作成」をクリックします。
    3. パイプラインの名前と説明を入力します。説明の追加はオプションです。
    4. 「パイプライン・タイプ」で、「デプロイメント・パイプラインの作成」を選択します。
    5. 「パイプラインの作成」をクリックします。
    6. 新しいパイプラインにステージを追加するには、「+」アイコンをクリックし、「ステージの追加」を選択します。
    7. 「統合 - シェル」を選択して「次」をクリックします。
    8. ステージの名前とオプションの説明を入力します。
    9. 「アーティファクトの選択」をクリックし、デプロイする使用可能なコマンド仕様アーティファクトを選択します。
    10. コンパートメントを選択して、仕様が実行されるコンテナ・インスタンスを作成します。

      表示されるデフォルトのコンパートメントを保持できます。

    11. 可用性ドメインを選択します。
    12. 指定されたオプションからコンテナ・インスタンスのシェイプを選択します。インスタンスのOCPU数およびメモリー量を選択することもできます。

      コンテナ・インスタンスの価格設定モデルに基づいて、デプロイメント中に(選択したコンピュート・シェイプに基づいて)コンテナ・インスタンスに対して請求されます。コンテナ・インスタンスの価格を参照してください。

      1. テナンシ内の仮想クラウド・ネットワーク(VCN)およびリージョナル・サブネットを選択します。パブリック・サブネットまたはプライベート・サブネットを選択できます。

        コマンドを実行すると、選択したサブネットに仮想ネットワーク・インタフェース・カード(VNIC)が作成されます。サブネットにOCIコンテナ・レジストリへのネットワーク・パスがあることを確認します。コマンドで他のOCIリソースを管理する必要がある場合は、ネットワーク・パスとポリシーの両方が正しく設定されるように、これも処理する必要があります。

      2. (オプション)VCNへのアクセスを制限するために、VCN内のネットワーク・セキュリティ・グループ(NSG)を選択できます。
      3. (オプション)ステージのタイムアウト値(秒)を入力します。
    13. (オプション)パイプラインにタグを追加するには、「タグ付けオプションの表示」をクリックします。タグ付けとは、テナンシ内のリソースを整理およびトラッキングできるメタデータ・システムです。

      リソースを作成する権限がある場合、それにフリーフォーム・タグを追加する権限もあります。

      定義済タグを追加するには、タグ・ネームスペースを使用する権限が必要です。

      詳細は、リソース・タグを参照してください。

    14. ステージをパイプラインに追加するには、「追加」をクリックします。

      ステージ・プレビューによって、構成のスナップショットが提供されます。

    必要に応じて、パイプラインに順次またはパラレルにステージを追加します。ターゲット環境にビルド出力をデプロイするには、デプロイメント・パイプラインを実行します。

    ビルド・パイプラインからデプロイメントを自動的にトリガーするには、ビルド・パイプラインに「デプロイメントのトリガー」ステージを追加します。

  • デプロイメント・パイプラインを作成するには、createコマンドを実行します:

    oci devops deploy-pipeline create --project-id

    「シェル」ステージを作成するには、create-shell-stageコマンドを実行します:

    oci devops deploy-stage create-shell-stage

    create-shell-stageコマンドの必須パラメータ:

    • --pipeline-id
    • --stage-predecessor-collection
    • --command-spec-artifact-id
    • --container-config

    deploy-pipelineおよびdeploy-stageのすべてのコマンドを取得するには:

    oci devops deploy-pipeline -h
    oci devops deploy-stage -h

    create-shell-stageコマンドのヘルプを取得するには:

    oci devops deploy-stage create-shell-stage -h
  • デプロイメント・パイプラインを作成するには、CreateDeployPipeline操作を使用します。

    パイプラインに「シェル」ステージを追加するには、CreateDeployStage操作を使用します。deployStageType属性には、SHELL値を指定します。