#12 全部やらないデプロイツール — ecspresso/lambrollが引いた"分界点" | fujiwara

「デプロイって、実はAPIを3回くらい叩けばできるんですよ」——ECS用デプロイツール「ecspresso」とLambda用の「lambroll」を作ったfujiwaraさんをゲストに迎え、自作デプロイツール10年の進化を深掘りするゲスト回です。

SAMやServerless Frameworkを選ばずCloudFormationを経由しない道を選んだ理由から始まり、最初は300行だったツールが1万行に育つまでに足されてきた機能の話が続きます。

デプロイ前にイメージやサブネットの存在を検証するverify、マネコンでの手動変更による先祖返りを防ぐdiff、プルリクから生まれたrun task対応、Terraformのtfstateを名前解決に使うtfstate-lookup。Jsonnetとテンプレート記法が衝突した「食い合わせ問題」や、ECS側にネイティブロールバックが入って追従に苦労した話など、APIを直接叩くツールならではの苦労も赤裸々です。

終盤はREADMEを丸ごとバイナリに埋め込むAI対応と、ecspressoインスパイアなツールが独立に複数生まれている最近の面白い現象へ。

デプロイツールを自作したい人、OSSのメンテナンスのリアルを知りたい人におすすめの回です。

- ecspresso: https://github.com/kayac/ecspresso

- lambroll: https://github.com/fujiwara/lambroll

- tfstate-lookup: https://github.com/fujiwara/tfstate-lookup

- Amazon ECS: https://aws.amazon.com/ecs/

- AWS Lambda: https://aws.amazon.com/lambda/

- Terraform: https://www.terraform.io/

- AWS CDK: https://aws.amazon.com/cdk/

- AWS SAM: https://aws.amazon.com/serverless/sam/

- Serverless Framework: https://www.serverless.com/

- apex: https://github.com/apex/apex

- Jsonnet: https://jsonnet.org/

- go-jsonnet: https://github.com/google/go-jsonnet

- skillsmith: https://github.com/Songmu/skillsmith

─────────────

YouTube: https://youtu.be/P2gl8GSH-Ec

Web: https://yaoyorozu-oss.henteko07.com/

X: https://x.com/yaoyorozu_oss