This task deploys an Azure Resource Manager deployment using a provided template.
3.1K
This Azure Resource Manager step container deploys an Azure Resource Manager deployment using a provided template.
Before you use this workflow, upload your Azure Resource Manager template to a directory in your repository. For more information, see Azure Resource Manager templates.
| Setting | Child setting | Data type | Description | Default | Required |
|---|---|---|---|---|---|
azure | mapping | A mapping of your Azure account configuration. | None | True | |
tenantID | string | The tenant ID for the Service Principal. | None | True | |
username | string | The URI name of the Service Principal. | None | True | |
password | string | The Service Principal password. Pass the string into Nebula as a secret. See the example below. | None | If azure.cert is not present | |
cert | string | The Azure Service Principal PEM certificate block. Encode the certificate using base64 encoding and pass the it into Nebula as a secret. See the example below. | None | if azure.password is not present | |
deploymentName | string | The name of the deployment to create or update. | None | True | |
resourceGroup | string | A resource group name to deploy to, if any. Will perform a resource-group deployment. | None | If location is not present | |
location | string | A location to deploy to, if any. Will perform a subscription deployment. | None | If resourceGroup is not present | |
template | string | The body of the ARM template as a string in JSON. | None | If templateFile is not present | |
templateFile | string | The relative path, within the Git repository given in the git parameters, to the template file to deploy. | None | If template is not present | |
git | mapping | A map of git configuration. If you're using HTTPS, only name and repository are required. | None | If templateFile is present | |
ssh_key | string | The SSH key to use when cloning the git repository. You can pass the key to Nebula as a secret. See the example below. | None | True | |
known_hosts | string | SSH known hosts file. Use a Nebula secret to pass the contents of the file into the workflow as a base64-encoded string. See the example below. | None | True | |
name | string | A directory name for the git clone. | None | True | |
branch | string | The Git branch to clone. | master | False | |
repository | string | The git repository URL. | None | True | |
parameters | mapping | A key-value mapping of parameters needed by the template. | None | False |
Note: The value you set for a secret must be a string. If you have multiple key-value pairs to pass into the secret, or your secret is the contents of a file, you must encode the values using base64 encoding, and use the encoded string as the secret value.
Here is an example of the step in a Nebula workflow:
steps:
...
- name: azureresourcemanager-deployer
image: projectnebula/azureresourcemanager-deployer:latest
spec:
azure:
tenantID: 12345678-1234-1234-1234-123456789012
username: http://my-username
password:
$type: Secret
name: password
cert:
$type: Secret
name: cert
deploymentName: my-deployment
location: westus2
templateFile: templates/my-deployment.json
git:
ssh_key:
$type: Secret
name: ssh_key
known_hosts:
$type: Secret
name: known_hosts
name: my-git-repo
branch: dev
repository: path/to/your/repo
parameters:
first: example-1
second: example-2
Content type
Image
Digest
Size
121.7 MB
Last updated
over 6 years ago
docker pull projectnebula/azureresourcemanager-deployer