gestion paquetes nuget con visual studio team services y myget

39
#dotNetSpain2016 .NET Conference 2016 Spain

Upload: luis-fraile

Post on 17-Feb-2017

789 views

Category:

Technology


1 download

TRANSCRIPT

PowerPoint Presentation

#dotNetSpain2016.NET Conference 2016Spain

Gestin de dependencias con tu propio feed nugetLuis FraileALM Team@lfraile

#dotNetSpain2016

PatrocinadoresColaboradores

#dotNetSpain2016

#dotNetSpain2016

Por qu?Que me aporta la gestin de dependencias nugetCundo?Escenarios para la creacin y uso de paquetesCmo?Creacin de paquetesFeeds con Visual Studio Team ServicesFeeds con MyGetConclusionesAgenda

#dotNetSpain2016

Por qu?

Reutilizacin de componentesGestin del cambio de versionesDepuracin de componentes compartidosAsegurar la versin de nuestras dependenciasDesarrolloCompilacionesEntornosPor qu lo necesitamos

#dotNetSpain2016

Carpetas compartidas UNCDLL hellSubir las librerias al repositorioVersionado hellDepuracin hellRepositorio hellPendrive?No commentsSoluciones frecuentes

#dotNetSpain2016

Coherencia de versionesGestin de dependenciasCentralizacin de paquetes comunesDepuracin con smbolosMejora de tiempos de compilacinQue nos aportan las dependencias NuGet

#dotNetSpain2016

Cundo?

Dentro de solucinCon bajo nivel modificaciones

Mejora tiempos de compilacinFacilita el trabajo en proyectos VSReferencias usadas en varios proyectos VS

#dotNetSpain2016

Despues de estabilizarLibreras communes en proyectos

Facilita la reutilizacinMejora el seguimiento de versionadoComponentes reutilizables por equipos

#dotNetSpain2016

Reutilizables en distintos proyectosGeneracin de estructuras communes

Facilita la estructura en proyectos similaresOJO no caer en los frameworkOJO no caer en las churrerasScaffolding de estructuras communes

#dotNetSpain2016

Componentes OSS modificadosTambin bajo nivel de modificaciones

Mejor reutilizacinMinimizacin tiempos compilacinFacilidad en dependenciasPaquetes de terceros modificados

#dotNetSpain2016

Facilitar la divisin de las solucionesMejoras en la compilacinEntorno de desarrolloGestin de ciclo de dependenciasAsegurar versiones y entornosEliminar incertidumbreFacilitar los procesos de kick-offGet Latest + Build == successFacilitar interdependencias entre equiposObjetivos

#dotNetSpain2016

Publica tus smbolosAgrega todo lo necesario al paqueteVersionadoAutomatiza la creacin y publicacinObjetivo: facilitar la compilacin from scratchReferencias para desarrollo en la creacin de paquetesTips

#dotNetSpain2016

Generacin de paquetes

#dotNetSpain2016

Fichero de definicin nuspecContiene las propiedades del paqueteCreacin con nuget spec XXX.csprojNuget packLnea de commandos de generacinDirecto a travs de un csprojUsando fichero nuspechttps://docs.nuget.org/Create/Creating-and-Publishing-a-Package

Generacin .nupkg

#dotNetSpain2016

$id$ $version$ EppPlus custom $author$ $author$ $description$ Customized EPPPlus package. Copyright 2016

Fichero NuSpechttps://docs.nuget.org/create/nuspec-reference

#dotNetSpain2016

$id$nombre de assembly$version$AssemblyVersionAttribute / AssemblyInformationalVersionAttribute$author$AssemblyCompanyAttribute.$description$AssemblyDescriptionAttribute.$configuration$Configuracin usada en compilacinTokens

#dotNetSpain2016

DependenciasPaquetes nugetAssembliesFrameworkGACDependencias en desarrollo (packages.config)Ficheros a incluirImgenesCSSOrigen y destino en instalacin

Ms secciones

#dotNetSpain2016

Init.ps1 Ejecucin nica durante instalacinEjecucin en aperture de solucinInstall.ps1Ejecucin en instalacin (por Proyecto)Despus de init.ps1Uninstall.ps1Ejecucin en desinstalacinSetupparam($installPath, $toolsPath, $package, $project)Directorio Tools

Ejecucin de acciones PowerShell

#dotNetSpain2016

Creacin nupkg

Talk is cheapshow me the code!

Gestin de paquetes en VSTS

En previewGratuita por ahora Muy limitadaDos tipos de feedPrivados al equipoPblicos a todos los equipos VSTSTotalmente integrado en VSTSExtensin de VSTS en la galera

#dotNetSpain2016

Tareas de Team BuildPre-autenticadasPosibilidad de permisos a nivel de feedCompatible con otros feedCompatible con autenticacinPublicacin

#dotNetSpain2016

Tareas de restauracin de paquetesPrevia a compilacinCompatible con otros feedsTambin en propio paso de compilacinUso de fichero .nuget\nuget.configConsumo

#dotNetSpain2016

Creacin publicacin yconsumo VSTS

Talk is cheapshow me the code!

MyGet

Producto comercialLa referencia en cuanto a feeds privadosTambin tiene feeds pblicosMs completo que VSTSDispone de publicacin de smbolosMyGet

#dotNetSpain2016

Web de MyGetPublicacin y consume con tareas Team BuildMismas tareas que repositories internosAutenticacin en publicacinAutenticacin en consumoGestin de los paquetes

#dotNetSpain2016

Publicacin y consumo MyGet

Talk is cheapshow me the code!

Depuracin

Por ahora solo MyGetGenerados durante la buildParmetro -SymbolsSe publican automticamenteCon MyGetCon VSTS no se pueden publicar OJO: evitar su publicacin si no fallarPublicacin smbolos

#dotNetSpain2016

Configuracin a nivel de Visual StudioParmetro Enable Just My CodeConfiguracin de smbolosFuentes de smbolosCach Local de smbolosMdulos a incluir/ExcluirF11 Consumo de smbolos

#dotNetSpain2016

Depuracin de paquetes

Talk is cheapshow me the code!

Gestionar los paquetes es un must-haveFacilitar compilacionesMejorar tiempos de buildsMejorar la gestin de solucionesFacilitar la gestin de dependenciasFacilitar depuracin con smbolosEvitar DLL HellConclusiones

#dotNetSpain2016

http://aka.ms/DOTNETT2S4

Q&A#dotNetSpain2016

Luis Fraile@lfrailehttp://aka.ms/DOTNETT2S4

No olvides realizar la encuestaGracias!#dotNetSpain2016