exoscale / terraform-provider-exoscale

Terraform Exoscale provider
https://www.terraform.io/docs/providers/exoscale/
Mozilla Public License 2.0
28 stars 24 forks source link
exoscale terraform terraform-provider

Exoscale Terraform Provider

Requirements

Installation

From the Terraform Registry (recommended)

The Exoscale provider is available on the Terraform Registry. To use it, simply execute the terraform init command in a directory containing Terraform configuration files referencing Exoscale provider resources:

terraform init

Output:

Initializing the backend...

Initializing provider plugins...
- Finding exoscale/exoscale versions matching "0.18.2"...
- Installing exoscale/exoscale v0.18.2...
- Installed exoscale/exoscale v0.18.2 (signed by a HashiCorp partner, key ID 8B58C61D4FFE0C86)

...

From Sources

If you prefer to build the plugin from sources, clone the GitHub repository locally and run the command make build from the root of the sources directory. Upon successful compilation, a terraform-provider-exoscale_vdev plugin binary file can be found in the bin/ directory. Then, follow the Terraform documentation on how to install provider plugins.

Usage

The complete and up-to-date documentation for the Exoscale provider is available on the Terraform Registry. Additionally, you can find information on the general Terraform usage on the HashiCorp Terraform website.

Contributing

make GO_TEST_EXTRA_ARGS="-v -run ^TestAccResourceCompute$" test-acc

Development Setup

If you would like to use the terraform provider you have built and try configurations on it as you are developing, then we recommend setting up a dev_override. Create a file named dev.tfrc in the root directory of this repository:

provider_installation {
  dev_overrides {
    "exoscale/exoscale" = "/path/to/the/repository/root/directory"
  }

  direct {}
}

Now export TF_CLI_CONFIG_FILE=$PWD/dev.tfrc in your shell and from now on, whenever you run a terraform command in this shell and the configuration references the exoscale/exoscale provider, it will use the provider you built locally instead of downloading an official release. For this to work you need to make sure you always run go build so that your changes are compiled into a provider binary in the root directory of the repository.