Infracost CloudとGitHubリポジトリを連携してみた

Infracost CloudとGitHubリポジトリを連携してみた

2025.09.23

InfracostはTerraformテンプレートからAWS等のクラウドのコストを試算できるツールです。

https://dev.classmethod.jp/articles/vscode-extension-infracost-aws-cost-estimation-iac-template/

Infracost CLIやInfracost VS Code拡張機能は無料で利用が可能です。

その他に有料版として、Infracost Cloudがあります。こちらはSaaS版です。

2週間分の無料トライアルがついているため、期間内であれば無料で検証できます。

今回は、Infracost CloudをGitHubリポジトリと連携するところまでやってみました。

やってみた

公式の手順を参考にします。

https://www.infracost.io/docs/integrations/github_app/

Infracost Cloudにサインアップまたはログイン

Infracost Cloudにサインアップまたはログインします。

ログインが完了すると以下のダッシュボードが表示されます。

Dashboard_-_Infracost.png

GitHub OrgにInfracost用GitHub Appをインストールする

画面右上のSettings -> Org Settings -> Integrations -> Add integrationsの順に選択します。

Dashboard_-_Infracost.png

今回は個人用のGitHubリポジトリを連携するため、GitHub.com and Enterprise Cloudを選択しました。

Organization_settings_-_Infracost.png

or continue to GitHub to add a new installationを選択して、GitHub OrgにGitHub Appをインストールします。

必要に応じて、アクセス可能なリポジトリを制限してインストールします。

Installing_Infracost.png

GitHubリポジトリと接続する

Infracost Cloudに戻って、リポジトリの接続を行います。

接続するリポジトリを選択します。

GitHub_App_Settings_-_Infracost.png

接続設定の画面に遷移します。今回はデフォルトのままにします。

GitHub_App_Settings_-_Infracost.png

Infracost Cloud上でリポジトリを確認してみる

ブログ用のサンプルコードを管理しているリポジトリに接続しました。

https://github.com/msato0731/terraform-sample

以下のように全体の削減額やリポジトリごとの削減額を確認できました。

Repo_-_msato0731_terraform-sample_-_Infracost.png

Projectの詳細を見ると、リソースレベルのコストも確認できます。

Repo_-_msato0731_terraform-sample_-_Infracost.png

Failing policiesの部分を確認すると、リポジトリ内のコスト関連の提案を確認できます。

例)

  • EC2 Graviton instanceを利用する
  • EC2 最新世代のインスタンスを使用する
  • ECR ライフサイクルポリシーを設定する

リポジトリ内の該当リソースも確認できます。修正対応が捗りそうです。

Repo_-_msato0731_terraform-sample_-_Infracost.png

GitHubリポジトリに Pull Requestを作成する

EC2を作成するPull Requestを連携しているリポジトリに作成しました。

main.tf
			
			# 省略
data "aws_ami" "amazon_linux" {
  most_recent = true
  owners      = ["amazon"]

  filter {
    name   = "name"
    values = ["amzn2-ami-hvm-*-x86_64-gp2"]
  }
}
resource "aws_instance" "web" {
  ami           = data.aws_ami.amazon_linux.id
  instance_type = "t2.micro"
}

		

Infracost Cloudが自動でPull Requestにコストの試算結果をコメントしてくれました。

スクリーンショット_2025_09_23_10_23.png

Infracost Cloud上でもPull Requestを確認可能です。

今回インスタンスタイプをt2.microにしていたため、最新のインスタンスファミリーを使うこと・Gravitonベースのインスタンスを使うことを提案されていますね。

Pull_request__10_-_Infracost.png

GitHub連携することで、リソース作成前に自動でコストの試算やチェックができます。

意図せず高額になったり、余分なコストがかかる構成でリソースを作成することを防止できそうです。

おわりに

Infracost Cloudを試してみました。

VSCode拡張機能としてInfracostを使っていましたが、今回始めてCloud版を使いました。

GitHub連携が簡単で、ワークフロー内にコスト試算とチェックを簡単に組み込むことができました。

生成AIの発展でIaCコードの作成ハードルは下がっており、コードの質を担保するのが今後の課題になってくるかと思います。

生成AIでコード生成・Infracostでコスト最適化チェックのように併用することでスピードと品質の向上に役立ちそうです。

記事執筆時点ではプライベートベータですが、チェックで検出した問題の修正用Pull Requestを自動で生成する機能もあります。パブリックベータかGAになったタイミングで試してみたいと思います。

https://www.infracost.io/blog/ai-for-finops-fix-cloud-cost-issues-faster/

この記事をシェアする

FacebookHatena blogX

関連記事