Note: this Terraform provider is now publically available on the Terraform Registry.
- Website: https://www.terraform.io
- Mailing list: Google Groups
Clone repository to: $GOPATH/src/github.com/CiscoDevNet/terraform-provider-ciscoasa
$ mkdir -p $GOPATH/src/github.com/terraform-providers; cd $GOPATH/src/github.com/terraform-providers
$ git clone git@github.com:CiscoDevNet/terraform-provider-ciscoasa
Enter the provider directory and build the provider
$ cd $GOPATH/src/github.com/CiscoDevNet/terraform-provider-ciscoasa
$ make build
If you're building the provider, follow the instructions to
install it as a plugin.
After placing it into your plugins directory, run terraform init
to initialize it.
If you wish to work on the provider, you'll first need Go installed
on your machine (version 1.9+ 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-ciscoasa
...
In order to test the provider, you can simply run make test
.
$ make test
In order to run the Acceptance tests:
- Prepare environment with Cisco ASA instance and Rest API installed and configured (check
testinfra
folder for Terraform configs example) - Check/export necessary Environment Variables
- Run
make testinfra-testacc
.
The list of current available Environment Variables:
EnvVar | Default value | Usage |
---|---|---|
CISCOASA_SSLNOVERIFY | true |
Skip SSL verification on connection to Cisco ASA API |
CISCOASA_OBJECT_PREFIX | acc |
Prefix for objects created by tests |
CISCOASA_INTERFACE_NAME | inside |
Named interface which will be used in tests |
CISCOASA_INTERFACE_HW_ID_BASE | TenGigabitEthernet0 |
Base part of Interface Hardware ID |
CISCOASA_INTERFACE_HW_IDS | 1,2 |
Interfaces Hardware ID indexes |
CISCOASA_USERNAME | $(cd testinfra; terraform output asav_username) |
Username for Cisco ASA API |
CISCOASA_PASSWORD | $(cd testinfra; terraform output asav_password) |
Password for Cisco ASA API |
CISCOASA_API_URL | https://$(cd testinfra; terraform output asav_public_ip) |
URL for Cisco ASA API |
$ make testinfra-testacc
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