provider-sql icon indicating copy to clipboard operation
provider-sql copied to clipboard

postgresql create database fails when setting owner to another role with GCP (and probably Amazon RDS)

Open denis111 opened this issue 2 years ago • 0 comments

What happened?

After creating a Role por postgresql if we create a database logged in as super-user on already existed PostgreSQL server on GCP (and probably on RDS) with the option (forProvider.owner: name-of-just-created-role) we get this error:

cannot create database: pq: must be member of role "name-of-just-created-role". I think the problem is exactly the same as happend to terraform devs https://github.com/hashicorp/terraform/issues/11362 .

I had no problems with postgresql instance in docker container doing the same, only on GCP.

How can we reproduce it?

Try to create something like this on already existing GCP or RDS PostgreSQL server:

apiVersion: postgresql.sql.crossplane.io/v1alpha1
kind: Role
metadata:
  name: new-role
spec:
  forProvider:
    privileges:
      login: true
      replication: true
  providerConfigRef:
    name: provider-config-to-connect-to-postgresql-instance-on-gcp
  writeConnectionSecretToRef:
    name: new-role
    namespace: default
---
apiVersion: postgresql.sql.crossplane.io/v1alpha1
kind: Database
metadata:
  name: new-db
spec:
  forProvider:
    owner: new-role
  providerConfigRef:
    name: provider-config-to-connect-to-postgresql-instance-on-gcp

What environment did it happen in?

Crossplane version: 1.7.1 GCP PostgreSQL instance

denis111 avatar May 11 '22 08:05 denis111