Azure Keys Integration

JFrog Pipelines Documentation

ft:sourceType
Paligo

The Microsoft Azure Integration is used to connect JFrog Pipelines to Microsoft Azure to manage cloud services and entities.

This integration uses a password-based authentication service principal for connecting to and commanding your Azure cloud service. You must create an Azure service principal for this purpose, and provide the generated keys to this integration.

For example, using the Azure CLI service principal creation function:

az ad sp create-for-rbac --role="Contributor" --scopes="/subscriptions/SUBSCRIPTION_ID"

will produce the needed key values:

image2020-7-22_14-48-21.png

Creating an Azure Keys Integration

You can add this integration by following steps on the Managing Pipelines Integrations page.

Here is the information you need to create this integration:

  • Name -- choose a friendly name for the integration

  • App Id -- the appId key used for service principal authentication.

  • Password -- the password key used for service principal authentication.

  • Tenant -- the tenant key used for service principal authentication.

Usage

An Azure Keys integration can be used in Bash steps for access to its properties through environment variables. This integraton cannot currently be used with any resources.

Make sure that your service principal has adequate permission to perform whatever actions you plan to take in your custom script. This could mean ACR reader role to pull images, AKS contributor to create deployments, etc.

Required for Dynamic Nodes

In order for Pipelines to run dynamic node pools on Azure, you will need to accept Azure Marketplace image terms so that the JFrog Pipelines buildplane VM images can be used. The following Azure CLI commands must be run with the Azure service principal used by this integration:

az vm image terms accept --plan x86_64-ubuntu_16_04 --offer pipelines-buildplane --publisher jfrog
az vm image terms accept --plan x86_64-ubuntu_18_04 --offer pipelines-buildplane --publisher jfrog
az vm image terms accept --plan x86_64-centos_7 --offer pipelines-buildplane --publisher jfrog
az vm image terms accept --plan x86_64-windows_server_2019 --offer pipelines-buildplane --publisher jfrog

Default Environment Variables

When you create a resource with this integration, a set of environment variables is automatically made available.

Environment variable

Description

int_<integration-name>_appId

AppId supplied in the integration

int_<integration-name>_password

Password supplied in the integration

int_<integration-name>_tenant

Tenant supplied in the integration