Post on 17-Feb-2017
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