Simple build automation for ASP.NET Core app

Dariusz Pawlukiewicz

20.12.2017 bstoknet

  • foreverframe.net
  • devreview.pl
  • github.com/GooRiOn
  • @d_pawlukiewicz

About me

  1. Typical "post code" actions
  2. Why do we need automation?
  3. Project overview
  4. Build pipeline overview
  5. Available tools
  6. Introduction to Buddy
  7. Demo
  8. Pros and cons of Buddy
  9. Questions

Agenda

Typical "post code" actions

Building

Cleaning artifacts

Unit tests

Integration tests

Package restoring

Static code analysis

Building NuGget/ZIP

Building Docker image

Deploying somwhere

Why do we need automation?

  • To avoid human mistakes

  • To save the time

  • To increase productivity

Project overview

Our build steps

Popular tools

  • Make (C)
  • Rake (Ruby)
  • Fake (F#)
  • Cake (C#)
  • Psake (PowerShell)
  • MSBuild (XML)

"Offline" tools

Continuous Integration/Deployment

  • Jenkins
  • AppVeyor
  • Travis CI
  • VSTS
  • Bitbucket pipelines
  • GitLabs

There's one problem with all above...

DSL/Configuration

Buddy

What is Buddy?

  • Dead simple continuous delivery
  • Based on Docker
  • Creates pipelines using UI or YAML

DEMO

Buddy - pros/cons

Pros

Cons

  • Dead simple
  • Docker
  • Flexibility
  • Integration
  • Free plan for 1 project
  • Great technical support
  • Buddy Enterprise
  • No free plan for OSS
  • No support for Docker images based on Windows
  • Some Docker knowledge required

Thanks!

foreverframe.net

@d_pawlukiewicz

Simple build automation

By goorion

Simple build automation

  • 103