{"version":"1.0","provider_name":"Brian Harry&#039;s Blog","provider_url":"https:\/\/devblogs.microsoft.com\/bharry","author_name":"Brian Harry","author_url":"https:\/\/devblogs.microsoft.com\/bharry\/author\/bharry\/","title":"Book on Continuous Deployment","type":"rich","width":600,"height":338,"html":"<blockquote class=\"wp-embedded-content\" data-secret=\"vvIj38KJJI\"><a href=\"https:\/\/devblogs.microsoft.com\/bharry\/book-on-continuous-deployment\/\">Book on Continuous Deployment<\/a><\/blockquote><iframe sandbox=\"allow-scripts\" security=\"restricted\" src=\"https:\/\/devblogs.microsoft.com\/bharry\/book-on-continuous-deployment\/embed\/#?secret=vvIj38KJJI\" width=\"600\" height=\"338\" title=\"&#8220;Book on Continuous Deployment&#8221; &#8212; Brian Harry&#039;s Blog\" data-secret=\"vvIj38KJJI\" frameborder=\"0\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\" class=\"wp-embedded-content\"><\/iframe><script type=\"text\/javascript\">\n\/* <![CDATA[ *\/\n\/*! This file is auto-generated *\/\n!function(d,l){\"use strict\";l.querySelector&&d.addEventListener&&\"undefined\"!=typeof URL&&(d.wp=d.wp||{},d.wp.receiveEmbedMessage||(d.wp.receiveEmbedMessage=function(e){var t=e.data;if((t||t.secret||t.message||t.value)&&!\/[^a-zA-Z0-9]\/.test(t.secret)){for(var s,r,n,a=l.querySelectorAll('iframe[data-secret=\"'+t.secret+'\"]'),o=l.querySelectorAll('blockquote[data-secret=\"'+t.secret+'\"]'),c=new RegExp(\"^https?:$\",\"i\"),i=0;i<o.length;i++)o[i].style.display=\"none\";for(i=0;i<a.length;i++)s=a[i],e.source===s.contentWindow&&(s.removeAttribute(\"style\"),\"height\"===t.message?(1e3<(r=parseInt(t.value,10))?r=1e3:~~r<200&&(r=200),s.height=r):\"link\"===t.message&&(r=new URL(s.getAttribute(\"src\")),n=new URL(t.value),c.test(n.protocol))&&n.host===r.host&&l.activeElement===s&&(d.top.location.href=t.value))}},d.addEventListener(\"message\",d.wp.receiveEmbedMessage,!1),l.addEventListener(\"DOMContentLoaded\",function(){for(var e,t,s=l.querySelectorAll(\"iframe.wp-embedded-content\"),r=0;r<s.length;r++)(t=(e=s[r]).getAttribute(\"data-secret\"))||(t=Math.random().toString(36).substring(2,12),e.src+=\"#?secret=\"+t,e.setAttribute(\"data-secret\",t)),e.contentWindow.postMessage({message:\"ready\",secret:t},\"*\")},!1)))}(window,document);\n\/\/# sourceURL=https:\/\/devblogs.microsoft.com\/bharry\/wp-includes\/js\/wp-embed.min.js\n\/* ]]> *\/\n<\/script>\n","thumbnail_url":"https:\/\/devblogs.microsoft.com\/bharry\/wp-content\/uploads\/sites\/8\/2018\/08\/vstsfeature.png","thumbnail_width":716,"thumbnail_height":448,"description":"Another good book recently hit the virtual shelves &#8211; this one on Continuous Deployment with TFS and VS Team Services.\u00a0 The book covers both the principles and practices around continuous delivery, as well as hands on guidance.\u00a0 Check it out&#8230; USA &#8211; http:\/\/www.amazon.com\/Continuous-Delivery-Visual-Studio-2015\/dp\/1484212738 UK \u00a0\u00a0&#8211; http:\/\/www.amazon.co.uk\/gp\/product\/1484212738 Brian"}