I am following this process to create a YAML build pipeline for a .NET Core Web API project:
https://docs.microsoft.com/en-us/azure/devops/pipelines/get-started-yaml?view=vsts
When it comes to releasing it, I note that the (recently renamed) Azure DevOps doesn't seem to support YAML for defining release pipelines. However, I can see that deployment tasks have been defined eg:
https://docs.microsoft.com/en-us/azure/devops/pipelines/tasks/deploy/azure-rm-web-app-deployment?view=vsts
Are we expecting an upgrade to the release pipelines functionality to support YAML and, if so, when?
At the time of writing this response the features timeline reflects yaml releases are coming 2018 Q3.
https://docs.microsoft.com/en-us/azure/devops/release-notes/
I am in the middle of doing something like this right this very moment, but I am using the current REST APIs. What I am doing something similar to what I documented here (How do you import a release definition in VSTS?). Basically I am saving a templated JSON Release Pipeline file into the source code repository with variable placeholders, and a version number embedded. A then have a PowerShell script that is calling the Azure DevOps (that's a long word, I preferred typing VSTS, maybe I'll start typing AD)
- REST APIs to check of the Release Pipeline exists - works
- Create if it doesn't exist - works
- Compare embedded versions and update and if necessary (I'm stuck here, but I'll solve it, returning error that pipeline being updated hasn't changed even though I've changed it.)
I want this to executing during the Build pipeline so that I no longer have to modify lots of similar Release pipelines manually. I would prefer this to be a YAML file as well, but this is what I have today. I hope this helps.
The Product Team is working on it. You can track the update through Release notes.
Pipelines are made of one or more jobs and may include resources and variables. Jobs are made of one or more steps plus some job-specific data. Steps can be tasks, scripts, or references to external templates. This is reflected in the structure of the YAML file. Please visit here for details
YAML build pipeline creation experience is in preview. (today is 2018-12-04)
YAML for release pipelines seems to be a ways off still: 2019 Q2
Preview features can be enabled from your profile like this:
EDIT: As nullforce points out in comments, this only enables a YAML experience for build pipelines and not release pipelines.