結論
例えば「”Asia Pacific (Tokyo)", "ap-northeast-1"」という感じに、リージョン名称とリージョンコードの一覧を取得するのは、下記のAWSのEC2ユーザーズガイドの"Regions and Availability Zones"のリージョン一覧表から取得するのが良さそう。(結局手作業ですが)
docs.aws.amazon.com
(補足)aws cliでのリージョン一覧取得
aws cliで、"aws ec2 describe-regions"でもリージョン一覧が取得できますが、リージョンコード(ap-northeast-1とか)と、EC2のエンドポイント (ec2.ap-south-1.amazonaws.comとか)しか取得できず、ap-northeast-1が”Asia Pacific (Tokyo)"というのは自動では取れないんですね。
aws cli取得例1 アジアのリージョンを取得する
aws ec2 describe-regions --output json --filters 'Name=region-name, Values=ap-*' { "Regions": [ { "Endpoint": "ec2.ap-south-1.amazonaws.com", "RegionName": "ap-south-1" }, { "Endpoint": "ec2.ap-northeast-2.amazonaws.com", "RegionName": "ap-northeast-2" }, { "Endpoint": "ec2.ap-northeast-1.amazonaws.com", "RegionName": "ap-northeast-1" }, { "Endpoint": "ec2.ap-southeast-1.amazonaws.com", "RegionName": "ap-southeast-1" }, { "Endpoint": "ec2.ap-southeast-2.amazonaws.com", "RegionName": "ap-southeast-2" } ] }
取得例2 リージョンコード一覧を抜き出す
aws ec2 describe-regions --output text --query 'Regions[].{Name:RegionName}' ap-south-1 eu-west-3 eu-west-2 eu-west-1 ap-northeast-2 ap-northeast-1 sa-east-1 ca-central-1 ap-southeast-1 ap-southeast-2 eu-central-1 us-east-1 us-east-2 us-west-1 us-west-2
取得例3 シェルで、抜き出したリージョンコード一覧をREGIONSという配列にセットする
declare -a REGIONS=( $(aws --output text ec2 describe-regions --query 'Regions[].{Name:RegionName}'|sort) )
取得したREGIONS配列を利用する例
for i in ${REGIONS[@]}; do echo "region code = $i";done region code = ap-northeast-1 region code = ap-northeast-2 region code = ap-south-1 region code = ap-southeast-1 region code = ap-southeast-2 region code = ca-central-1 region code = eu-central-1 region code = eu-west-1 region code = eu-west-2 region code = eu-west-3 region code = sa-east-1 region code = us-east-1 region code = us-east-2 region code = us-west-1 region code = us-west-2