Skip to content

dbsystel/terraform-provider-redshift

This branch is 268 commits ahead of, 1 commit behind brainly/terraform-provider-redshift:master.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

8730780 · Oct 25, 2024
Oct 24, 2024
Jan 19, 2023
Jan 19, 2023
Aug 24, 2024
Jan 31, 2022
Dec 30, 2021
Sep 20, 2023
Aug 24, 2024
Jan 31, 2023
Jun 23, 2021
Feb 15, 2022
Apr 28, 2024
Oct 23, 2024
Oct 23, 2024
Apr 28, 2024
Jun 23, 2021
Oct 21, 2023
Aug 24, 2024

Repository files navigation

Terraform Provider for AWS Redshift

This provider allows to manage with Terraform AWS Redshift objects like users, groups, schemas, etc..

It's published on the Terraform registry.

Requirements

  • Terraform >= 1.0
  • Go 1.21 (to build the provider plugin)

Building The Provider

$ git clone [email protected]:brainly/terraform-provider-redshift

Enter the provider directory and build the provider

$ cd terraform-provider-redshift
$ make build

Development

If you're new to provider development, a good place to start is the Extending Terraform docs.

Running Tests

Acceptance tests require a running real AWS Redshift cluster.

REDSHIFT_HOST=<cluster ip or DNS>
REDSHIFT_USER=root
REDSHIFT_DATABASE=redshift
REDSHIFT_PASSWORD=<password>
make testacc

If your cluster is only accessible from within the VPC, you can connect via a socks proxy:

ALL_PROXY=socks5[h]://[<socks-user>:<socks-password>@]<socks-host>[:<socks-port>]
NO_PROXY=127.0.0.1,192.168.0.0/24,*.example.com,localhost

Documentation

Documentation is generated with tfplugindocs. Generated files are in docs/ and should not be updated manually. They are derived from:

Use go generate to update generated docs.

Releasing

Builds and releases are automated with GitHub Actions and GoReleaser. The changelog is managed with github-changelog-generator.

Currently there are a few manual steps to this:

  1. Update the changelog:

    RELEASE_VERSION=v... \
    CHANGELOG_GITHUB_TOKEN=... \
    make changelog

    This will commit the changelog locally.

  2. Review generated changelog and push:

    View the committed changelog with git show. If all is well git push origin master.

  3. Kick off the release:

    RELEASE_VERSION=v... \
    make release

    Once the command exits, you can monitor the rest of the process on the Actions UI.

  4. Publish release:

    The Action creates the release, but leaves it in "draft" state. Open it up in a browser and if all looks well, click the publish button.

Releases

No releases published

Packages

No packages published

Languages

  • Go 99.5%
  • Makefile 0.5%