https://docs.oracle.com/ja-jp/iaas/Content/ResourceManager/Concepts/resourcemanager.htm
https://oracle-japan.github.io/ocitutorials/intermediates/resource-manager/
https://docs.oracle.com/en-us/iaas/tools/oci-cli/3.37.1/oci_cli_docs/cmdref/resource-manager.html
-- 1. テスト用リソース作成
oci iam compartment create \
--compartment-id ocid1.tenancy.oc1..000000000000000000000000000000000000000000000000000000000000 \
--description cmp01 \
--name cmp01
oci iam compartment list \
--query 'data[?"name"==`'cmp01'`].id | [0]' \
--raw-output
oci iam compartment delete \
--compartment-id ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000000 \
--force
oci network vcn list \
--compartment-id ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000000
oci network vcn create \
--compartment-id ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000000 \
--cidr-block 10.0.0.0/16 \
--display-name vcn01 \
--dns-label vcn01
oci network vcn list \
--compartment-id ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000000 \
--query 'data[?"display-name"==`'vcn01'`].id | [0]' \
--raw-output
oci network vcn delete \
--vcn-id ocid1.vcn.oc1.iad.000000000000000000000000000000000000000000000000000000000000 \
--force
-- 2. 既存のコンパートメントからのスタックの作成
スタックは作成できるが、単純なもの以外はそのままでは使用できない模様
oci resource-manager stack list-resource-discovery-services \
--compartment-id ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000000 \
--query 'sort_by(data.items, &"name").{"discovery-scope":"discovery-scope","name":"name"}' \
--output table
oci resource-manager stack list-terraform-versions \
--compartment-id ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000000
oci resource-manager stack list \
--compartment-id ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000000
oci resource-manager stack create-from-compartment --generate-full-command-json-input
oci resource-manager stack create-from-compartment \
--compartment-id ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000000 \
--config-source-compartment-id ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000000 \
--config-source-region IAD \
--config-source-services-to-discover '[
"core"
,"database"
]' \
--terraform-version "1.2.x" \
--display-name "stack01" \
--description "stack01"
oci resource-manager stack list \
--compartment-id ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000000 \
--query 'data.{"display-name":"display-name","id":"id","lifecycle-state":"lifecycle-state"}' \
--output table
oci resource-manager stack get-stack-tf-config \
--stack-id ocid1.ormstack.oc1.iad.000000000000000000000000000000000000000000000000000000000000 \
--file stack01.zip
oci resource-manager stack delete \
--stack-id ocid1.ormstack.oc1.iad.000000000000000000000000000000000000000000000000000000000000 \
--force
-- 3. Zipファイルからのスタックの作成
oci resource-manager stack create \
--compartment-id ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000000 \
--config-source stack01.zip \
--terraform-version "1.2.x" \
--display-name "stack02" \
--description "stack02"
oci resource-manager stack list \
--compartment-id ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000000 \
--query 'data.{"display-name":"display-name","id":"id","lifecycle-state":"lifecycle-state"}' \
--output table
oci resource-manager stack delete \
--stack-id ocid1.ormstack.oc1.iad.000000000000000000000000000000000000000000000000000000000000 \
--force
-- 4. ジョブ実行
oci resource-manager job list \
--compartment-id ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000000
oci resource-manager job create-plan-job \
--stack-id ocid1.ormstack.oc1.iad.000000000000000000000000000000000000000000000000000000000000 \
--display-name "job01"
oci resource-manager job list \
--compartment-id ocid1.compartment.oc1..000000000000000000000000000000000000000000000000000000000000 \
--query 'data.{"display-name":"display-name","id":"id","lifecycle-state":"lifecycle-state"}' \
--output table
oci resource-manager job create-apply-job \
--stack-id ocid1.ormstack.oc1.iad.000000000000000000000000000000000000000000000000000000000000 \
--display-name "job02" \
--execution-plan-strategy "AUTO_APPROVED"
oci resource-manager job create-destroy-job \
--stack-id ocid1.ormstack.oc1.iad.000000000000000000000000000000000000000000000000000000000000 \
--display-name "job03" \
--execution-plan-strategy "AUTO_APPROVED"