This provider allows to manage with Terraform Postgresql objects like databases, extensions, roles, etc..
It's published on the Terraform registry. It replaces https://github.com/hashicorp/terraform-provider-postgresql since Hashicorp stopped hosting community providers in favor of the Terraform registry.
Clone repository to: $GOPATH/src/github.com/terraform-providers/terraform-provider-postgresql
$ mkdir -p $GOPATH/src/github.com/terraform-providers; cd $GOPATH/src/github.com/terraform-providers
$ git clone [email protected]:terraform-providers/terraform-provider-postgresql
Enter the provider directory and build the provider
$ cd $GOPATH/src/github.com/terraform-providers/terraform-provider-postgresql
$ make build
Usage examples can be found in the Terraform provider documentation
If you wish to work on the provider, you'll first need Go installed on your machine (version 1.11+ is required). You'll also need to correctly setup a GOPATH, as well as adding $GOPATH/bin
to your $PATH
.
To compile the provider, run make build
. This will build the provider and put the provider binary in the $GOPATH/bin
directory.
$ make build
...
$ $GOPATH/bin/terraform-provider-postgresql
...
In order to test the provider, you can simply run make test
.
$ make test
In order to run the full suite of Acceptance tests, run make testacc
.
Note:
- Acceptance tests create real resources, and often cost money to run.
- If ran locally
docker-compose
needs to be in the$PATH
$ make testacc
In order to manually run some Acceptance test locally, run the following commands:
# spins up a local docker postgres container
make testacc_setup
# Load the needed environment variables for the tests
source tests/env.sh
# Run the test(s) that you're working on as often as you want
TF_LOG=INFO go test -v ./postgresql -run ^TestAccPostgresqlRole_Basic$
# cleans the env and tears down the postgres container
make testacc_cleanup