BioErrorLog Tech Blog

試行錯誤の記録

IaC

count制御したリソースをoutputする | Terraform

作成するか否かをcountで制御したリソースをoutputする方法を整理します。 はじめに count制御したリソースをoutputする やり方1:one関数を使う やり方2:try関数を使う おわりに 参考 はじめに こんにちは、@bioerrorlogです。 Terraformではcountを指定…

RustのAWS LambdaをTerraformで実装する

Rustで書いたAWS LambdaをTerraformでデプロイする方法の備忘録です。 はじめに RustのAWS LambdaをTerraformで実装する 作ったもの Terraformの実装 Lambda用Rustパッケージの実装 1. cargo-lambdaのインストール 2. 新規Lambdaパッケージを生成 3. Rustコ…

GitHub ActionsでTerraformフォーマットチェック | terraform fmt

GitHub Actionsでterraform fmtをチェックする方法をメモします。 はじめに GitHub Actionsでterraform fmt おわりに 参考 はじめに こんにちは、@bioerrorlogです。 コードのフォーマットチェックをCIで自動担保させることは、シンプルですが大切なことです…

TerraformでAWSアカウントIDを取得する

Terraformで現在のAWSアカウントIDを取得する方法の備忘録です。 はじめに TerraformでAWSアカウントIDを取得する おまけ: Terraformソースコードを読む おわりに 参考 はじめに こんにちは、@bioerrorlogです。 Terraformを書いているとき、arnの指定等でAW…

Terraformにおける三項演算子の使い方

Terraformの三項演算子の使い方と、その使用例をまとめます。 はじめに Terraformで三項演算子 使い方 具体例 シンプルな例 条件演算子を組み合わせ 型がcastされる例 エラー: 異なる型を指定 エラー: bool以外をconditionに指定 活用事例:resource count …

TerraformでDEBUGレベルのログを出力する

Terraformで出力ログレベルを変更するやり方の備忘録です。 はじめに TerraformでDEBUGレベルのログを出力する TerraformとProviderで個別にログの出力レベルを設定する おまけ: Terraformのソースコードを読む おわりに 参考 はじめに こんにちは、@bioerro…

terraform plan結果がNo changesでないときに異常終了させる方法

terraform plan結果がNo changesかどうかを検知するのに便利な方法をメモします。 はじめに terraform plan結果がNo changesでないときに異常終了させる おわりに 参考 はじめに こんにちは、@bioerrorlogです。 terraform applyした直後であっても、terrafo…

Terraformで文字列を切り出す | substrの使い方

Terraformのsubstrを使って、文字列を切り出す/抽出するやり方を整理します。 はじめに substrの使い方 基本の使い方 マイナス値を活用する おわりに 参考 はじめに こんにちは、@bioerrorlogです。 substr関数を使えば、Terraformで文字列を切り出すことが…

Terraformのvariableで特定パターンを強制/validateする

Terraformのmodule variableで、特定パターン・条件を強制/validateする方法を整理します。 はじめに Terraformのvariableで特定パターンを強制する やり方 活用例: AMI ID 活用例: S3 URI おわりに 参考 はじめに こんにちは、@bioerrorlogです。 Terraform…

!FindInMapを!Subの中で使う | CloudFormation

AWS CloudFormationで!FindInMapを!Sub内で使うやり方をまとめます。 はじめに !FindInMapを!Subの中で使う おわりに 参考 はじめに こんにちは、@bioerrorlogです。 CloudFormationの!Subは値を代入/置換 ("substitute")できる関数、!FindInMapはMappingsか…

DeletionPolicyの変更が反映されないときの対処法 | CDK/CloudFormation

CDKやCloudFormationにて、変更したDeletionPolicy (RemovalPolicy)がStackに反映されない時の対処法を残します。 はじめに DeletionPolicyの変更が反映されないときの対処法 起こったこと 原因 対処法 おわりに 参考 はじめに おはよう。@bioerrorlogです。…

AWS CDKでTagを付与する

AWS CDKでTagを付与する方法の備忘録です。 はじめに 環境 CDKでTagを付与する 具体例 Stack単位でTagを付与する Construct単位でTagを付与する 補足: 非推奨のTag付与方法 おわりに 参考 はじめに こんにちは、@bioerrorlogです。 CDKでリソースにTagを付与…

AWS CDK をアップデートする | Cloud9での注意点

AWS CDKのバージョンアップ方法を記します。 また、Cloud9でCDKをバージョンアップする際の注意点についても記述します。 はじめに 作業環境 CDK をアップデートする 一般的なCDKアップデート方法 Cloud9でのCDKアップデート方法 おわりに 参考 はじめに お…

AWS ChaliceアプリケーションをCDKでデプロイする | cdk-chalice

ChaliceアプリケーションをCDKでデプロイする方法を記します。 はじめに AWS Chaliceとは 作業環境 実行手順 前準備: Python3.7のインストール Chaliceプロジェクト作成 Chalice appコード CDKプロジェクトの作成 CDKコード CDKデプロイ リソースの削除 おわ…

AWS CDK 基本コマンドまとめ

よく使うCDKの基本コマンドをまとめます。 はじめに 環境 CDKコマンドまとめ CDKバージョン確認 CDKインストール CDKプロジェクト作成 CDKコマンド実行前の下準備 CDK Stack一覧表示 CloudFormationテンプレートの生成 CDKデプロイ前準備:bootstrap CDKデプ…

AWS CDKでStackをネストにする | NestedStack

AWS CDKでStackをネスト (入れ子) にしてデプロイする方法を記します。 はじめに 作業環境 CDKでStackをネストにする 問題: Stackが入れ子にできない 解決策: NestedStackを使う おわりに 参考 はじめに おはよう。@bioerrorlogです。 AWS CDKでStackをネス…