Giter Club home page Giter Club logo

terraform-provider-linode's Introduction

Terraform Provider for Linode

Maintainers

This provider plugin is maintained by Linode.

Requirements

  • Terraform 0.12.0+
  • Go 1.11.0 or higher (to build the provider plugin)

Using the provider

See the Linode Provider documentation to get started using the Linode provider. The examples included in this repository demonstrate usage of many of the Linode provider resources.

Additional documentation and examples are provided in the Linode Guide, Using Terraform to Provision Linode Environments.

Development

Building the provider

If you wish to build or contribute code to the provider, you'll first need Git and Go installed on your machine (version 1.11+ is required).

You'll also need to correctly configure 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.

Clone this repository to: $GOPATH/src/github.com/linode/terraform-provider-linode

mkdir -p $GOPATH/src/github.com/linode
cd $GOPATH/src/github.com/linode
git clone https://github.com/linode/terraform-provider-linode.git

Enter the provider directory and build the provider

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

Testing the provider

In order to run the full suite of Acceptance tests, run make testacc. Acceptance testing will require the LINODE_TOKEN variable to be populated with a Linode APIv4 Token. See Linode Provider documentation for more details.

Note: Acceptance tests create real resources, and often cost money to run.

make testacc

In order to run specific Acceptance tests, the following command template can be used.

make PKG_NAME="linode/volume" TESTARGS="-run TestAccResourceVolume_basic" testacc

There are a number of useful flags and variables to aid in debugging.

  • LINODE_DEBUG - If truthy, this will emit all HTTP requests and responses to the Linode API. This may include sensitive data such as the account tax_id (VAT) and the credit card last_four and expiry. Be very cautious about storing this output.

  • TF_LOG - This instructs Terraform to emit trace level (and higher) logging messages.

  • TF_SCHEMA_PANIC_ON_ERROR - This forces Terraform to panic if a Schema Set command failed.

These values (along with LINODE_TOKEN) can be placed in a .env file in the repository root to avoid repeating them on the command line.

terraform-provider-linode's People

Contributors

0xch4z avatar lbgarber avatar displague avatar phillc avatar dependabot[bot] avatar ellisbenjamin avatar lgarber-akamai avatar jriddle-linode avatar ezilber-akamai avatar grubernaut avatar phinze avatar btobolaski avatar bdwyertech avatar akerl avatar radeksimko avatar jen20 avatar bellislinode avatar apparentlymart avatar ezilber-akamai-zz avatar stack72 avatar jordanfelle avatar damasosanoja avatar adrianteri avatar jskobos avatar mitchellh avatar tombuildsstuff avatar cliedeman avatar zliang-akamai avatar rainbowhackerhorse avatar appilon avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.