buildspec.ymlでparameter-store利用時に「not a valid identifier」エラーの対処法

buildspec.ymlでparameter-store(パラメータストア)を利用したのですが、うまく値を取得することができませんでした。

CodeBuildのIAMロールには「AmazonSSMReadOnlyAccess」ポリシーは付けていました。

原因としては変数に「-」が入っていたからでした。。

 

具体的には赤枠のパラメータストアから値を取得する変数の「s3-cicd-api」でエラーとなります。

 

CodeBuildのログを参照すると以下のエラーでした。

「s3-cicd-api: not a valid identifier」

対応

「-」などの記号を取る。

今回の場合は「s3-cicd-api」→「s3cicdapi」に変更しました。

secrets-manager(AWS Secrets Manager)もたぶん同じだと思います。

 

今まで何となくymlファイルの変数には記号入れたことなかったなぁ~と。

AWS公式サイト(CodeBuild のビルド仕様に関するリファレンス)には特に記載していなかったです。

常識ってことですかね。。

docs.aws.amazon.com