Wednesday, May 25, 2011

Realizing Build Pipelines: The First Pipeline

So, for my little post series about How to realize a Continuous Delivery Pipeline with tool X? I am looking for an appropriate first example pipeline.

I am trying to start with a fairly easy, but nevertheless realistic kind of pipeline... The choice is influenced by some pipelines I saw working in production. Of course, it's simplified.

Pipeline #1. Simple pipeline w/ artifact and manual trigger
Steps
  • commit stage -- compiles the code, executes unit tests and produces a war artifact
  • deploy to staging -- deploys the war file to a staging test server
  • acceptance test -- executes the 
  • deploy to production -- deploys the war file to production
Ok, a fairly easy one. But how it should be configured in detail?

  • triggering -- The last step is to be started manually, all others are triggered automatically.
  • version control - The first build uses a version control checkout for the application code, the 2nd and 4th one a checkout from a deployment code repo and the tests are located in another repository. 
Of course, it's more a kind of anti-pattern to have production code and tests separated from each other. Anyway, often this is the case and I would like to have scenario which does not have two jobs which require to checkout the same version/revision of the source code.


No comments:

Post a Comment