既存のコンパートメントからのスタックの作成

リソース検出を使用して、既存のコンパートメントに基づいてリソース・マネージャでスタックを作成し、コンパートメントのリソースを記述するTerraform構成を生成します。

リソース検出の詳細は、リソース検出を参照してください。

    1. 「スタック」リスト・ページで、「スタックの作成」を選択します。リスト・ページまたはスタックの検索に関するヘルプが必要な場合は、スタックのリストを参照してください。
    2. 「スタックの作成」ページの「Terraformの構成のオリジンを選択します」で、「既存のコンパートメント」を選択します。
    3. 取得するリソースを含むコンパートメントおよびリージョンを選択します。
    4. (オプション)リソース検出でサポートされている特定のサービスをフィルタするには、「選択済」を選択し、目的のサービスを選択します。
      ノート

      この設定は、スタックを後で編集するときは変更できません。
    5. (オプション)カスタム・プロバイダを使用するには、「カスタム・プロバイダの使用」を選択し、カスタム・プロバイダを含むバケットを選択します。
    6. (オプション)デフォルトのスタック名を編集し、スタックの説明を入力します。機密情報を入力しないでください。
    7. スタックを作成するコンパートメントを選択します。
    8. (オプション)「拡張オプションの表示」を選択し、タグをスタックに割り当てます。
      • タグ・ネームスペース: 定義済タグを追加するには、既存のネームスペースを選択します。解放元タグを追加するには、値を空白のままにします。
      • タグ・キー: 定義済タグを追加するには、既存のタグ・キーを選択します。フリーフォーム・タグを追加するには、必要なキー名を入力します。
      • タグ値: 必要なタグ値を入力します。
      • タグの追加: 別のタグを追加する場合にクリックします。
    9. 「次へ」を2回選択します。
      Terraform構成がまだ存在しないため、既存のコンパートメント・スタックの起点の変数はリストされません。
    10. 「確認」パネルで、スタック構成を確認します。
    11. 「作成」を選択します。
    作業リクエストがスタックで実行されます。作業リクエストが終了すると、スタックのTerraform構成ファイルを生成するジョブが実行されます。ジョブが終了すると、選択したコンパートメントのリソースが、生成された構成に取得されます。別のコンパートメントにこれらのリソースを再作成できます。
  • oci resource-manager stack create-from-compartmentコマンドおよび必須パラメータを使用して、コンパートメントからスタックを作成します。

    oci resource-manager stack create-from-compartment --compartment-id <compartment_OCID> --config-source-compartment-id <source_compartment_OCID> --config-source-region <region>
    リクエストの例

    例(coreおよび databaseサービスから supported resourcesを検出します。ソースコンパートメントはルートコンパートメントではありません):

    oci resource-manager stack create-from-compartment --config-source-compartment-id ocid1.tenancy.oc1..uniqueid1 --config-source-region PHX --config-source-services-to-discover [core,database] –-compartment-id ocid1.tenancy.oc1..uniqueid2 --terraform-version 0.13.X --display-name "Stack From Compartment ABC" --description "List of Resources to Duplicate"
    レスポンスの例
    {
      "data": {
        "config-source": {
          "config-source-type": "COMPARTMENT_CONFIG_SOURCE"
        },
        "defined-tags": {},
        "display-name": "Stack from Compartment ABC",
        "freeform-tags": {},
        "id": "ocid1.ormstack.oc1..uniqueid",
        "lifecycle-state": "CREATING",
        "time-created": "2019-04-03T18:26:56.299000+00:00",
        "variables": {
          "compartment_ocid": "ocid1.compartment.oc1..uniqueid1", 
          "region": "us-phoenix-1"
        }
      }
    }
    {
      "data": {
        "compartment-id": "ocid1.compartment.oc1..uniqueid2",
        "config-source": {
          "compartment-id": "ocid1.compartment.oc1..uniqueid1",
          "config-source-type": "COMPARTMENT_CONFIG_SOURCE",
          "region": "PHX",
          "working-directory": null
        },
        "defined-tags": {},
        "description": "List of Resources to Duplicate",
        "display-name": "Stack From Compartment ABC",
        "freeform-tags": {},
        "id": "ocid1.ormstack.oc1.phx.uniqueid",
        "lifecycle-state": "CREATING",
        "stack-drift-status": "NOT_CHECKED",
        "terraform-version": "0.12.x",
        "time-created": "2020-06-01T18:25:56.102000+00:00",
        "time-drift-last-checked": null,
        "variables": {}
      },
      "etag": "009010cb57f5162655c6a34f5ef8834f204a734df81e4baa696a7d830488ea25",
      "opc-work-request-id": "ocid1.ormworkrequest.oc1.phx.uniqueid"
    }

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

  • CreateStack操作を使用して、コンパートメントからスタックを作成します。

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

    リクエストの例
    POST /20180917/stacks
    Host: resourcemanager.us-phoenix-1.oraclecloud.com
    <authorization and other headers>
    {
      "compartmentId": "ocid1.compartment.oc1..<unique_ID>",
      "displayName": "My Compartment Configuration",
      "configSource": {
        "configSourceType": "COMPARTMENT_CONFIG_SOURCE",
        "compartmentId": "ocid1.compartment.oc1..<unique_ID>",
        "region": "us-phoenix-1"
      }
    }