This tool prepares an Octopus space to allow space level resources and projects to serialized to a Terraform module and reapply them in another space.
View the docs here.
The default values used by the wizard are defined in environment variables:
OCTOTERRAWIZ_SOURCE_SERVER
: The URL of the Octopus server to export fromOCTOTERRAWIZ_SOURCE_API_KEY
: The API key to use to connect to the source serverOCTOTERRAWIZ_SOURCE_SPACE_ID
: The ID of the space to exportOCTOTERRAWIZ_DESTINATION_SERVER
: The URL of the Octopus server to import toOCTOTERRAWIZ_DESTINATION_API_KEY
: The API key to use to connect to the destination serverOCTOTERRAWIZ_DESTINATION_SPACE_ID
: The ID of the space to import toOCTOTERRAWIZ_BACKEND_TYPE
: EitherAWS S3
orAzure Storage
AWS_ACCESS_KEY_ID
: AWS environment variableAWS_SECRET_ACCESS_KEY
: AWS environment variableAWS_DEFAULT_REGION
: AWS environment variableAWS_DEFAULT_BUCKET
: The name of the S3 bucket holding the Terraform stateOCTOTERRAWIZ_PROMPT_FOR_DELETE
: If set totrue
, the tool will prompt for confirmation before deleting resourcesOCTOTERRAWIZ_USE_CONTAINER_IMAGES
: If set totrue
, the tool will use container images to run Terraform stepsOCTOTERRAWIZ_AZURE_RESOURCE_GROUP
: The name of the Azure resource group holding the Terraform stateOCTOTERRAWIZ_AZURE_STORAGE_ACCOUNT
: The name of the Azure storage account holding the Terraform stateOCTOTERRAWIZ_AZURE_CONTAINER
: The name of the Azure storage container holding the Terraform stateAZURE_SUBSCRIPTION_ID
: Azure environment variableAZURE_TENANT_ID
: Azure environment variableAZURE_CLIENT_ID
: Azure environment variableAZURE_CLIENT_SECRET
: Azure environment variableOCTOTERRAWIZ_EXCLUDE_ALL_LIBRARY_VARIABLE_SETS
: If set totrue
, the tool will exclude all library variable sets from the export
These permissions allow you to use the Azure Storage Account as a Terraform backend. They may not be the most restrictive permissions, but they have been tested.
Give you app:
- Reader access to the resource group
- Reader and Data Access to the storage account
- Storage Blob Data Contributor to the container