Skip to content
[DEPRECATED] This repo has been deprecated and please access https://github.com/terraform-providers/terraform-provider-alicloud
Go HTML Other
Branch: master
Clone or download
Latest commit 4a9a59e Nov 18, 2018
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
alicloud Improve datahub_project sweeper test Oct 21, 2018
examples
scripts update travis (#73) Jan 23, 2017
vendor Add new resource slb_acl Oct 18, 2018
website Fix reources' id description bugs Oct 19, 2018
.gitignore Publish Release 1.9.4 (#494) Jun 8, 2018
.travis.yml
AUTHORS update AUTHOR info Apr 5, 2017
CHANGELOG.md
LICENSE base commit Dec 1, 2016
Makefile Internationalize tests (#609) Aug 16, 2018
README.md Update README.md Nov 18, 2018
README_zh.md Update README_zh.md Nov 18, 2018
alicloud.tf
glide.yaml Remove terraform/example May 2, 2018
main.go update vpc cluster template Dec 1, 2016

README.md

[NOTES]: This repo has been deprecated and please refer to the latest repo: https://github.com/terraform-providers/terraform-provider-alicloud

Alicloud (Alibaba Cloud) Terraform provider

This is the official repository of the Alicloud Terraform provider. It currently supports Terraform version ≥ v0.8.2.

If you are not planning to contribute to this repo, you can download the compiled binaries from https://github.com/alibaba/terraform-provider/releases and move the binaries (bin/terraform-provider-alicloud) into the folder under the Terraform PATH such as /usr/local/terraform.

Alternatively, the provider can be installed as described in the developer notes.
This way you will be able to sync the repo as active development is going on.

-> Note: When you use Terraform on a Windows computer, please install golang first, otherwise you might get this issue (the bug appeared in the version 1.8.1 and was fixed in the version 1.11.0).

Example

Example modules can be found in the terraform/examples directory.

Developer notes

Setting up

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

# switch to project
cd $GOPATH/src/github.com/alibaba/terraform-provider

# build provider

## Mac
make dev
## Linux
make devlinux
## Windows
make devwin

# install modules
terraform get

# set the creds
export ALICLOUD_ACCESS_KEY="***"
export ALICLOUD_SECRET_KEY="***"
export ALICLOUD_REGION="***"
export ALICLOUD_ACCOUNT_ID="***"

# you're good to start rocking
# alicloud.tf contains the default example
terraform plan
# terraform apply
# terraform destroy

Regions

cn-qingdao
cn-beijing
cn-zhangjiakou
cn-huhehaote
cn-hangzhou
cn-shanghai
cn-shenzhen
cn-hongkong

ap-northeast-1
ap-southeast-1
ap-southeast-2
ap-southeast-3
ap-southeast-5
ap-south-1

us-east-1
us-west-1

me-east-1

eu-central-1

For more information about the regions and availability zones, please use the data sources alicloud_regions and alicloud_zones.

Supported products

Documents

The most recent documentation is available here:

Acceptance Testing

Before making a release, the resources and data sources are tested automatically with acceptance tests (the tests are located in the alicloud/*_test.go files). You can run them by entering the following instructions in a terminal:

cd $GOPATH/src/github.com/alibaba/terraform-provider
export ALICLOUD_ACCESS_KEY=xxx
export ALICLOUD_SECRET_KEY=xxx
export ALICLOUD_REGION=xxx
export ALICLOUD_ACCOUNT_ID=xxx
export outfile=gotest.out
TF_ACC=1 TF_LOG=INFO go test ./alicloud -v -run=TestAccAlicloud -timeout=1440m | tee $outfile
go2xunit -input $outfile -output $GOPATH/tests.xml

-> Note: The last line is optional, it allows to convert test results into a XML format compatible with xUnit.

Because some features are not available in all regions, the following environment variables can be set in order to skip tests that use these features:

  • ALICLOUD_SKIP_TESTS_FOR_SLB_SPECIFICATION=true - Server Load Balancer with guaranteed performance specifications (old implementation has only shared performance)
  • ALICLOUD_SKIP_TESTS_FOR_SLB_PAY_BY_BANDWIDTH=true - Server Load Balancer with a "pay by bandwidth" billing method (mostly available in China)
  • ALICLOUD_SKIP_TESTS_FOR_FUNCTION_COMPUTE=true - Function Compute
  • ALICLOUD_SKIP_TESTS_FOR_PVTZ_ZONE=true - Private Zone
  • ALICLOUD_SKIP_TESTS_FOR_RDS_MULTIAZ=true - Apsara RDS with multiple availability zones
  • ALICLOUD_SKIP_TESTS_FOR_CLASSIC_NETWORK=true - Classic network configuration

Common problems

Error configuring: 1 error(s) occurred:
* Incompatible API version with plugin. Plugin version: 2, Ours: 1

# fix by manually setting the branch in the sources
cd src/github.com/hashicorp/terraform/
git checkout v<YOUR_TF_VERSION_HERE>
cd -

# rebuild
sudo -E "PATH=$PATH" make all

How to contribute

  • If you are not sure or have any doubt, feel free to ask and/or submit an issue or PR. We appreciate all contributions and try to make the process as smooth as possible.
  • Contributions are welcome and will be merged via PRs.

Contributors

License

  • This project is licensed under the Apache License, Version 2.0. See LICENSE for the full license text.

Reference

You can’t perform that action at this time.