Sanity check your Web Application Release with a Smoke Test

Automated build and deployments are great right!? Write some code, commit your changes, a CI Build can fire, and a CD Release goes off and deploys that shiny new code out to your web server! Magic! 
BUT, often I find myself working on a release pipeline that could benefit from a quick sanity check that the Web site that we deployed, is ACTUALLY available and running after the Deploy steps say they succeeded.  I mean what good is a Release that shows up nice and Green in your release


Only to then go to your application to find that it is not running, or is unavailable

Yuck! I want to see if the Website I say "Deployed" is actually a "good" deploy!  Enter the Release Web Smoke Test release task for tfs and vsts.  This task will run against a specified set of URLs, and test to validate that the response that is received is the expected result.. you can set the expected return value in the advanced settings, along with setting a retry count. So if you're deploying to a web farm, you can specify the individual server urls and test each server is running well. If you have a site that has a healthcheck api already on it that returns a different code than 200, you can specify something different than 200.. 

This can be used in a stand-alone manner to allow you to see if the release is functional, or even better you could use this failure to trigger a roll-back in your release, creating a more robust release pipeline than just firing away and forgetting about it.

I tried to make it somewhat flexible, but not overly so... If there is a case that you need that isn't covered here, let me know!  The code is up on GitHub so you can see what's going on and extend the task as needed, or even better, share your updates with me and I can publish things up to the Marketplace for everybody to enjoy.
blog comments powered by Disqus

Calendar

<<  October 2024  >>
MonTueWedThuFriSatSun
30123456
78910111213
14151617181920
21222324252627
28293031123
45678910

View posts in large calendar

Category list

Page List

Month List

AuthorList