This is an example of how to use parameters in Azure DevOps Pipeline YAML configurations. To start with this I have added first parameters: in the YAML file configuration. Under it I have multiple parameters, to create basic string parameter 3 properties are required name, displayName and type as shown in A section. When you don't define default value (Section A and B), from the right side you can see input is mandatory and required.
If you want to provide multiple select values, use values property with array of list (Section C). Next if you want CheckBox, type will be boolean (Section D).
To use these all the parameters in the steps/script I am using placeholder ${{ }}. For example if there is name of parameter is stringText1 I will use ${{ parameters.stringText1 }} in the script.
When you try to run pipeline it popups and prompts for the values and options to select.
As you can see after inputting all the parameter values and running pipeline I see the Job/Step output on the console, check the executed PowerShell command outputs. You will see all the provided values from parameters.
Reference Document: https://learn.microsoft.com/en-us/azure/devops/pipelines/process/runtime-parameters?view=azure-devops&tabs=script
Here is complete code. Download this Azure_DevOps_parameters_example_pipline.yaml here or it is also available on github.com.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 |
# Starter pipeline # Start with a minimal pipeline that you can customize to build and deploy your code. # Add steps that build, run tests, deploy, and more: # https://aka.ms/yaml trigger: - none pool: vmImage: ubuntu-latest parameters: - name: stringText1 displayName: string Text Example1 type: string - name: stringText2 displayName: string Text Example2 type: string default: ' ' - name: image displayName: Pool Images type: string values: - windows-latest - ubuntu-latest - name: checkBox displayName: checkbox ? type: boolean default: false stages: - stage: build jobs: - job: Parameters pool: vmImage: ${{ parameters.image }} steps: - powershell: | Write-Host "String Text Example1: ${{ parameters.stringText1 }}" Write-Host "String Text Example2: ${{ parameters.stringText2 }}" Write-Host "image: ${{ parameters.image }}" Write-Host "image: ${{ parameters.checkBox }}" |
Useful Articles
Azure DevOps Enable creation of classic build release pipelines grayed out
DevOps Part 1.1 SCM Git - Create Resource Group in Microsoft Azure
DevOps Part 1.2 SCM Git - Create Virtual Network (vNET) in Microsoft Azure
Hashicorp Terraform map and object inside module and variable example
Terraform one module deploy null or multiple resources based on input
Terraform A reference to a resource type must be followed by at least one attribute access, specifying the resource name
Terraform fore_each for loop filter with if condition example
Terraform remote-exec provisioner with ssh connection in null_resource
Terraform count vs for_each for examples with map of objects
Terraform one module deploy null or multiple resources based on input (nested for loop)