設定値の指定
設定値の指定
手順に必要な設定値を変数に格納をします。
1. CloudFormationリソース名
CloudFormationリソース名を指定します。
変数の設定:
TEMPLATE_CFN_RESOURCE_NAME='SnsSubscription0'
2. リソースファイル用ディレクトリ
リソースファイル用ディレクトリを指定します。
変数の設定:
DIR_TEMPLATE_CFN_RESOURCE="${HOME}/environment/conf-handson-cli-cfn-sns-Subscription/resources"
ディレクトリが存在することを確認し、存在しない場合は作成します。
コマンド:
ls -d ${DIR_TEMPLATE_CFN_RESOURCE} > /dev/null 2>&1 \
|| mkdir -p ${DIR_TEMPLATE_CFN_RESOURCE}
結果(例):
3. リソースファイル名
リソースファイル名を指定します。
変数の設定:
FILE_TEMPLATE_CFN_RESOURCE="${DIR_TEMPLATE_CFN_RESOURCE}/${TEMPLATE_CFN_RESOURCE_NAME}.txt" \
&& echo ${FILE_TEMPLATE_CFN_RESOURCE}
結果(例):
${HOME}/environment/conf-handson-cli-cfn-sns-Subscription/resources/SnsSubscription0.txt
4. SNSトピックのリソース名
SNSトピックのリソース名の指定します。
変数の設定:
TEMPLATE_CFN_RESOURCE_NAME_SNS_TOPIC='SnsTopic0'
5. SNS通知プロトコル名
SNS通知プロトコル名を指定します。
変数の設定:
SNS_SUBSCRIPTION_PROTOCOL='email'
6. 通知先エンドポイント
一時ファイルを指定します。
変数の設定:
DIR_TMP="${HOME}/environment/conf-handson-cli-cfn-sns-Subscription"
変数の設定:
FILE_TMP="${DIR_TMP}/mail_address.tmp" \
&& echo ${FILE_TMP}
結果(例):
${HOME}/environment/conf-handson-cli-cfn-sns-Subscription/mail_address.tmp
一時ファイルをsourceコマンドで読み込みます。
通知先エンドポイントを指定します。
変数の設定:
SNS_SUBSCRIPTION_ENDPOINT="${MAIL_ADDRESS}" \
&& echo ${SNS_SUBSCRIPTION_ENDPOINT}
結果(例):
設定値の確認
各変数に正しい設定値が格納されていることを確認しながら保存します。
変数の確認:
cat << END
# 1. TEMPLATE_CFN_RESOURCE_NAME:"SnsSubscription0"
TEMPLATE_CFN_RESOURCE_NAME="${TEMPLATE_CFN_RESOURCE_NAME}"
# 2. DIR_TEMPLATE_CFN_RESOURCE:"${HOME}/environment/conf-handson-cli-cfn-sns-Subscription/resources"
DIR_TEMPLATE_CFN_RESOURCE="${DIR_TEMPLATE_CFN_RESOURCE}"
# 3. FILE_TEMPLATE_CFN_RESOURCE:"${HOME}/environment/conf-handson-cli-cfn-sns-Subscription/resources/SnsSubscription0.txt"
FILE_TEMPLATE_CFN_RESOURCE="${FILE_TEMPLATE_CFN_RESOURCE}"
# 4. TEMPLATE_CFN_RESOURCE_NAME_SNS_TOPIC:"SnsTopic0"
TEMPLATE_CFN_RESOURCE_NAME_SNS_TOPIC="${TEMPLATE_CFN_RESOURCE_NAME_SNS_TOPIC}"
# 5. SNS_SUBSCRIPTION_PROTOCOL:"email"
SNS_SUBSCRIPTION_PROTOCOL="${SNS_SUBSCRIPTION_PROTOCOL}"
# 6. SNS_SUBSCRIPTION_ENDPOINT:"<通知先メールアドレス>"
SNS_SUBSCRIPTION_ENDPOINT="${SNS_SUBSCRIPTION_ENDPOINT}"
END
下段の変数が入っていない、もしくは上段と同等の値が入っていない場合は、それぞれの手順番号に戻って変数の設定を行います。
完了確認
「リソースファイル"${HOME}/environment/conf-handson-cli-cfn-sns-Subscription/resources/SnsSubscription0.txt"が存在する。」ことを確認します。
コマンド:
ls ${FILE_TEMPLATE_CFN_RESOURCE}
結果(例):
${HOME}/environment/conf-handson-cli-cfn-sns-Subscription/resources/SnsSubscription0.txt