- Website: https://www.terraform.io
- Mailing list: Google Groups
Clone repository to: $GOPATH/src/github.com/IBM-Cloud/terraform-provider-ibm
mkdir -p $GOPATH/src/github.com/IBM-Cloud; cd $GOPATH/src/github.com/IBM-Cloud
git clone git@github.com:IBM-Cloud/terraform-provider-ibm.git
Enter the provider directory and build the provider
cd $GOPATH/src/github.com/IBM-Cloud/terraform-provider-ibm
make build
You can also pull the docker image for the ibmcloud terraform provider :
docker pull ibmterraform/terraform-provider-ibm-docker
If you want to run Terraform with the IBM Cloud provider plugin on your system, complete the following steps:
-
Unzip the release archive to extract the plugin binary (
terraform-provider-ibm_vX.Y.Z
). -
Move the binary into the Terraform plugins directory for the platform.
- Linux/Unix/OS X:
~/.terraform.d/plugins
- Windows:
%APPDATA%\terraform.d\plugins
- Linux/Unix/OS X:
-
Export API credential tokens as environment variables. This can either be IBM Cloud API keys or Softlayer API keys and usernames, depending on the resources you are provisioning.
export IC_API_KEY="IBM Cloud API Key"
export SL_API_KEY="SoftLayer API Key"
export SL_USERNAME="SoftLayer username associated with SL_API_KEY".
- Add the plug-in provider to the Terraform configuration file.
provider "ibm" {}
See the official documentation for more details on using the IBM provider.
If you wish to work on the provider, you'll first need Go installed on your machine (version 1.8+ 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 build
...
$GOPATH/bin/terraform-provider-ibm
...
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
In order to run a particular Acceptance test, export the variable TESTARGS
. For example
export TESTARGS="-run TestAccIBMNetworkVlan_Basic"
Issuing make testacc
will now run the testcase with names matching TestAccIBMNetworkVlan_Basic
. This particular testcase is present in
ibm/resource_ibm_network_vlan_test.go
You will also need to export the following environment variables for running the Acceptance tests.
IC_API_KEY
- The IBM Cloud API KeySL_API_KEY
- The SoftLayer API KeySL_USERNAME
- The SoftLayer username associated with the SoftLayer API Key.
Additional environment variables may be required depending on the tests being run. Check console log for warning messages about required variables.