Hello,
I've been trying to update my ARM Template to deploy DevOps Project with the new ARM Template Reference:
https://docs.microsoft.com/en-us/azure/templates/microsoft.devops/2019-07-01-preview/pipelines
The idea is to create a new DevOps Organization, create a new project and fire up the demo pipeline.
My ARM Template looks like :
"resources": [
{
"type": "microsoft.visualstudio/account",
"name": "[parameters('accountName')]",
"apiVersion": "2014-02-26",
"location": "[parameters('location')]",
"properties": {
"operationType": "Create",
"accountName": "[parameters('accountName')]"
}
},
{
"type": "Microsoft.DevOps/pipelines",
"apiVersion": "2019-07-01-preview",
"name": "[parameters('projectName')]",
"location": "[parameters('location')]",
"properties": {
"organization": {
"name": "[parameters('accountName')]"
},
"project": {
"name": "[parameters('projectName')]"
},
"bootstrapConfiguration": {
"template": {
"id": "ms.vss-continuous-delivery-pipeline-templates.aspnetcore-webapponcontainers",
"parameters": {
"resourceGroup": "[parameters('targetResourceGroupName')]",
"appInsightLocation": "[parameters('appInsightsLocation')]",
"subscriptionId": "[variables('subscriptionId')]",
"webAppName": "projectdotnet",
"location": "[parameters('targetResourceGroupLocation')]",
"appServicePlan": "S1 Standard",
"containerRegistryName": "[variables('acrName')]",
"containerRegistrySKU": "[parameters('acrSku')]",
"containerRegistryLocation": "[parameters('acrlocation')]",
"azureAuth": "[parameters('azureAuth')]"
}
},
"repository": null
}
},
"dependsOn": [
"[concat('microsoft.visualstudio/account/', parameters('accountName'))]"
]
}
]
I'm getting an error which brings two questions:
- azureAuth parameter:
The way Bishal refers to it is
"azureAuth": {
"value": "{"scheme":"ServicePrincipal","parameters":{"tenantid":"XXXXXX-XXXX-XXXX-XXXX-XXXXXXXXX","objectid":"XXXXXX-XXXX-XXXX-XXXX-XXXXXXXXX","serviceprincipalid":"XXXXXX-XXXX-XXXX-XXXX-XXXXXXXXX","serviceprincipalkey":"password"}}"
}
Is it still valid? As app registration evolved, it seems that objectid is now id.
Which one is the correct writing?
- The error I get now is:
{"code":"DeploymentFailed","message":"At least one resource deployment operation failed. Please list deployment operations for details. Please see https://aka.ms/arm-debug for usage details.","details":[{"code":"NotFound","message":"{\r\n "code": "ProjectNotFoundWithId",\r\n "message": "Failed to create Azure Pipeline 'williamtestproj'. More details: 'Configuration failed at step: 'Creating assets'. More details: Invalid property identifier character: \\. Path '', line 1, position 1..'. ",\r\n "target": "GetAzurePipelineOperation"\r\n}"}]}
The DevOps org gets creates, the project gets created, but the Service Connection doesn't happen. And the pipeline doesn't create.
I thought at first it was related to the azureAuth, but I'm now confused.
I also tried to use the way Bishal was refering to it in the wiki, using the nested pipeline bootstrapconfigurations but I ended up with the same issue (except for the target name that is not the same).
any idea? that would be quite helpful!
Thanks,
William
Hello,
I've been trying to update my ARM Template to deploy DevOps Project with the new ARM Template Reference:
https://docs.microsoft.com/en-us/azure/templates/microsoft.devops/2019-07-01-preview/pipelines
The idea is to create a new DevOps Organization, create a new project and fire up the demo pipeline.
My ARM Template looks like :
"resources": [
{
"type": "microsoft.visualstudio/account",
"name": "[parameters('accountName')]",
"apiVersion": "2014-02-26",
"location": "[parameters('location')]",
"properties": {
"operationType": "Create",
"accountName": "[parameters('accountName')]"
}
},
{
"type": "Microsoft.DevOps/pipelines",
"apiVersion": "2019-07-01-preview",
"name": "[parameters('projectName')]",
"location": "[parameters('location')]",
"properties": {
"organization": {
"name": "[parameters('accountName')]"
},
"project": {
"name": "[parameters('projectName')]"
},
"bootstrapConfiguration": {
"template": {
"id": "ms.vss-continuous-delivery-pipeline-templates.aspnetcore-webapponcontainers",
"parameters": {
"resourceGroup": "[parameters('targetResourceGroupName')]",
"appInsightLocation": "[parameters('appInsightsLocation')]",
"subscriptionId": "[variables('subscriptionId')]",
"webAppName": "projectdotnet",
"location": "[parameters('targetResourceGroupLocation')]",
"appServicePlan": "S1 Standard",
"containerRegistryName": "[variables('acrName')]",
"containerRegistrySKU": "[parameters('acrSku')]",
"containerRegistryLocation": "[parameters('acrlocation')]",
"azureAuth": "[parameters('azureAuth')]"
}
},
"repository": null
}
},
"dependsOn": [
"[concat('microsoft.visualstudio/account/', parameters('accountName'))]"
]
}
]
I'm getting an error which brings two questions:
The way Bishal refers to it is
"azureAuth": {
"value": "{"scheme":"ServicePrincipal","parameters":{"tenantid":"XXXXXX-XXXX-XXXX-XXXX-XXXXXXXXX","objectid":"XXXXXX-XXXX-XXXX-XXXX-XXXXXXXXX","serviceprincipalid":"XXXXXX-XXXX-XXXX-XXXX-XXXXXXXXX","serviceprincipalkey":"password"}}"
}
Is it still valid? As app registration evolved, it seems that objectid is now id.
Which one is the correct writing?
{"code":"DeploymentFailed","message":"At least one resource deployment operation failed. Please list deployment operations for details. Please see https://aka.ms/arm-debug for usage details.","details":[{"code":"NotFound","message":"{\r\n "code": "ProjectNotFoundWithId",\r\n "message": "Failed to create Azure Pipeline 'williamtestproj'. More details: 'Configuration failed at step: 'Creating assets'. More details: Invalid property identifier character: \\. Path '', line 1, position 1..'. ",\r\n "target": "GetAzurePipelineOperation"\r\n}"}]}
The DevOps org gets creates, the project gets created, but the Service Connection doesn't happen. And the pipeline doesn't create.
I thought at first it was related to the azureAuth, but I'm now confused.
I also tried to use the way Bishal was refering to it in the wiki, using the nested pipeline bootstrapconfigurations but I ended up with the same issue (except for the target name that is not the same).
any idea? that would be quite helpful!
Thanks,
William