• Stars
    star
    189
  • Rank 198,182 (Top 5 %)
  • Language
    Go
  • License
    Mozilla Public Li...
  • Created over 5 years ago
  • Updated 16 days ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Terraform Linode provider

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.

More Repositories

1

docs

Linode guides and tutorials.
Python
1,377
star
2

manager

Akamai's Cloud Manager is an open-source, single-page application designed as the primary frontend interface for interacting with the Linode API. It is entrusted by hundreds of thousands of customers with the management of their Linode services.
TypeScript
685
star
3

cli

This is the DEPRECATED Linode CLI. Use https://github.com/linode/linode-cli
Perl
467
star
4

linode-cli

The official Linode command line interface.
Python
360
star
5

longview

Linode Longview Agent
Perl
333
star
6

linodego

Go client for Linode REST v4 API
Go
134
star
7

linode_api4-python

Official Python bindings for the Linode API
Python
131
star
8

linode-cloud-controller-manager

Kubernetes Cloud Controller Manager for Linode
Go
78
star
9

terraform-linode-k8s

Kubernetes installer for Linode
HCL
68
star
10

linode-blockstorage-csi-driver

Container Storage Interface (CSI) Driver for Linode Block Storage
Go
62
star
11

Marketplace-Apps

The Linode Marketplace is designed to make it easier for developers and companies to share One-Click Apps with the Linode community.
Shell
53
star
12

ansible_linode

Linode Ansible Collection
Python
49
star
13

docker-volume-linode

Docker Volume driver for Linode Block Storage
Go
46
star
14

docker-machine-driver-linode

Linode Driver Plugin for Docker Machine using Linode APIv4
Go
43
star
15

beginners-guide-to-devops-tools

SCSS
26
star
16

linode-api-docs

Source for the Linode API v4 Docs
Python
20
star
17

packer-builder-linode

Packer Builder plugin for Linode Images
Go
20
star
18

cluster-api-provider-linode

A Cluster API implementation to create Kubernetes clusters for Linode (CAPL)
Go
17
star
19

provider-ceph

Provider Ceph is a Crossplane provider capable of managing S3 Buckets on one or more Ceph clusters.
Go
15
star
20

homebrew-cli

Homebrew formula for Linode CLI
Ruby
14
star
21

provider-linode

Provider Linode is a Crossplane provider for managing Linode Akamai Cloud Computing resources.
Go
12
star
22

packer-plugin-linode

Packer plugin for Linode Builder
Go
10
star
23

k8s-node-decorator

Add labels and annotations to your kubernetes nodes with this in cluster decorator that reads data from the metadata for the underlying linodes
Go
9
star
24

developers

developers-linode-com
JavaScript
8
star
25

linode-doc-template

Template for creating bounty docs for Linode.
6
star
26

kontainer-engine-driver-lke

Kontainer Engine Driver for Rancher Cluster Driver
Go
6
star
27

rancher-ui-driver-linode

UI for Linode options when used as a Rancher Node Template
JavaScript
6
star
28

linode-react-components

React Components consumed by linode/manager and linode/linode-api-docs
JavaScript
6
star
29

linode-k8s-e2e-tests

A collection of end-to-end test for Kubernetes running on Linode
Go
6
star
30

lelastic

elastic IP client
Go
6
star
31

action-linode-cli

A GitHub Action for installing the Linode CLI
5
star
32

linode-cosi-driver

A Kubernetes Container Object Storage Interface (COSI) Driver for Linode
Go
4
star
33

agreements

Linode's Legal Agreements
4
star
34

linode-hugo-theme

JavaScript
4
star
35

manager-design

Design repository for the Linode manager
4
star
36

velero-plugin

Verlero plugin that clones Linode CSI volumes for archival
Go
4
star
37

go-metadata

A Go package for interacting with the Linode Metadata Service.
Go
3
star
38

terraform-linode-dcos

[WORK-IN-PROGRESS] DC/OS Provisioning Terraform module for Linode
HCL
3
star
39

ansible-specdoc

A utility for dynamically generating Ansible Collection documentation.
Python
2
star
40

ui-cluster-driver-lke

UI for Linode options when used as a Rancher Cluster Driver
JavaScript
2
star
41

py-metadata

A Python package for interacting with the Linode Metadata Service.
Python
2
star
42

styles

Linode stylesheets
CSS
2
star
43

lke-sintel-demo

Three manifest Nginx Ingress, Cert Manager, and External DNS demo on Linode Kubernetes Engine
HTML
2
star
44

design-language-system

A repository of our foundational design tokens in various formats help build a cohesive and consistent visual language across digital platforms. Includes color palettes, typography, spacing, layout rules, and more. Provides a pre-built set of tokens for designers and developers to easily implement in their projects, promoting brand identity
TypeScript
2
star
45

ndproxy

Go
2
star
46

dhcpd-unnumbered

Go
2
star
47

arpproxy

Go
2
star
48

docs-scripts

Python
1
star
49

ansible-specdoc-example

An example Ansible Collection using ansible-specdoc.
Python
1
star
50

splunk-addon-linode

Linode Splunk Integration
Python
1
star
51

rad-unnumbered

Go
1
star