本 Blog は Github 上で管理し、PUSH したら投稿されるようになっています。 ここで課題になっていたのは、はてな Blog 投稿用の API キーの管理でした。というのも、Blogsync は API キーを YAML に直書きする必要があったためです。 v0.12.0 の Release No…
様々なところで terraform init しまくっていたら、.terraform ディレクトリが散在するようになり、VS Code での検索に支障を来すようになりました。 このため、.terraform ディレクトリ配下を検索対象から除外したい。 VS Code では、search.exclude を設定…
Git を用いて、特定日時以降に更新されたファイルの一覧を取得したい要件がありました。 これを素直に取得する方法がなさそうだったので、以下のようにして代用しています。 $ git log --after 2020/07/01 --name-only --pretty=oneline --full-index | grep…
Terraform で State を分割すると、たくさんの root module ができます。 ある root module が別 module の remote state 参照を持つとき、module 間に依存関係が生じます。 僕たちはこの依存順に terraform を apply しなければなりませんし、その逆順に de…
カレントディレクト配下にある全ディレクトリで同じ操作をする時って多いのではないでしょうか。 例えば作っている terraform 群が要求する Provider のバージョンをあげて、全部 terraform init して回らないといけなくなったりとか。 find と xargs を組み…
CI/CD で以下のコマンドを実行したかっただけでした。 $ aws ecr get-login-password | docker login --username AWS --password-stdin [AWS Account ID].dkr.ecr.ap-northeast-1.amazonaws.com/my-repository このコマンドラインには 2 つの実行バイナリが…
Cointaner Image の CD 用に ECR へ PUSH するための最低限の IAM Policy がどうなるのかを検証してまいりました。おそらくは以下が最低限の IAM Policy になりそうです。 このうちのどの action を許可しない場合であっても、イメージの PUSH はエラーにな…
CodePipeline + CodeDeploy で ECS へのデプロイメントパイプラインを組んでいたんですが、このパイプラインが様々な理由で失敗します。 マネジメントコンソールで確認しても、Internal error 的な文言しか表示されず、とにかくデバッグがしんどいです。 つ…
CodePipeline から別アカウント上の ECR を Source Action から指定したい。 これはそれなりに存在するユースケースではないでしょうか。 この実現にマジで苦しんだので、葛藤の記録を残しておきます。 概観 バケットポリシー CodePipelie からクロスアカウ…
以下のエントリで記載したように、AWS 上においてはマルチアカウントで環境を構成することがベストプラクティスとされています。 このエントリでは、Custodian アカウントという概念が登場しました。これは結局 IAM ユーザやグループを 1 つのアカウントにの…