
π Links
π Table of Contents
β
Requirements
π Migration to v1
β οΈ Warning: Always backup your state file before migrating!
See MIGRATION GUIDE for full instructions.
Migration Steps
Step 1: Upgrade provider version
terraform {
required_providers {
outscale = {
source = "outscale/outscale"
version = "1.3.1"
}
}
}
provider "outscale" {
# Configuration
}
terraform init -upgrade
Step 2: Clean up state & configuration
Linux
sed -i 's/outscale_volumes_link/outscale_volume_link/g' terraform.tfstate
# + Other sed commands
macOS
sed -i='' 's/outscale_volumes_link/outscale_volume_link/g' terraform.tfstate
# + Other sed commands
Step 3: Refresh
terraform refresh
π₯ Breaking Changes
β οΈ Important:
There is a breaking change when creating an access_key without expiration date in versions < v0.9.0.
See Issue #342.
π Using the Provider
terraform {
required_providers {
outscale = {
source = "outscale/outscale"
version = "1.3.1"
}
}
}
provider "outscale" {
# Configuration options
}
terraform init
terraform plan
With OpenTofu
terraform {
required_providers {
outscale = {
source = "outscale/outscale"
version = "1.3.1"
}
}
}
provider "outscale" {
# Configuration options
}
tofu init
tofu plan
π See OpenTofu migration guide.
π Proxy Configuration
Linux/macOS
export HTTPS_PROXY=http://192.168.1.24:3128
Windows
set HTTPS_PROXY=http://192.168.1.24:3128
π x509 Authentication
Add to your provider config:
provider "outscale" {
x509_cert_path = "/myrepository/certificate/client_ca.crt"
x509_key_path = "/myrepository/certificate/client_ca.key"
}
Or set environment variables:
export OUTSCALE_X509CERT=/myrepository/certificate/client_ca.crt
export OUTSCALE_X509KEY=/myrepository/certificate/client_ca.key
π Building the Provider
Clone and build:
git clone --branch v1.3.1 https://github.com/outscale/terraform-provider-outscale
cd terraform-provider-outscale
go build -o terraform-provider-outscale_v1.3.1
π¦ Using the Built Provider
After building the provider manually, install it locally depending on your platform and tooling:
On Linux
1. Download and install [Terraform](https://www.terraform.io/downloads.html).
- Move the plugin to the repository:
mkdir -p terraform.d/plugins/registry.terraform.io/outscale/outscale/1.3.1/linux_amd64
mv terraform-provider-outscale_v1.3.1 terraform.d/plugins/registry.terraform.io/outscale/outscale/1.3.1/linux_amd64/
- Initialize Terraform:
terraform init
- Plan your Terraform configuration:
terraform plan
On macOS
1. Download and install [Terraform](https://www.terraform.io/downloads.html).
- Move the plugin to the repository:
mkdir -p terraform.d/plugins/registry.terraform.io/outscale/outscale/1.3.1/darwin_arm64
mv terraform-provider-outscale_v1.3.1 terraform.d/plugins/registry.terraform.io/outscale/outscale/1.3.1/darwin_arm64/
- Initialize Terraform:
terraform init
- Plan your Terraform configuration:
terraform plan
For OpenTofu
On Linux
1. Download and install [OpenTofu](https://opentofu.org/docs/intro/install/deb/).
- Move the plugin to the repository:
mkdir -p terraform.d/plugins/registry.opentofu.org/outscale/outscale/1.3.1/linux_amd64
mv terraform-provider-outscale_v1.3.1 terraform.d/plugins/registry.opentofu.org/outscale/outscale/1.3.1/linux_amd64/
- Initialize OpenTofu:
tofu init
- Plan your configuration:
tofu plan
On macOS
1. Download and install [OpenTofu](https://opentofu.org/docs/intro/install/homebrew/).
- Move the plugin to the repository:
mkdir -p terraform.d/plugins/registry.opentofu.org/outscale/outscale/1.3.1/darwin_arm64
mv terraform-provider-outscale_v1.3.1 terraform.d/plugins/registry.opentofu.org/outscale/outscale/1.3.1/darwin_arm64/
- Initialize OpenTofu:
tofu init
- Plan your configuration:
tofu plan
π€ Contributing
See CONTRIBUTING.md.
π Building the Documentation
Requirements:
make doc