anchor.diff:  Application_Environments pipeline builds our container, verifies is and then stores it on our registry. That change kicks
   off the rest of our build / test / deploy pipelines in exactly the same way an application code change would.
   
  -<%= image_tag "blog/pipeline-patterns/infrastructure-as-code.png", {:title => "Environment changes submitted as code", :alt => "Environment changes submitted as code"} %>
  +<%= image_tag "blog/pipeline-patterns/infrastructure-as-code.png", {:title => "Environment changes submitted as code", :alt => "GoCD Environment changes submitted as code"} %>
   
   ##Conclusion
   
  
positive.code: 
  Once you've built a binary, you should upload that back to your CD server or artifact repository for later use.
  
  <%= image_tag "blog/pipeline-patterns/upload-artifact.png", {:title => "Upload Artifacts", :alt => "Upload Artifacts"} %>
  
  When you're ready to deploy to a downstream system, you should fetch and install that build artifact. This way you make
  sure that you're running your functional tests on the exact thing you built and that you're going to deploy.
  
  <%= image_tag "blog/pipeline-patterns/fetch-artifact.png", {:title => "Fetch Artifacts", :alt => "Fetch Artifacts"} %>
  
  ##2. Run tests in parallel
  
  
negative.code: What you should do is split those tests up into manageable size chunks and run them in parallel. In the case of the Mingle
  team those tests run on 65 GoCD agents at the same time.
  
  <%= image_tag "blog/pipeline-patterns/testing-jobs.png", {:title => "Jobs overview displaying parallel tests", :alt => "GoCD Jobs overview displaying parallel tests"} %>
  
  Of course it's also vitally important that you're able to quickly determine what went wrong if something fails, so you
  should make sure the tests results from all of the jobs can be viewed in one consolidated place.
  
  <%= image_tag "blog/pipeline-patterns/testing-failures.png", {:title => "Tests tab showing failed tests", :alt => "GoCD Tests tab showing failed tests"} %>
  
  ##3. Design parallel workflows
  
  