Terraform provider for manipulating encrypted data using eyaml. It initially aimed to encrypt data for puppet.
Supported encryption methods
This provider only supports PKCS7 as encryption method.
Requirements
Building The Provider
- Clone the repository
- Enter the repository directory
- Build the provider using the Go
install
command:
go install
Adding Dependencies
This provider uses Go modules.
Please see the Go documentation for the most up to date information about using Go modules.
To add a new dependency github.com/author/dependency
to your Terraform provider:
go get github.com/author/dependency
go mod tidy
Then commit the changes to go.mod
and go.sum
.
Developing the Provider
If you wish to work on the provider, you'll first need Go installed on your machine (see Requirements above).
To compile the provider, run go install
. This will build the provider and put the provider binary in the $GOPATH/bin
directory.
To generate or update documentation, run make docs
.
In order to run the full suite of Acceptance tests, run make testacc
.
make testacc
Releasing
Builds and releases are automated with GitHub Actions and
GoReleaser.
Currently there are a few manual steps to this:
-
Kick off the release:
RELEASE_VERSION=v... \
make release
-
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 Auto-generate release notes
button and mash the publish button.