Azure Plugin

Integrate Porter with Azure Cloud.

Source: https://github.com/getporter/azure-plugins

Install or Upgrade

porter plugin install azure

Plugin Configuration

Secrets

Secrets plugins allow Porter to store and resolve sensitive bundle data.

For example, to resolve a database password, if your team has a shared key vault that has the password stored in it, you can use the keyvault plugin to inject it as a credential when you install a bundle. Another usecase is to store any sensitive bundle parameters and outputs. For example, if a bundle depends on a redis bundle to generate a database connection string as an output, the connection string will be securely stored in the key vault.

Key Vault

The azure.keyvault plugin resolves credentials against secrets in Azure Key Vault.

  1. Open, or create, ~/.porter/config.toml

  2. Add the following lines to activate the Azure keyvault secrets plugin:

    default-secrets = "mysecrets"
       
    [[secrets]]
    name = "mysecrets"
    plugin = "azure.keyvault"
       
    [secrets.config]
    vault = "myvault"
    
  3. Create a key vault and set the vault name in the config with name of the vault.

  4. Create a service principal and create an Access Policy on the vault giving Get and List secret permissions.

  5. Using credentials for the service principal set the environment variables: AZURE_TENANT_ID,AZURE_CLIENT_ID, and AZURE_CLIENT_SECRET.