このページ内容は2022年9月9日以降、再調査・再検証してません。実際に扱う際は最新の情報にアクセスしてください。

link
CDK for Terraform

Terraformの設定ファイルを書くときに、TypeScriptやJava, Goなどを用いてインフラ構成を書けるようになりましたterraform_cdk。プログラミング言語でインフラ構成を書けるものでいうと、Pulumiが有名ですが、Terraformでも利用可能になりました。ただ、TypeScriptの場合はPulumiと異なりclassベースになります。

いくつかサンプルterraform_cdk_sampleも用意されています。APIリファレンスterraform_cdk_referenceもありますが、リリースされたばかりでAPIの説明がまだなかったりします。

main.ts
1
import { Construct } from "constructs";
2
import { App, TerraformStack } from "cdktf";
3
4
class MyStack extends TerraformStack {
5
constructor(scope: Construct, name: string) {
6
super(scope, name);
7
8
// define resources here
9
}
10
}
11
12
const app = new App();
13
new MyStack(app, "cdk_with_terraform_for_aws_ec2");
14
app.synth();

筆者はPulumi, または生yaml派ですが、Terraformを使ってる方で型を使って、設定できる項目をコード上で選べるようにしたい人には合ってそうなツールだと思いました。

CDK for Terraformの使用例

CDK for Terraformの使用例


自己紹介
はじめまして Pilefortです。
東京でエソジニアをしてます。
興味のあるスタックは、JavaScript (React, Vue), TypeScript, Rust, WebAssembly, AWS, Pulumi, Serverless Frameworkです。
このブログでは、普段の業務や趣味で気になったことをまとめたり、フロントやAWS, GitHubやTwitterで見かけた面白い記事やニュースをまとめるためのものです。少しでも何かの役に立てば幸いです。
最近の活動
技術書典13 (2022.9.10 - 2022.9.25) で本を出しました。
2022年の1月から8月ぐらいまでに登場したり、大幅なアップデートがあったWebサービスや開発ツール、ライブラリ、フレームワークを紹介した本です。
うぇぶちぇんじろぐ2022part1
XMind8ファイルをMarkdownファイルに変換するツールを作りました。
公式のxmind-sdk-jsのバージョンを下げて作ってます (最新版だと一部メソッドが削除されてるため)。
技術書典12 (2022.1.22 - 2022.1.30) で本を出しました。
2021年に登場したり、大幅なアップデートがあったWebサービスや開発ツール、ライブラリ、フレームワークを紹介した本です。
うぇぶちぇんじろぐ2022
サイトマップ
Notes
業務や趣味での気づき・メモ
Scraps
雑記。ネットで見つけた面白い記事やニュース
Snippets
記事にするまでもないけど、便利なコマンドや豆知識
Works
同人誌一覧