Je suis ce processus pour créer un pipeline de génération YAML pour un projet d'API Web .NET Core:
https://docs.Microsoft.com/en-us/Azure/devops/pipelines/get-started-yaml?view=vsts
Quand il s'agit de le publier, je remarque que Azure DevOps (récemment renommé) ne semble pas prendre en charge YAML pour la définition des pipelines de version. Cependant, je peux voir que les tâches de déploiement ont été définies, par exemple:
Attendons-nous une mise à niveau de la fonctionnalité des pipelines de version pour prendre en charge YAML et, dans l'affirmative, quand?
Au moment de la rédaction de cette réponse, le calendrier des fonctionnalités indique que les versions de yaml sont à venir pour le troisième trimestre 2018.
https://docs.Microsoft.com/en-us/Azure/devops/release-notes/
Mise à jour: Cela a été heurté à quelques reprises. Il est recommandé de vérifier les commentaires ci-dessous, car les utilisateurs fournissent des mises à jour au fur et à mesure qu'ils les trouvent.
Selon les commentaires, cela est maintenant possible: https://devblogs.Microsoft.com/devops/whats-new-with-Azure-pipelines/ . Ce qui suit est copié et collé à partir de l'article et illustre l'utilisation de différentes étapes:
stages:
- stage: Build
jobs:
- job: Build
pool:
vmImage: 'Ubuntu-16.04'
continueOnError: true
steps:
- script: echo my first build job
- stage: Deploy
jobs:
# track deployments on the environment
- deployment: DeployWeb
pool:
vmImage: 'Ubuntu-16.04'
# creates an environment if it doesn’t exist
environment: 'smarthotel-dev'
strategy:
# default deployment strategy
runOnce:
deploy:
steps:
- script: echo my first deployment
YAML construit l'expérience de création de pipeline est en aperçu. (aujourd'hui nous sommes le 2018-12-04)
YAML pour libérer les pipelines semble être un moyen de s'en tirer encore: 2019 Q2
Les fonctionnalités de prévisualisation peuvent être activées à partir de votre profil comme ceci:
EDIT: Comme nullforce le souligne dans les commentaires, cela active uniquement une expérience YAML pour les pipelines de construction et non pour le largage.
UPDATE (2019-05-16): À la suite de la "version 2019" de Microsoft, l'expérience YAML complète pour la construction et le déploiement devrait maintenant être possible dans le même Fichier de pipelines YAML.
L'équipe produit y travaille. Vous pouvez suivre la mise à jour via Notes de mise à jour .
Je suis en train de faire quelque chose comme cela en ce moment même, mais j'utilise les API actuelles REST. Ce que je fais ressemble à ce que j’ai documenté ici ( Comment importer une définition de version dans VSTS? ). En principe, j’enregistre un fichier de pipeline de sortie JSON basé sur un modèle dans le référentiel de code source avec des espaces réservés variables et un numéro de version incorporé. Ensuite, ayez un script PowerShell qui appelle Azure DevOps (c'est un long mot, j'ai préféré taper VSTS, peut-être que je vais commencer à taper AD)
Je souhaite que cette opération soit exécutée pendant le pipeline de génération afin de ne plus avoir à modifier manuellement de nombreux pipelines de publication similaires. Je préférerais qu'il s'agisse également d'un fichier YAML, mais c'est ce que j'ai aujourd'hui. J'espère que ça aide.