terraform-provider-postgresql icon indicating copy to clipboard operation
terraform-provider-postgresql copied to clipboard

GCP postgres extension not deleting

Open MichaelSweikata opened this issue 3 years ago • 0 comments

Hi there,

Thank you for opening an issue. Please provide the following information:

Terraform Version

(.venv) SweikataM@SweikataM-MacBook-Pro gitlab-pages % terraform -v Terraform v1.1.7 on darwin_amd64

  • provider registry.terraform.io/cyrilgdn/postgresql v1.15.0
  • provider registry.terraform.io/hashicorp/google v4.12.0

Affected Resource(s)

Please list the resources as a list, for example:

  • postgresql_extension

If this issue appears to affect multiple resources, it may be an issue with Terraform's core, so please mention this.

Terraform Configuration Files

#GCP Provider omitted in config
terraform {
  required_providers {
    postgresql = {
        source = "cyrilgdn/postgresql"
        version = "1.15.0"
    }
  }
}

#Create the postgres database
resource "google_sql_database_instance" "gitlabdb" {
  database_version = "POSTGRES_14"
  region = "us-central1"
  deletion_protection = false
  settings {
    disk_autoresize = true
    tier = "db-f1-micro"
    ip_configuration {
      ipv4_enabled = false
      private_network = data.google_compute_network.vpc.self_link
    }   
  }
}

provider "postgresql" {
  #scheme = "gcppostgres"
  #host = google_sql_database_instance.gitlabdb.connection_name
  host = google_sql_database_instance.gitlabdb.ip_address.0.ip_address
  username = google_sql_user.gitlabdb.name
  password = google_sql_user.gitlabdb.password
  superuser = false

}

#Create the postgress extensions
resource "postgresql_extension" "pg_trgm" {
    name = "pg_trgm"
}
resource "postgresql_extension" "btree_gist" {
  name = "btree_gist"
}
resource "postgresql_extension" "plpgsql" {
  name = "plpgsql"
}
resource "postgresql_extension" "test" {
  name = "prefix"
}

Debug Output

https://gist.github.com/MichaelSweikata/8e4439fa90a21fc77530db2afdf36c02

Expected Behavior

On terraform destroy or terraform apply with contents removed, the extensions should be removed from the database.

Actual Behavior

It generated an error:


postgresql_extension.plpgsql: Destroying... [id=postgres.plpgsql]
╷
│ Error: pq: must be owner of extension plpgsql
│ 
│ 

Steps to Reproduce

Please list the steps required to reproduce the issue, for example:

  1. terraform destroy

Important Factoids

The database was created in GCP, however I'm using the default schema and connecting to it via IP (for now).

MichaelSweikata avatar Mar 04 '22 17:03 MichaelSweikata