Azure functions Plugin

The plugin provides functionality to interact with Azure Functions

Installation

Example 1. build.gradle
implementation(group: 'org.vividus', name: 'vividus-plugin-azure-functions', version: '0.4.8')

Configuration

Authentication

The authentication process relies on the configuration of the environment variables.

See the official "Azure identity" guide to get more details on what types of authentication could be used.

Azure environment selection

Azure environment could be optionally specified using either global property azure.environment (sets the environment for all Azure plugins) or plugin-specific property azure.functions.environment. The plugin-specific property takes precedence over the global one. The default value is AZURE.

The plugin-specific property azure.functions.environment is deprecated and will be removed in VIVIDUS 0.5.0. The global property must be used.

The supported environments are only:

  • AZURE

  • AZURE_CHINA

  • AZURE_GERMANY

  • AZURE_US_GOVERNMENT

Azure subscription selection

Azure subscription must be configured via AZURE_SUBSCRIPTION_ID environment variable.

Steps

Function triggering

Triggers a function

When I trigger function `$functionName` from function app `$functionAppName` in resource group `$resourceGroup` with payload:$payload and save response into $scopes variable `$variableNames`
  • $functionName - The name of the function to trigger

  • $functionAppName - The name of the function app

  • $resourceGroup - The resource group function relates to

  • $payload - The JSON payload to send to a function (could be empty)

  • $scopes - The comma-separated set of the variables scopes.

  • $variableName - The variable name to store results in JSON format. If the variable name is my-var, the following variables will be created:

    • ${my-var.body} - The response body

    • ${my-var.status-code} - The HTTP status code

    • ${my-var.headers} - The response headers

    • ${my-var.url} - The request URL

Example 2. Trigger function
When I trigger function `HttpTrigger1` from function app `vivdus-http-function` in resource group `vividus` with payload:
and save response into scenario variable `functionTrigger`
Then `${functionTrigger.status-code}` is equal to `202`