0
votes

What does the $ symbol mean in ARM template or is there a significance of the symbol? I cant find a reference of it, but I found it on the export template file for the logic Apps:

                "parameters": {
                "$connections": {
                    "value": {
                        "azureblob": {
                            "connectionId": "[parameters('value1')]",
                            "connectionName": "connectionName",
                            "id": "/subscriptions/xxxxx-xxx-xxx-xxxx-e96113994f0a/providers/Microsoft.Web/locations/westeurope/managedApis/azureblob"
                        },
                        "sql": {
                            "connectionId": "[parameters('connections_sql_externalid')]",
                            "connectionName": "sql",
                            "id": "/subscriptions/xxxxxx-xxx-xxxx-xxxx-e96113994f0a/providers/Microsoft.Web/locations/westeurope/managedApis/sql"
                        },
                        "sftp": {
                            "connectionId": "[parameters('connections_sftpName_externalid')]",
                            "connectionName": "sftpName",
                            "id": "/subscriptions/xxxxxxx-xxxx-xxxx-xxxx-e96113994f0a/providers/Microsoft.Web/locations/westeurope/managedApis/sftpwithssh"
                        }
                    }
                }
1

1 Answers

1
votes

The $ is used to declare a parameter in a specific case.

For example, the $connections parameter here in your case is for the connection values to use at logic app runtime. In the ARM template of your logic app, logic app's resource definition also works with connection resource definitions in these ways:

  • Inside your workflow definition, the parameters object declares a $connections parameter for the connection values to use at logic app runtime. Also, the trigger or action that creates a connection uses the corresponding values that pass through this $connections parameter.
  • Outside your workflow definition but still inside your logic app's resource definition, another parameters object sets the values to use at runtime for the $connections parameter by referencing the corresponding template parameters. These values use template expressions to reference resources that securely store the metadata for the connections in your logic app.

For more details, you can refer to this article Connection resource definitions.