New-CmAzPaasFunction

Create Azure fuctions

Completes following: * Creates App service plan * Creates Consumption type app service plan (serverless)

  • Creates function on service plans
  • Optional App insights

This command forms part of the PaaS Building Block.

Parameters

-SettingsFile

Required. (String) File path for the settings file to be converted into a settings object.

-SettingsObject

Required. (Object) Object containing the configuration values required to run this cmdlet.

-TagSettingsFile

Required. (String) File path for the tag settings file to be converted into a tag settings object.

-OmitTags

Required. (SwitchParameter) Parameter to specify if the cmdlet should handle its own tagging.

-WhatIf

(Switch) Run the command without executing any actions, so that no changes are made. The command will output a description of actions to be performed against the affected resources in the console window. Use this option if you are unsure of the overall impact of your command and wish to review it before committing to making changes.

-Confirm

(Switch) Run the command without executing any actions, so that no changes are made. The command will output a description of actions to be performed against the affected resources in the console window. Use this option if you are unsure of the overall impact of your command and wish to review it before committing to making changes.

Usage

Example 1

1
New-CmAzPaasFunction -SettingsFile ./functions.yml

Example 2

1
New-CmAzPaasFunction -SettingsObject $settings

Example 3

1
New-CmAzPaasFunction -SettingsObject $settings -TagSettingFile ./tag.yml

Settings

Beta documentation
The following schema documentation is automatically generated as part of a recent roadmap task. There may be inaccuracies or incomplete information while we flush out bugs; please refer to the packed project settings examples where necessary.

Settings Root.

Component

component [string]

Value to determine what cmdlet should be dynamically loaded for these settings.

Service

service [object | null]

Contains dependency and publish details for service location.

Publish

publish [object | null]

Contains publish details for service location.

ResourceGroup

resourceGroup [string | null]

Global default value to publish on deployed resource type.

AppServicePlan

appServicePlan [string | null]

Global default value to publish on deployed resource type.

Function

function [string | null]

Global default value to publish on deployed resource type.

PrivateEndpoint

privateEndpoint [string | null]

Global default value to publish on deployed resource type.

Dependencies

dependencies [object | null]

Contains dependency details for service location.

AppInsights

appInsights [string | null]

Global default dependency value to fetch existing resource type.

storage

storage [string | null]

Global default dependency value to fetch existing resource type.

Vnet

vnet [string | null]

Global default dependency value to fetch existing resource type.

PrivateZones

privateZones [array | null]

Dependency value to fetch existing resource type. Enables private zone integration.

FunctionAppSolutions

functionAppSolutions [array] Mandatory

List of details required to deploy all resource groups, app service plans and functions.

Examples

The following example files are automatically generated from the settings file schema definition to show how the specification can be used in practise. Cloudmarque can accept both JSON and YAML parameter files.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
{
  "component": "string",
  "service": {
    "publish": {
      "resourceGroup": "string",
      "appServicePlan": "string",
      "function": "string",
      "privateEndpoint": "string"
    },
    "dependencies": {
      "appInsights": "string",
      "storage": "string",
      "vnet": "string",
      "privateZones": [

      ]
    }
  },
  "functionAppSolutions": [

  ]
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
component: "string"    # Optional
service:     # Optional
  publish:     # Optional
    resourceGroup: "string"    # Optional
    appServicePlan: "string"    # Optional
    function: "string"    # Optional
    privateEndpoint: "string"    # Optional
  dependencies:     # Optional
    appInsights: "string"    # Optional
    storage: "string"    # Optional
    vnet: "string"    # Optional
    privateZones:     # Optional
      - functionAppSolutions:     # Mandatory
  -