Skip to content
This repository has been archived by the owner. It is now read-only.
master
Go to file
Code
This branch is 20 commits behind ns1-terraform:master.

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
ns1
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

README.md

NS1 Terraform Provider

This project is in active development.

Contents

  1. Requirements - lists the requirements for building the provider
  2. Building The Provider - lists the steps for building the provider
  3. Using The Provider - details how to use the provider
  4. Developing The Provider - steps for contributing back to the provider
  5. Known Isssues/Roadmap - check here for some of the improvements we are working on

Requirements

  • Terraform 0.10+
  • Go 1.12+ (to build the provider plugin)

Building The Provider

Clone repository to: $GOPATH/src/github.com/terraform-providers/terraform-provider-ns1

$ mkdir -p $GOPATH/src/github.com/terraform-providers
$ cd $GOPATH/src/github.com/terraform-providers
$ git clone git@github.com:terraform-providers/terraform-provider-ns1

Enter the provider directory and build the provider

$ cd $GOPATH/src/github.com/terraform-providers/terraform-provider-ns1
$ make build

Using The Provider

The documentation and examples for NS1 Resources and Data Sources is maintained as part of this repository, in the /website directory. This is published to www.terraform.io/docs/providers/ns1 as part of the release process.

Developing The Provider

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 bin
...
$ $GOPATH/bin/terraform-provider-ns1
...

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.

$ make testacc

Some helpful things for debugging:

  • Set TF_LOG=DEBUG for verbose logging.
  • Additionally set NS1_DEBUG environment variable to include details of the API requests in the logs.

Contributions

Pull Requests and issues are welcome. See the NS1 Contribution Guidelines for more information.

Known Issues/Roadmap

  • Currently, some arguments marked as required in resource documentation are de-facto optional. A resource will be created/updated without error, but in general will lead to a "dirty terraform" state, since the defaulted attributes on the returned state may not match the resource descriptions. We're working on making these either truly Required or truly Optional as appropriate.
  • Currently, some resources do not return attributes for optional features that are unused. We are working on making the resource schemas fixed, with proper defaults returned for optional/unused features.
  • We'll be adding a record data source ASAP, to cover simple read-only use cases
You can’t perform that action at this time.