The Azure RM template deployment is not valid. See inner errors for details.

When you test your ARM template using PowerShell or other techniques  before the deployment, you can receive an error: “The template deployment ‘xxxx-xxx-xxx’ is not valid according to the validation procedure. The tracking id is ‘xxxx-xxxx-xxxx’. See inner errors for details.”, and then you may ask yourself – “how to get that inner errors for details?”.

The following PS one-liner can rescue you:

(Get-AzLog -CorrelationId trackingIDhere).Properties.Content.Values

arm template deployment error

If you don’t have Az module installed, you may use Azure RM module and cmdlet Get-AzureRMLog with the same parameters as for Get-AzLog.

Multibranch pipeline: Jenkinsfile not found

I have been working with Windows-environments for more than 11 years so far and never really thought much  about case-sensitivity (PowerShell, cmd and other tools are case-agnostic, for example, Get-Verb or get-VerB both will work fine). However, today I faced with a little issue while configuring multibranch pipeline in Jenkins:

jenkins multibranch pipeline issue

I use the same paths for my jenkinsfile as for other pipelines (that are not multibranched) and that path is consisted of lowercase letters. In fact, if we open an explorer and check the path, my folder is named as “HelloWorld” plus other directories also have uppercase letters. And once I changed the script path to “HelloWorld/Scripts/Jenkinsfile“, the pipeline successfully checked all branches. The possible reason – multibranch pipelines are provided by completely different and apparently case-sensitive plugin. Looks like we should always use case-sensitive values for everything in order to avoid any strange issues. Ok. New rules, new habits 🙂

jenkins multibranch pipeline issue solution