Skip to content
A Terraform provider for VinylDNS
Branch: master
Clone or download
mdb Merge pull request #51 from vinyldns/upgrade-to-tf-0.12
compile provider against tf 0.12
Latest commit 69d9706 Jun 20, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
build
vinyldns Merge pull request #46 from vinyldns/upgrade-funcs Jun 14, 2019
website
.gitignore
.travis.yml ensure deps are installed Sep 5, 2018
CODE_OF_CONDUCT.md initial commit Sep 4, 2018
CONTRIBUTING.md
Dockerfile Fix makefile to add a new build variant that includes deps for docker Nov 28, 2018
GNUmakefile
Gopkg.lock compile provider against tf 0.12 Jun 19, 2019
Gopkg.toml compile provider against tf 0.12 Jun 19, 2019
LICENSE add explicit LICENSE file Jan 24, 2019
NOTICE
PULL_REQUEST_TEMPLATE.md simplify PR template Nov 29, 2018
README.md
build.sh Fix Docker build Nov 28, 2018
docker-compose.yml Fix Docker build Nov 28, 2018
example.tf `terraform fmt` example Jun 19, 2019
main.go initial commit Sep 4, 2018

README.md

Build Status

terraform-provider-vinyldns

A Terraform provider for the VinylDNS DNS as a service API.

See example.tf for an example .tf file. See website/docs for documentation.

Installation

  1. Download the desired release version for your operating system from GitHub.
  2. Untar the download contents
  3. Install the terraform-provider-vinyldns anywhere on your system
  4. Add terraform-provider-vinyldns to your ~/.terraformrc file:
providers {
  "vinyldns" = "path/to/your/terraform-provider-vinyldns"
}

Installing from source

Alternatively, you can install from source:

go get github.com/vinyldns/terraform-provider-vinyldns
cd $GOPATH/src/github.com/vinyldns/terraform-provider-vinyldns
make install

Add terraform-provider-vinyldns to your ~/.terraformrc:

providers {
  "vinyldns" = "your-gopath/bin/terraform-provider-vinyldns"
}

Running acceptance tests

The terraform-provider-vinyldns acceptance tests assume a VinylDNS API is running on localhost:9000.

To run a local VinylDNS API, you'll need to:

git clone git@github.com:vinyldns/vinyldns.git
cd vinyldns
bin/docker-up-vinyldns.sh

Note that a make convenience task handles this:

make start-api

Then, to run the terraform-provider-vinyldns acceptance tests against the local Dockerized VinylDNS API server:

make test

To stop the localhost:9000 VinylDNS:

make stop-api

Building

To build terraform-provider-vinyldns binaries for all supported platforms:

make build

Building in Docker

The project contains a docker-compose.yml/Dockerfile that will perform a test build in a empty container. To run on windows:

docker-compose up --force-recreate --build builder
docker-compose down

or on Mac or Linux (preferred):

./build.sh

Upgrading Dependencies

dep is used to manage dependencies. To require a specific version of github.com/vinyldns/go-vinyldns:

To add a dependency:

dep ensure -add github.com/pkg/errors

Credits

terraform-provider-vinyldns would not be possible without the help of many other pieces of open source software. Thank you open source world!

Given the Apache 2.0 license of terraform-provider-vinyldns, we specifically want to call out the following packages and their corresponding licenses:

You can’t perform that action at this time.