WARNING: This is a work in progress. These modules require (not yet released) Terraform 0.12. For the moment, these modules remains EXPERIMENTAL.
General modules:
- provisioning-phase - A helper module that simplifies infrastructure provisioning in multiple phases (or steps).
- resource-name - Manages an Azure resource name
Azure Resource Group modules:
- resource-group - Manages an Azure Resource Group. Preserves existing tags.
- resource-group/lookup - Looks up the Azure Resource Group.
- resource-group/name - Manages an Azure Resource Group name
- resource-group/tag - Manages the Azure Resource Group tags.
Azure Networking modules:
- network - Manages an Azure Virtual Network.
- network/app-security-group - Manages an Azure Application Security Group.
- network/name - Manages an Azure Virtual Network name.
- network/route - Manages an Azure Route Table entries.
- network/route-table - Manages an Azure Route Table.
- network/security-group - Manages an Azure Network Security Group.
- network/security-rule - Manages an Azure Network Security Rules.
- network/subnet - Manages an Azure Network Subnet.
- Azure enterprise scaffold: Prescriptive subscription governance
- Tagging Best Practices for Cloud Governance and Cost Management
Issues can be reported by using GitHub Issues. Full details on how to report issues can be found in the Contribution Guidelines.
Please read the Contribution Guidelines, and ensure you are signing all your commits with DCO sign-off.
Clone the GitHub repository into your working directory:
git clone https://github.com/sicz/terraform-azure
cd terraform-azure
Here is how to install Terraform 0.12.0-alpha version.
On Apple macOS, install the Homebrew package manager and the following packages:
brew install azure-cli
brew install jq
brew install pre-commit
brew install terraform
brew install terraform-docs
On other platforms, install the appropriate packages.
Initialize Git pre-commit hooks:
make init
Set up Terraform access to Azure.
In the root directory, use the following commands:
make init # Initialize Git hooks
make pre-commit # Run Git pre-commit checks manually
In the module's test directories, use the following commands:
make init # Init Terraform
make plan # Show Terraform plan
make apply # Create resources in Azure
make output # Show Terraform output variables
make destroy # Destroy resources in Azure
make forget # Remove Terraform state file
make clean # Remove all generated files
- Petr Řehoř - Initial work.
See also the list of contributors who have participated in this project.
This project is licensed under the Apache License, Version 2.0 - see the LICENSE file for details.