From d1e5880c1247005b0800ebc774aa7b124f7741cd Mon Sep 17 00:00:00 2001 From: Connor Lynch Date: Mon, 30 Sep 2019 13:56:40 -0500 Subject: [PATCH 1/3] Added dynamics and salesforce templates in and also updated the MD --- Dynamics/InRule.Dynamics.Service.json | 221 ++++++++++++++++++ .../InRule.Dynamics.Service.parameters.json | 45 ++++ Dynamics/Register-AzureApp.ps1 | 92 ++++++++ Salesforce/InRule.Salesforce.Service.json | 163 +++++++++++++ .../InRule.Salesforce.Service.parameters.json | 45 ++++ doc/ircatalog-arm-template-deployment.md | 2 +- doc/irserver-arm-template-deployment.md | 2 +- 7 files changed, 568 insertions(+), 2 deletions(-) create mode 100644 Dynamics/InRule.Dynamics.Service.json create mode 100644 Dynamics/InRule.Dynamics.Service.parameters.json create mode 100644 Dynamics/Register-AzureApp.ps1 create mode 100644 Salesforce/InRule.Salesforce.Service.json create mode 100644 Salesforce/InRule.Salesforce.Service.parameters.json diff --git a/Dynamics/InRule.Dynamics.Service.json b/Dynamics/InRule.Dynamics.Service.json new file mode 100644 index 0000000..cce631c --- /dev/null +++ b/Dynamics/InRule.Dynamics.Service.json @@ -0,0 +1,221 @@ +{ + "$schema": "http://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#", + "contentVersion": "1.0.0.0", + "parameters": { + "appServiceName": { + "type": "string" + }, + "relayName": { + "type": "string" + }, + "orgUrl": { + "type": "string", + "defaultValue": "", + "metadata": { + "description": "Organization URL for the Dynamics instance used with the integration framework. This is just the root URL, ex: 'https://contoso.crm.dynamics.com'" + } + }, + "appId": { + "type": "string", + "defaultValue": "", + "metadata": { + "description": "Azure app ID used for S2S authentication" + } + }, + "appSecret": { + "type": "string", + "defaultValue": "", + "metadata": { + "description": "Secret value for app key used for S2S authentication" + } + }, + "crmConnectionString": { + "type": "string", + "defaultValue": "", + "metadata": { + "description": "Connection string for the Dynamics CRM instance used with the integration framework. Refer to this link for more details and formatting: https://docs.microsoft.com/en-us/dynamics365/customer-engagement/developer/xrm-tooling/use-connection-strings-xrm-tooling-connect" + } + }, + "catalogUri": { + "type": "string" + }, + "catalogUser": { + "type": "string" + }, + "catalogPassword": { + "type": "string" + }, + "createAppServicePlan": { + "type": "bool", + "defaultValue": true + }, + "appServicePlanName": { + "type": "string", + "defaultValue": "[concat(parameters('appServiceName'),'Plan')]" + }, + "appServicePlanSkuName": { + "type": "string", + "defaultValue": "B1", + "allowedValues": [ + "F1", + "D1", + "B1", + "B2", + "B3", + "S1", + "S2", + "S3", + "P1", + "P2", + "P3", + "P4" + ], + "metadata": { + "description": "Describes plan's pricing tier and capacity. Check details at https://azure.microsoft.com/en-us/pricing/details/app-service/" + } + }, + "servicePlanResourceGroupName": { + "type": "string", + "defaultValue": "[resourceGroup().name]" + }, + "inRuleVersion": { + "type": "string", + "defaultValue": "5.4.2" + }, + "appInsightsInstrumentationKey": { + "type": "string" + }, + "appInsightsResourceName": { + "type": "string" + }, + "appInsightsLocation": { + "type": "string", + "defaultValue": "[resourceGroup().location]" + }, + "packageUri": { + "type": "string", + "defaultValue": "[concat('https://github.com/InRule/AzureAppServices/releases/download/v', parameters('inRuleVersion'),'/InRule.CRM.WebJob.zip')]" + } + }, + "variables": { + "appServicePlanName": "[if(empty(parameters('appServicePlanName')), concat(parameters('appServiceName'),'Plan'), parameters('appServicePlanName'))]", + "appInsightsResourceName": "[if(empty(parameters('appInsightsResourceName')), concat(parameters('appServiceName'),'Insights'), parameters('appInsightsResourceName'))]" + }, + "resources": [ + { + "condition": "[not(empty(parameters('appInsightsResourceName')))]", + "name": "[variables('appInsightsResourceName')]", + "type": "Microsoft.Insights/components", + "apiVersion": "2015-05-01", + "location": "[parameters('appInsightsLocation')]", + "kind": "web", + "tags": { + "[concat('hidden-link:', resourceGroup().id, '/providers/Microsoft.Web/sites/', parameters('appInsightsResourceName'))]": "Resource" + }, + "properties": { + } + }, + { + "condition": "[parameters('createAppServicePlan')]", + "name": "[variables('appServicePlanName')]", + "type": "Microsoft.Web/serverfarms", + "apiVersion": "2016-09-01", + "location": "[resourceGroup().location]", + "properties": { + "name": "[variables('appServicePlanName')]" + }, + "sku": { + "name": "[parameters('appServicePlanSkuName')]" + } + }, + { + "name": "[parameters('appServiceName')]", + "type": "Microsoft.Web/sites", + "apiVersion": "2016-08-01", + "location": "[resourceGroup().location]", + "dependsOn": [ + "[resourceId(parameters('servicePlanResourceGroupName'), 'Microsoft.Web/serverfarms', variables('appServicePlanName'))]" + ], + "tags": { + "[concat('hidden-related:', resourceId(parameters('servicePlanResourceGroupName'), 'Microsoft.Web/serverfarms', variables('appServicePlanName')))]": "Resource" + }, + "properties": { + "serverFarmId": "[resourceId(parameters('servicePlanResourceGroupName'), 'Microsoft.Web/serverfarms', variables('appServicePlanName'))]", + "siteConfig": { + "AlwaysOn": true, + "use32BitWorkerProcess": false + } + }, + "resources": [ + { + "name": "MSDeploy", + "type": "extensions", + "apiVersion": "2016-08-01", + "dependsOn": [ + "[concat('Microsoft.Web/sites/', parameters('appServiceName'))]" + ], + "properties": { + "packageUri": "[parameters('packageURI')]" + } + }, + { + "name": "appsettings", + "type": "config", + "apiVersion": "2016-08-01", + "dependsOn": [ + "[concat('Microsoft.Web/Sites/', parameters('appServiceName'), '/Extensions/MSDeploy')]", + "[concat('Microsoft.Web/sites/', parameters('appServiceName'))]" + ], + "properties": { + "inrule:crm:catalog:label": "LIVE", + "inrule:crm:catalog:user": "[parameters('catalogUser')]", + "inrule:crm:catalog:password": "[parameters('catalogPassword')]", + "inrule:crm:catalog:sso": "false", + "inrule:crm:catalog:uri": "[parameters('catalogUri')]", + "inrule:crm:catalog:ruleAppDirectory": "C:\\RuleApps", + "inrule:crm:catalog:useInRuleCatalog": "true", + "inrule:crm:serviceBus:key": "[listKeys(resourceId('Microsoft.Relay/namespaces/authorizationRules', parameters('relayName'), 'RootManageSharedAccessKey'), providers('Microsoft.Relay', 'namespaces').apiVersions[0]).primaryKey]", + "inrule:crm:serviceBus:namespace": "[parameters('relayName')]", + "inrule:crm:serviceBus:owner": "RootManageSharedAccessKey", + "inrule:crm:serviceBus:path": "ruleexecution", + "inrule:crm:s2s:azureAppId": "[parameters('appId')]", + "inrule:crm:s2s:azureAppSecret": "[parameters('appSecret')]", + "inrule:crm:s2s:crmOrgUrl": "[parameters('orgUrl')]", + "inrule:repository:licensing:licenseFolder": "D:\\home\\site\\wwwroot", + "inrule:logging:level": "Warn", + "inrule:logging:appInsights:instrumentationKey": "[if(empty(parameters('appInsightsResourceName')), parameters('appInsightsInstrumentationKey'), reference(resourceId('Microsoft.Insights/components', parameters('appInsightsResourceName'))).InstrumentationKey)]" + } + }, + { + "condition": "[not(equals(parameters('crmConnectionString'), ''))]", + "name": "connectionstrings", + "type": "config", + "apiVersion": "2016-08-01", + "dependsOn": [ + "[concat('Microsoft.Web/Sites/', parameters('appServiceName'), '/Extensions/MSDeploy')]", + "[concat('Microsoft.Web/sites/', parameters('appServiceName'))]" + ], + "properties": { + "DynamicsCrm": { + "value": "[parameters('crmConnectionString')]", + "type": "Custom" + } + } + } + ] + }, + { + "name": "[parameters('relayName')]", + "type": "Microsoft.Relay/namespaces", + "apiVersion": "2017-04-01", + "location": "[resourceGroup().location]", + "properties": {} + } + ], + "outputs": { + "relayKey": { + "type": "string", + "value": "[listKeys(resourceId('Microsoft.Relay/namespaces/authorizationRules', parameters('relayName'), 'RootManageSharedAccessKey'), providers('Microsoft.Relay', 'namespaces').apiVersions[0]).primaryKey]" + } + } +} diff --git a/Dynamics/InRule.Dynamics.Service.parameters.json b/Dynamics/InRule.Dynamics.Service.parameters.json new file mode 100644 index 0000000..0754b9f --- /dev/null +++ b/Dynamics/InRule.Dynamics.Service.parameters.json @@ -0,0 +1,45 @@ +{ + "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentParameters.json#", + "contentVersion": "1.0.0.0", + "parameters": { + "appServiceName": { + "value": "" + }, + "relayName": { + "value": "" + }, + "catalogUri": { + "value": "https://{Context}/Service.svc" + }, + "catalogUser": { + "value": "admin" + }, + "catalogPassword": { + "value": "password" + }, + "orgUrl": { + "value": "" + }, + "appId": { + "value": "" + }, + "appSecret": { + "value": "" + }, + "crmConnectionString": { + "value": "" + }, + "appServicePlanName": { + "value": "" + }, + "inRuleVersion": { + "value": "5.4.2" + }, + "appInsightsInstrumentationKey": { + "value": "" + }, + "appInsightsResourceName": { + "value": "" + } + } +} \ No newline at end of file diff --git a/Dynamics/Register-AzureApp.ps1 b/Dynamics/Register-AzureApp.ps1 new file mode 100644 index 0000000..ef69ec4 --- /dev/null +++ b/Dynamics/Register-AzureApp.ps1 @@ -0,0 +1,92 @@ +<# +.SYNOPSIS + Registers an application in Azure AD for authenticating the InRule Integration Framework with Dynamics CRM +.DESCRIPTION + Use this script if you plan on using Server-to-Server authentication with an application user instead of a regular service account for communication from the InRule integration framework to Dynamics CRM. + This script will register an application in Azure AD, and create an authentication key and service principal for access + The app ID and key secret will be output at the end of the script. Please save these values for configuration of the InRule Rule Execution Service later +.PARAMETER Username + Azure AD username for a user with Global Administrator privileges + This is an optional paramter; if not included, interactive login will be used +.PARAMETER Password + Password for the provided username + This is an optional paramter; if not included, interactive login will be used +.PARAMETER TenantId + The Azure AD tenant to create register the app in + This is an optional parameter; if not included, the user's default tenant will be used +.EXAMPLE + .\Register-AzureApp.ps1 -User +.NOTES + This script requires the Azure Active Directory PowerShell module. If it is not yet installed, you can install it by running 'Install-Module AzureAD' at an elevated PowerShell prompt +#> + +param( + [string]$Username, + [string]$Password, + [string]$TenantId +) +[System.Net.ServicePointManager]::SecurityProtocol = [System.Net.SecurityProtocolType]::Tls12 +$erroractionpreference = "Continue" + +$appName = "InRuleDynamicsCrmIntegration" +$appURI = "https://InRuleDynamicsCrmIntegration.azurewebsites.net" + +if ($Username -and $Password) +{ + $securePW = ConvertTo-SecureString -String $Password -AsPlainText -Force + $creds = New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList $Username, $securePw + + if (!$TenantId) + { + Connect-AzureAD -Credential $creds + } + else + { + Connect-AzureAD -Credential $creds -TenantId $TenantId + } +} +else +{ + if (!$TenantId) + { + Connect-AzureAD + } + else + { + Connect-AzureAD -TenantId $TenantId + } +} + +if(!($myApp = Get-AzureADApplication -Filter "DisplayName eq '$($appName)'" -ErrorAction SilentlyContinue)) +{ + $startDate = Get-Date + $endDate = "2099-01-01T13:45:30" + + $myApp = New-AzureADApplication -DisplayName $appName -IdentifierUris $appURI + + $aadAppKeyPwd = New-AzureADApplicationPasswordCredential -ObjectId $myApp.ObjectId -CustomKeyIdentifier "Primary" -StartDate $startDate -EndDate $endDate + + New-AzureADServicePrincipal -AppId $myApp.AppId + + $appDetailsOutput = "Application Details for the $appName application: + ========================================================= + Application Name: $appName + Application Id: $($myApp.AppId) + Secret Key: $($aadAppKeyPwd.Value) + " + Write-Host + Write-Host $appDetailsOutput +} +else +{ + Write-Host + Write-Host -f Yellow Azure AD Application $appName already exists. + + $appDetailsOutput = "Application Details for the $appName application: + ========================================================= + Application Name: $appName + Application Id: $($myApp.AppId) + " + Write-Host + Write-Host $appDetailsOutput +} diff --git a/Salesforce/InRule.Salesforce.Service.json b/Salesforce/InRule.Salesforce.Service.json new file mode 100644 index 0000000..8413a39 --- /dev/null +++ b/Salesforce/InRule.Salesforce.Service.json @@ -0,0 +1,163 @@ +{ + "$schema": "http://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#", + "contentVersion": "1.0.0.0", + "parameters": { + "appServiceName": { + "type": "string" + }, + "sfLoginUrl": { + "type": "string", + "defaultValue": "", + "metadata": { + "description": "Login URL for the Salesforce instance used with the integration framework, ex: 'https://login.salesforce.com/services/oauth2/token'" + } + }, + "sfUsername": { + "type": "string" + }, + "sfPassword": { + "type": "string" + }, + "sfSecurityToken": { + "type": "string" + }, + "sfConsumerKey": { + "type": "string" + }, + "sfConsumerSecret": { + "type": "string" + }, + "catalogUri": { + "type": "string" + }, + "catalogUser": { + "type": "string" + }, + "catalogPassword": { + "type": "string" + }, + "executionServiceBasicUsername": { + "type": "string" + }, + "executionServiceBasicPassword": { + "type": "string" + }, + "executionServiceBasicRealm": { + "type": "string" + }, + "createAppServicePlan": { + "type": "bool", + "defaultValue": true + }, + "appServicePlanName": { + "type": "string", + "defaultValue": "[concat(parameters('appServiceName'),'Plan')]" + }, + "appServicePlanSkuName": { + "type": "string", + "defaultValue": "F1", + "allowedValues": [ + "F1", + "D1", + "B1", + "B2", + "B3", + "S1", + "S2", + "S3", + "P1", + "P2", + "P3", + "P4" + ], + "metadata": { + "description": "Describes plan's pricing tier and capacity. Check details at https://azure.microsoft.com/en-us/pricing/details/app-service/" + } + }, + "servicePlanResourceGroupName": { + "type": "string", + "defaultValue": "[resourceGroup().name]" + }, + "inRuleVersion": { + "type": "string", + "defaultValue": "5.4.2" + }, + "packageUri": { + "type": "string", + "defaultValue": "[concat('https://github.com/InRule/AzureAppServices/releases/download/v', parameters('inRuleVersion'),'/InRule.Salesforce.WebService.zip')]" + } + }, + "variables": {}, + "resources": [ + { + "condition": "[parameters('createAppServicePlan')]", + "name": "[parameters('appServicePlanName')]", + "type": "Microsoft.Web/serverfarms", + "apiVersion": "2016-09-01", + "location": "[resourceGroup().location]", + "properties": { + "name": "[parameters('appServicePlanName')]" + }, + "sku": { + "name": "[parameters('appServicePlanSkuName')]" + } + }, + { + "name": "[parameters('appServiceName')]", + "type": "Microsoft.Web/sites", + "apiVersion": "2016-08-01", + "location": "[resourceGroup().location]", + "dependsOn": [ + "[resourceId(parameters('servicePlanResourceGroupName'), 'Microsoft.Web/serverfarms', parameters('appServicePlanName'))]" + ], + "tags": { + "[concat('hidden-related:', resourceId(parameters('servicePlanResourceGroupName'), 'Microsoft.Web/serverfarms', parameters('appServicePlanName')))]": "Resource" + }, + "properties": { + "serverFarmId": "[resourceId(parameters('servicePlanResourceGroupName'), 'Microsoft.Web/serverfarms', parameters('appServicePlanName'))]" + }, + "resources": [ + { + "name": "MSDeploy", + "type": "extensions", + "apiVersion": "2016-08-01", + "dependsOn": [ + "[concat('Microsoft.Web/sites/', parameters('appServiceName'))]" + ], + "properties": { + "packageUri": "[parameters('packageURI')]" + } + }, + { + "name": "appsettings", + "type": "config", + "apiVersion": "2016-08-01", + "dependsOn": [ + "[concat('Microsoft.Web/Sites/', parameters('appServiceName'), '/Extensions/MSDeploy')]", + "[concat('Microsoft.Web/sites/', parameters('appServiceName'))]" + ], + "properties": { + "inrule:sf:api:loginUrl": "[parameters('sfLoginUrl')]", + "inrule:sf:api:username": "[parameters('sfUsername')]", + "inrule:sf:api:password": "[parameters('sfPassword')]", + "inrule:sf:api:securityToken": "[parameters('sfSecurityToken')]", + "inrule:sf:api:consumerKey": "[parameters('sfConsumerKey')]", + "inrule:sf:api:consumerSecret": "[parameters('sfConsumerSecret')]", + "inrule:sf:catalog:label": "LIVE", + "inrule:sf:catalog:user": "[parameters('catalogUser')]", + "inrule:sf:catalog:password": "[parameters('catalogPassword')]", + "inrule:sf:catalog:sso": "false", + "inrule:sf:catalog:uri": "[parameters('catalogUri')]", + "inrule:sf:catalog:ruleAppDirectory": "C:\\RuleApps", + "inrule:sf:catalog:useInRuleCatalog": "true", + "inrule:sf:ruleService:basicUserName": "[parameters('executionServiceBasicUsername')]", + "inrule:sf:ruleService:basicPwd": "[parameters('executionServiceBasicPassword')]", + "inrule:sf:ruleService:basicRealm": "[parameters('executionServiceBasicRealm')]", + "inrule:repository:licensing:licenseFolder": "D:\\home\\site\\wwwroot", + "inrule:logging:level": "Warn" + } + } + ] + } + ] +} diff --git a/Salesforce/InRule.Salesforce.Service.parameters.json b/Salesforce/InRule.Salesforce.Service.parameters.json new file mode 100644 index 0000000..24c189e --- /dev/null +++ b/Salesforce/InRule.Salesforce.Service.parameters.json @@ -0,0 +1,45 @@ +{ + "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentParameters.json#", + "contentVersion": "1.0.0.0", + "parameters": { + "appServiceName": { + "value": "" + }, + "sfLoginUrl": { + "value": "https://login.salesforce.com/services/oauth2/token" + }, + "sfUsername": { + "value": "" + }, + "sfPassword": { + "value": "" + }, + "sfSecurityToken": { + "value": "" + }, + "sfConsumerKey": { + "value": "" + }, + "sfConsumerSecret": { + "value": "" + }, + "catalogUri": { + "value": "https://{Context}/Service.svc" + }, + "catalogUser": { + "value": "admin" + }, + "catalogPassword": { + "value": "password" + }, + "executionServiceBasicUsername": { + "value": "" + }, + "executionServiceBasicPassword": { + "value": "" + }, + "executionServiceBasicRealm": { + "value": "" + } + } +} \ No newline at end of file diff --git a/doc/ircatalog-arm-template-deployment.md b/doc/ircatalog-arm-template-deployment.md index 21d2d61..33aa27c 100644 --- a/doc/ircatalog-arm-template-deployment.md +++ b/doc/ircatalog-arm-template-deployment.md @@ -4,7 +4,7 @@ In this section we will be deploying the irCatalog® as well as the irCatalog Ma If you have not done so already, please read the [prerequisites](../README.md#prerequisites) before you get started. -The arm template can be downloaded [here](../InRule.Catalog.Service.json) and the parameters file [here](../InRule.Catalog.Service.parameters.json). Both will be needed to continue with this deployment option. +Get the template and parameters file from the `source.zip` here [here](https://github.com/InRule/AzureAppServices/releases). Both will be needed to continue with this deployment option. # Update the template parameters diff --git a/doc/irserver-arm-template-deployment.md b/doc/irserver-arm-template-deployment.md index e2764cb..1c41898 100644 --- a/doc/irserver-arm-template-deployment.md +++ b/doc/irserver-arm-template-deployment.md @@ -4,7 +4,7 @@ In this section we will be deploying the irServer Rule Execution Service. This If you have not done so already, please read the [prerequisites](../README.md#prerequisites) before you get started. -The arm template can be downloaded [here](../InRule.Runtime.Service.json) and the parameters file [here](../InRule.Runtime.Service.parameters.json). Both will be needed to continue with this deployment option. +Get the template and parameters file from the `source.zip` here [here](https://github.com/InRule/AzureAppServices/releases). Both will be needed to continue with this deployment option. # Update the template parameters From e70da631bf085cafb214306601d6065772099eb7 Mon Sep 17 00:00:00 2001 From: Connor Lynch Date: Mon, 30 Sep 2019 15:03:21 -0500 Subject: [PATCH 2/3] Added in the nuespec for building the nuget package for octopus --- Dynamics/InruleCrmAzure.nuspec | 13 +++++++++++++ 1 file changed, 13 insertions(+) create mode 100644 Dynamics/InruleCrmAzure.nuspec diff --git a/Dynamics/InruleCrmAzure.nuspec b/Dynamics/InruleCrmAzure.nuspec new file mode 100644 index 0000000..d6bb20a --- /dev/null +++ b/Dynamics/InruleCrmAzure.nuspec @@ -0,0 +1,13 @@ + + + + 0.00 + InRule Technology, Inc. + InRule.Crm.Azure + InRule.Crm.Azure + This nuget package contains the needed files to deploy the arm template with octopus. + + + + + \ No newline at end of file From ffd76c4ab590e865c92e954ad51f04a1b2c2d9d8 Mon Sep 17 00:00:00 2001 From: Luke Colburn Date: Wed, 23 Oct 2019 20:06:43 -0500 Subject: [PATCH 3/3] 5.4.3 update --- Dynamics/InRule.Dynamics.Service.json | 27 +++---------------- .../InRule.Dynamics.Service.parameters.json | 7 ++--- Salesforce/InRule.Salesforce.Service.json | 2 +- 3 files changed, 6 insertions(+), 30 deletions(-) diff --git a/Dynamics/InRule.Dynamics.Service.json b/Dynamics/InRule.Dynamics.Service.json index cce631c..9ffb16f 100644 --- a/Dynamics/InRule.Dynamics.Service.json +++ b/Dynamics/InRule.Dynamics.Service.json @@ -80,41 +80,20 @@ }, "inRuleVersion": { "type": "string", - "defaultValue": "5.4.2" + "defaultValue": "5.4.3" }, "appInsightsInstrumentationKey": { "type": "string" }, - "appInsightsResourceName": { - "type": "string" - }, - "appInsightsLocation": { - "type": "string", - "defaultValue": "[resourceGroup().location]" - }, "packageUri": { "type": "string", "defaultValue": "[concat('https://github.com/InRule/AzureAppServices/releases/download/v', parameters('inRuleVersion'),'/InRule.CRM.WebJob.zip')]" } }, "variables": { - "appServicePlanName": "[if(empty(parameters('appServicePlanName')), concat(parameters('appServiceName'),'Plan'), parameters('appServicePlanName'))]", - "appInsightsResourceName": "[if(empty(parameters('appInsightsResourceName')), concat(parameters('appServiceName'),'Insights'), parameters('appInsightsResourceName'))]" + "appServicePlanName": "[if(empty(parameters('appServicePlanName')), concat(parameters('appServiceName'),'Plan'), parameters('appServicePlanName'))]" }, "resources": [ - { - "condition": "[not(empty(parameters('appInsightsResourceName')))]", - "name": "[variables('appInsightsResourceName')]", - "type": "Microsoft.Insights/components", - "apiVersion": "2015-05-01", - "location": "[parameters('appInsightsLocation')]", - "kind": "web", - "tags": { - "[concat('hidden-link:', resourceGroup().id, '/providers/Microsoft.Web/sites/', parameters('appInsightsResourceName'))]": "Resource" - }, - "properties": { - } - }, { "condition": "[parameters('createAppServicePlan')]", "name": "[variables('appServicePlanName')]", @@ -183,7 +162,7 @@ "inrule:crm:s2s:crmOrgUrl": "[parameters('orgUrl')]", "inrule:repository:licensing:licenseFolder": "D:\\home\\site\\wwwroot", "inrule:logging:level": "Warn", - "inrule:logging:appInsights:instrumentationKey": "[if(empty(parameters('appInsightsResourceName')), parameters('appInsightsInstrumentationKey'), reference(resourceId('Microsoft.Insights/components', parameters('appInsightsResourceName'))).InstrumentationKey)]" + "inrule:logging:appInsights:instrumentationKey": "[parameters('appInsightsInstrumentationKey')]" } }, { diff --git a/Dynamics/InRule.Dynamics.Service.parameters.json b/Dynamics/InRule.Dynamics.Service.parameters.json index 0754b9f..1b6b0bd 100644 --- a/Dynamics/InRule.Dynamics.Service.parameters.json +++ b/Dynamics/InRule.Dynamics.Service.parameters.json @@ -27,19 +27,16 @@ "value": "" }, "crmConnectionString": { - "value": "" + "value": "" }, "appServicePlanName": { "value": "" }, "inRuleVersion": { - "value": "5.4.2" + "value": "5.4.3" }, "appInsightsInstrumentationKey": { "value": "" - }, - "appInsightsResourceName": { - "value": "" } } } \ No newline at end of file diff --git a/Salesforce/InRule.Salesforce.Service.json b/Salesforce/InRule.Salesforce.Service.json index 8413a39..2e0ff88 100644 --- a/Salesforce/InRule.Salesforce.Service.json +++ b/Salesforce/InRule.Salesforce.Service.json @@ -80,7 +80,7 @@ }, "inRuleVersion": { "type": "string", - "defaultValue": "5.4.2" + "defaultValue": "5.4.3" }, "packageUri": { "type": "string",