適用ジョブの作成

リソース・マネージャで適用ジョブを作成します。

スタックの適用ジョブを作成(実行)すると、Terraformによってリソースがプロビジョニングされ、Terraform構成で定義されたアクションが実行され、実行計画が関連付けられたスタックに適用されてOracle Cloud Infrastructureリソースが作成(または変更)されます。適用ジョブを実行する前に計画ジョブを実行(実行計画を生成)することをお薦めします。

CI/CDパイプラインでのクラウド・プロビジョニングにCLIを使用したウォークスルーは、クラウドのIaC: TerraformおよびResource ManagerのCI/CDパイプラインへの統合- OCI CLIによる構築を参照してください。

GitHubやGitLabなどのソース・コード制御システムに格納されている構成の場合、ジョブでは最新のコミットが使用されます。適用ジョブの完了に必要な時間は、作成されるクラウド・リソースの数とタイプによって異なります。

    1. 「スタック」リスト・ページで、使用するスタックを選択します。リスト・ページまたはスタックの検索に関するヘルプが必要な場合は、スタックのリストを参照してください。
    2. スタックの詳細ページで、「適用」を選択します。
    3. (オプション)「適用」パネルで、ジョブのデフォルト名を編集します。機密情報を入力しないでください。
    4. (オプション)「ジョブ・プラン解決の適用」で、最後に生成されたプラン・ジョブの名前を選択します。最新の生成済プラン・ジョブのみが使用可能です。このスタックに対してプラン・ジョブが生成されていない場合、デフォルト値のみ使用できます(自動承認)。自動承認の詳細は、Terraform適用コマンドの自動承認オプションを参照してください。
    5. Terraformプロバイダの構成済ソースから使用可能な最新バージョンを取得するには、「拡張オプションの表示」を選択し、「プロバイダ・バージョンのアップグレード」を選択します。
      スタックはTerraform 0.14以降である必要があります。また、スタックが古い場合は、Terraformレジストリを使用にアップグレードする必要があります。Terraform構成のプロバイダ・バージョンが、スタックでジョブが最後に実行されてから変更された場合は、このステップが必要です。依存関係ロックファイルは、新しいスタックおよび更新されたスタックに対して自動的に管理されます。プロバイダは、Terraform構成のバージョン制約内で更新されます。
    6. デバッグ用の詳細なログ・コンテンツを生成するには、「拡張オプションの表示」を選択し、「詳細なログ・レベル」から必要なログ・レベルを選択します。
      詳細は、Terraformのデバッグを参照してください。
    7. Terraformがグラフを歩くときに同時操作の最大数を調整するには、「拡張オプションの表示」を選択し、「パラレル操作の最大数」の値を編集します。(デフォルト: 10)このオプションを使用して、ジョブを高速化します。
      ノート

      値が大きいと、リソースがスロットルされることがあります。たとえば、数百ものコンピュート・インスタンスを定義するTerraform構成について考えてみます。適用ジョブは、同時にできるだけ多くのインスタンスを作成しようとします。この例では、100の値によってコンピュート・サービスによるスロットルが発生する可能性があります。
    8. ジョブを実行する前に最新の状態をフェッチするには、「拡張オプションの表示」を選択し、「差異をチェックする前にリソース状態をリフレッシュ」を選択します。

      このオプションを使用して、最初に状態をリフレッシュします。たとえば、手動で更新された(既存の)インフラストラクチャで実行する適用ジョブでこのオプションを使用することを検討してください。

      ノート

      状態をリフレッシュすると、パフォーマンスに影響する可能性があります。構成に複数のリソースが含まれている場合は、このオプションを使用しないことを検討してください。
    9. (オプション)「拡張オプションの表示」を選択し、タグをジョブに割り当てます。
      • タグ・ネームスペース: 定義済タグを追加するには、既存のネームスペースを選択します。解放元タグを追加するには、値を空白のままにします。
      • タグ・キー: 定義済タグを追加するには、既存のタグ・キーを選択します。フリーフォーム・タグを追加するには、必要なキー名を入力します。
      • タグ値: 必要なタグ値を入力します。
      • タグの追加: 別のタグを追加する場合にクリックします。
    10. 「適用」を選択します。

    適用ジョブが作成されます。新しいジョブが「ジョブ」の下にリストされます。

  • oci resource-manager job create-apply-jobコマンドおよび必須パラメータを使用して、適用ジョブを実行します。

    oci resource-manager job create-apply-job [OPTIONS]

    CLIコマンドのパラメータおよび値の完全なリストは、リソース・マネージャ・コマンドライン・リファレンスを参照してください。

    サンプル

    例1: 計画ジョブを参照します。

    oci resource-manager job create-apply-job --execution-plan-strategy <plan_job_ocid> --stack-id <stack_ocid>

    例2: 自動承認(プラン・ジョブを参照しない)

    oci resource-manager job create-apply-job --execution-plan-strategy AUTO_APPROVED --stack-id <stack_ocid>
  • CreateJob操作を使用して、適用ジョブを作成します。

    リクエストのoperation部分の例については、CreateApplyJobOperationDetailsを参照してください。

次の処理

指定されたリソースの数およびタイプに応じて、特定の適用ジョブには時間がかかる場合があります。

適用ジョブの実行後、ジョブの詳細を取得してそのステータスを確認します。オプションで、Terraform状態ファイルを表示したり、ログを表示したり、プロビジョニングされたリソースの存在を確認できます。

ジョブの詳細を取得して、ジョブ・ステータス(ライフサイクル状態)をモニターします。成功(SUCCEEDED)は、ジョブが完了したことを示します。ジョブの複雑さによっては、操作に時間がかかる場合があります。ジョブの実行中または終了後に、ジョブ・ログの内容を取得できます。

Terraformの状態ファイル(ジョブの実行後にリソースの状態を示します)を表示するには、「ジョブ詳細」ページを表示するジョブの名前を選択し、「リソース」の下の「状態の表示」を選択します。オプションで、「このバージョンの変更の表示」を選択します。

ジョブのログを表示するには、ジョブを選択してその詳細ページを開き、「リソース」の下の「ログ」を選択します。

新規にプロビジョニングされたリソースの存在を確認するには、コンパートメントでリソースを検査します。