O slideshow foi denunciado.
Utilizamos seu perfil e dados de atividades no LinkedIn para personalizar e exibir anúncios mais relevantes. Altere suas preferências de anúncios quando desejar.

Mastering the pipeline

311 visualizações

Publicada em

  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Mastering the pipeline

  1. 1. Mastering the pipeline Jorrit SalverdaTechnical architect @ AKQA Amsterdam
  2. 2. What they have in common● Little time for project setup● Many deployments near go-live● Pipelines up to UAT/PROD
  3. 3. Goals● Short feedback loop● Rapid deployments● Optimised for build grids● Executable on any machine● Easy to set up
  4. 4. MSBuild by convention● Convention over configuration● Open sourced on Github (MIT license)● Easy to upgrade● Conventions can be overridden
  5. 5. Conventions● Source directory structure● Javascript and css dirs● Postfixes for project names ● *.Website ● *.Database ● *.UnitTests ● ... and more
  6. 6. /t:Build● C# (versions the assemblies)● ASP.NET views● Javascript (JSHint)
  7. 7. /t:RunUnitTests● Compile only if needed● NUnit● Machine Specification● MSTest
  8. 8. /t:Release● Minify (YUI Compressor)● Version images, fonts, flash● Create Azure packages● Transform configs● Zip artefacts
  9. 9. /t:RunIntegrationTests● Deploy database and website to INT● Run integration tests
  10. 10. /t:AnalyzeWithSonar● Code quality (FxCop)● Coverage (OpenCover)● Sonar
  11. 11. /t:Deploy /p:DeployEnvironment=UAT● To IIS (MSDeploy)● To Azure (Powershell commandlets)● Windows Services (Robocopy)
  12. 12. /t:Deploy /p:DeployEnvironment=PROD● Untested configuration!
  13. 13. Whats next?● Automated rollback if smoke test fails● Hook into monitoring (Github)● Cross-browser testing (The Guardian)
  14. 14. // todo● Copy those scripts...
  15. 15. Thanksmsbuild by convention github repo: http://goo.gl/w9OcRintroductory blog post: http://goo.gl/Y0cNWreach me at: jorrit.salverda@akqa.com