処理の実行
AWSアカウントIDを取得します。
コマンド:
ORGANIZATIONS_ACCOUNT_ID=$( \
aws organizations list-accounts \
--query "Accounts[?Name == \`${ORGANIZATIONS_ACCOUNT_NAME}\`].Id" \
--output text \
) \
&& echo ${ORGANIZATIONS_ACCOUNT_ID}
結果(例):
移動元Organizations組織ユニットIDを指定します。
変数の設定:
ORGANIZATIONS_ORGANIZATIONAL_UNIT_ID_SOURCE="${ORGANIZATIONS_ROOT_ID}" \
&& echo ${ORGANIZATIONS_ORGANIZATIONAL_UNIT_ID_SOURCE}
結果(例):
移動先Organizations組織ユニットIDを取得します。
コマンド:
ORGANIZATIONS_ORGANIZATIONAL_UNIT_ID_DESTINATION=$( \
aws organizations list-organizational-units-for-parent \
--parent-id ${ORGANIZATIONS_ORGANIZATIONAL_UNIT_ID_PARENT} \
--query "OrganizationalUnits[?Name == \`${ORGANIZATIONS_ORGANIZATIONAL_UNIT_NAME_DESTINATION}\`].Id" \
--output text \
) \
&& echo ${ORGANIZATIONS_ORGANIZATIONAL_UNIT_ID_DESTINATION}
結果(例):
AWSアカウントを移動します。
変数の確認:
cat << END
# ORGANIZATIONS_ACCOUNT_ID:"XXXXXXXXXXXX"
ORGANIZATIONS_ACCOUNT_ID="${ORGANIZATIONS_ACCOUNT_ID}"
# ORGANIZATIONS_ORGANIZATIONAL_UNIT_ID_SOURCE:"r-xxxx"
ORGANIZATIONS_ORGANIZATIONAL_UNIT_ID_SOURCE="${ORGANIZATIONS_ORGANIZATIONAL_UNIT_ID_SOURCE}"
# ORGANIZATIONS_ORGANIZATIONAL_UNIT_ID_DESTINATION:"ou-yyyy-yyyyyyyy"
ORGANIZATIONS_ORGANIZATIONAL_UNIT_ID_DESTINATION="${ORGANIZATIONS_ORGANIZATIONAL_UNIT_ID_DESTINATION}"
END
コマンド:
aws organizations move-account \
--account-id ${ORGANIZATIONS_ACCOUNT_ID} \
--source-parent-id ${ORGANIZATIONS_ORGANIZATIONAL_UNIT_ID_SOURCE} \
--destination-parent-id ${ORGANIZATIONS_ORGANIZATIONAL_UNIT_ID_DESTINATION}
結果(例):
完了確認
「AWSアカウント"handson-cli-organizations-account"がOrganizations組織ユニット"oregon-japan-ou"に所属している。」ことを確認します。
コマンド:
aws organizations list-children \
--parent-id ${ORGANIZATIONS_ORGANIZATIONAL_UNIT_ID_DESTINATION} \
--child-type ACCOUNT \
--query "Children[?Id == to_string(\`${ORGANIZATIONS_ACCOUNT_ID}\`)].Id" \
--output text
結果(例):