Creación de tareas personalizadas para Team Build y Release Management
-
Upload
luis-fraile -
Category
Software
-
view
484 -
download
3
Transcript of Creación de tareas personalizadas para Team Build y Release Management
![Page 1: Creación de tareas personalizadas para Team Build y Release Management](https://reader031.fdocuments.in/reader031/viewer/2022020119/58a6a30a1a28ab0a7a8b4a8f/html5/thumbnails/1.jpg)
Microsoft Summit5 y 6 de octubre, 2016
#TechSum
![Page 4: Creación de tareas personalizadas para Team Build y Release Management](https://reader031.fdocuments.in/reader031/viewer/2022020119/58a6a30a1a28ab0a7a8b4a8f/html5/thumbnails/4.jpg)
#TechSum
1 Juego Deus EX
Cazando a 5 Speakers
1 Curso desarrollo
apps
Cazando a Javier SuárezSO
RTEA
MO
S S
ORT
EAM
OS
SO
RTEA
MO
S SO
RTEA
MO
S
http://bit.ly/plain-go
![Page 5: Creación de tareas personalizadas para Team Build y Release Management](https://reader031.fdocuments.in/reader031/viewer/2022020119/58a6a30a1a28ab0a7a8b4a8f/html5/thumbnails/5.jpg)
#TechSum
Intro
![Page 6: Creación de tareas personalizadas para Team Build y Release Management](https://reader031.fdocuments.in/reader031/viewer/2022020119/58a6a30a1a28ab0a7a8b4a8f/html5/thumbnails/6.jpg)
#TechSum
Nuevo Sistema de Build y Release ManagementBasado en un pipeline de tareasAgentes compartidosBuild y RM
X-PlatformMacOSJenkinsJava…
Plantillas predefinidasPropiasTFS
Entornos de Release100% basado en web
![Page 7: Creación de tareas personalizadas para Team Build y Release Management](https://reader031.fdocuments.in/reader031/viewer/2022020119/58a6a30a1a28ab0a7a8b4a8f/html5/thumbnails/7.jpg)
#TechSum
Modelo de extensibilidadExtensiones en Visual Studio MarketPlacehttps://marketplace.visualstudio.com/ GratuitasDe pago
Se integran en las diferentes partes de TFS/VSTSGestión de Work ItemsBuild & RMNuevos paneles y funcionalidades
Varios modos de desarrolloPowerShell (Build & RM) + PS1 SDKJscript + API Rest + NPM SDK + TypescriptNodeJS (Build & RM)
![Page 8: Creación de tareas personalizadas para Team Build y Release Management](https://reader031.fdocuments.in/reader031/viewer/2022020119/58a6a30a1a28ab0a7a8b4a8f/html5/thumbnails/8.jpg)
#TechSum
Primera regla de la extensibilidadSi no lo necesitas realmente no lo hagas
![Page 9: Creación de tareas personalizadas para Team Build y Release Management](https://reader031.fdocuments.in/reader031/viewer/2022020119/58a6a30a1a28ab0a7a8b4a8f/html5/thumbnails/9.jpg)
#TechSum
Extensiones Build & RM
![Page 10: Creación de tareas personalizadas para Team Build y Release Management](https://reader031.fdocuments.in/reader031/viewer/2022020119/58a6a30a1a28ab0a7a8b4a8f/html5/thumbnails/10.jpg)
#TechSum
Que vamos a necesitarUna cuenta de VSTS / TFS 2015 Update 3Visual Studio Code tfx-cliHerramienta multiplataforma instalada via NPM (npm install -g tfx-cli)
Referenciahttps://github.com/Microsoft/vsts-taskshttps://github.com/Microsoft/vsts-tasks/tree/master/Tasks/ShellScript
![Page 11: Creación de tareas personalizadas para Team Build y Release Management](https://reader031.fdocuments.in/reader031/viewer/2022020119/58a6a30a1a28ab0a7a8b4a8f/html5/thumbnails/11.jpg)
#TechSum
Estructura base de una tarea$ tfx build tasks create
Task.json
Fichero de definición
Icon.pngIcono para listados de
tareas
Sample.js
Ejemplo base NodeJS
Sample.ps1
Ejemplo base Powershell
![Page 12: Creación de tareas personalizadas para Team Build y Release Management](https://reader031.fdocuments.in/reader031/viewer/2022020119/58a6a30a1a28ab0a7a8b4a8f/html5/thumbnails/12.jpg)
#TechSum
Task.jsonInformación básica de la tareaIdAutorDescripción…
Parámetros de entradaPuntos de ejecuciónVersión
![Page 13: Creación de tareas personalizadas para Team Build y Release Management](https://reader031.fdocuments.in/reader031/viewer/2022020119/58a6a30a1a28ab0a7a8b4a8f/html5/thumbnails/13.jpg)
#TechSum
PowershellSólo para WindowsSave-Module -Name VstsTaskSdk -Path .\SDK: https://github.com/Microsoft/vsts-task-lib/blob/master/powershell/Docs/Commands.md
Punto de ejecución Powershell3
![Page 14: Creación de tareas personalizadas para Team Build y Release Management](https://reader031.fdocuments.in/reader031/viewer/2022020119/58a6a30a1a28ab0a7a8b4a8f/html5/thumbnails/14.jpg)
#TechSum
JavascriptEjecutadas bajo NodeJSnpm install vsts-task-lib –saveSDK para Javascript/typescrip
Punto de ejecución Node
![Page 15: Creación de tareas personalizadas para Team Build y Release Management](https://reader031.fdocuments.in/reader031/viewer/2022020119/58a6a30a1a28ab0a7a8b4a8f/html5/thumbnails/15.jpg)
#TechSum
TypeScript
Aporta uso de await para las
tareas
Facilita el desarrollo (el
SDK está en TS)
También usa typings (librería
typescript)
Es lo recomendado
por Microsoft …
Es el mismo punto de
ejecución que Node
![Page 16: Creación de tareas personalizadas para Team Build y Release Management](https://reader031.fdocuments.in/reader031/viewer/2022020119/58a6a30a1a28ab0a7a8b4a8f/html5/thumbnails/16.jpg)
#TechSum
Gestión de mensajeshttps://github.com/Microsoft/vsts-tasks/blob/master/docs/authoring/commands.md
Sintáxis##vso[area.action property1=value;property2=value;...]message
Uso en Node console.log(`##vso[task.logissue type=error;]${err}`);
Uso en Powershell Write-Host // Write-VstsTaskError
![Page 17: Creación de tareas personalizadas para Team Build y Release Management](https://reader031.fdocuments.in/reader031/viewer/2022020119/58a6a30a1a28ab0a7a8b4a8f/html5/thumbnails/17.jpg)
#TechSum
Resultado de la tareaWrite-VstsSetResult -Result FailedPowershelltoolRunner.setResult(toolRunner.TaskResult.Failed,'Failed restoring the packages');Node
![Page 18: Creación de tareas personalizadas para Team Build y Release Management](https://reader031.fdocuments.in/reader031/viewer/2022020119/58a6a30a1a28ab0a7a8b4a8f/html5/thumbnails/18.jpg)
#TechSum
Pruebas localesPowershell$env:INPUT_MYINPUT = [...]Import-Module .\ps_modules\VstsTaskSdkInvoke-VstsTaskScript -ScriptBlock { . .\MyTask.ps1 }Invoke-VstsTaskScript -ScriptBlock ([scriptblock]::Create('. .\build-dotnet.ps1')) (PS3)
Nodeexport INPUT_SAMPLESTRING="Hello World“ // set INPUT_SAMPLESTRING="Hello World"Node build-dotnet.js
![Page 19: Creación de tareas personalizadas para Team Build y Release Management](https://reader031.fdocuments.in/reader031/viewer/2022020119/58a6a30a1a28ab0a7a8b4a8f/html5/thumbnails/19.jpg)
#TechSum
PublicaciónManualmente para tu propio VSTS/TFStfx build tasks upload
Creación de paquete para Marketplace1. Creación de publisher2. Generación local de paquete (tfx extension create --manifest-globs vss-
extension.json)3. Publicación en marketplace4. Compartir con cuentas VSTS5. Hacer pública6. Actualizaciones
![Page 20: Creación de tareas personalizadas para Team Build y Release Management](https://reader031.fdocuments.in/reader031/viewer/2022020119/58a6a30a1a28ab0a7a8b4a8f/html5/thumbnails/20.jpg)
#TechSum
Datos de la extensión
vss-extension.json
Datos generales
Autor Versión ObjetivoIcono para listados de extensiones
Ficheros
Contenidos de
extensiones
Puntos de contribució
n
Tareas
![Page 21: Creación de tareas personalizadas para Team Build y Release Management](https://reader031.fdocuments.in/reader031/viewer/2022020119/58a6a30a1a28ab0a7a8b4a8f/html5/thumbnails/21.jpg)
#TechSum
Demos
![Page 22: Creación de tareas personalizadas para Team Build y Release Management](https://reader031.fdocuments.in/reader031/viewer/2022020119/58a6a30a1a28ab0a7a8b4a8f/html5/thumbnails/22.jpg)
#TechSum
http://aka.ms/MTS82
![Page 23: Creación de tareas personalizadas para Team Build y Release Management](https://reader031.fdocuments.in/reader031/viewer/2022020119/58a6a30a1a28ab0a7a8b4a8f/html5/thumbnails/23.jpg)
© 2014 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.