ふり返る暇なんて無いね

日々のメモ書きをつらつらと

terraformでCloudSQLのインスタンス作成に失敗した

こんなエラーが出てインスタンス作成に失敗した。

╷
│ Error: Error, failed to create instance because the network doesn't have at least 1 private services connection. Please see https://cloud.google.com/sql/docs/mysql/private-ip#network_requirements for how to create this connection.
│ 
│   with google_sql_database_instance.primary,
│   on database.tf line 1, in resource "google_sql_database_instance" "primary":
│    1: resource "google_sql_database_instance" "primary" {
│ 
╵

terraformのコードとしてはこれ。原因としては、private_networkの指定が間違っていた。

resource "google_sql_database_instance" "primary" {
  name             = var.database.primary.name
  project          = var.project_id
  region           = var.database.primary.location
  database_version = var.database.primary.version

  settings {
    tier              = var.database.primary.tier
    availability_type = var.database.primary.availability_type
    disk_size         = var.database.primary.disk_size
    ip_configuration {
      ipv4_enabled    = false
      private_network = var.database.private_network  # <= これ
    }
    backup_configuration {
      enabled            = true
      binary_log_enabled = true
    }
  }
  deletion_protection = "true"
}

エラーメッセージにネットワーク名が出てればすぐ原因にたどり着けたのに。。。無駄な時間をかけてしまった。