この記事ではTerraform初心者の私が、herokuにデプロイし際の備忘録を記載してます。
<作成環境>
■PC:MacBook (13-inch, Aluminum, Late 2008)
■macOS:10.11.6
◼Terrafom:v0.12.20
◼herokuk:v2.2.2
<参考URL>
https://blog.sshn.me/posts/using-terraform-to-build-heroku-app/
この記事は、基本的に、上記ページを参照しておりますが、上記私の作成環境でデプロイする際に修正した点を記載しております。
<前提作業>
◼__Terraformのインストール__
brew install terraform
◼__herokuの登録__
https://jp.heroku.com/
<私が記載したtfファイル>
provider "heroku" {
email = "heroku登録時のメールアドレス"
api_key = "heroku_api_key"
}
resource "heroku_app" "default" {
name = "terraform-heroku-test"
region = "us"
}
resource "heroku_addon" "database" {
app = "${heroku_app.default.name}"
plan = "heroku-postgresql:hobby-dev"
}
<修正した点>
◼__api_keyの記載方法__
修正前:api_key = "${var.heroku_api_key}"
修正後:api_key = "heroku_api_key"
上記のようにapi_keyを入力する際、修正前の記載だと正常に処理が完了しないため、
emailと同じように""の中にheroku_api_keyを入力すると処理が完了した。
◼__heroku_appのnameの使用文字__
修正前:terraform_heroku_test
修正後:terraform-heroku-test
(アンダーバー)が使用できない。
参考URLの記載は正解です。私がappの名前を設定する際、他の名前を使用し、(アンダーバー)を使用しました。
デプロイする際、エラーで_(アンダーバー)が使用できないことに気づきました。
参考ページ:https://stackoverflow.com/questions/41604716/heroku-errorname-must-start-with-a-letter-and-can-only-contain-lowercase-letter/41606980#41606980