{"id":650,"date":"2016-07-01T16:57:35","date_gmt":"2016-07-01T15:57:35","guid":{"rendered":"https:\/\/blogs.ncl.ac.uk\/isg\/?p=650"},"modified":"2016-07-01T16:57:35","modified_gmt":"2016-07-01T15:57:35","slug":"extending-visual-studio-team-services-via-the-marketplace","status":"publish","type":"post","link":"https:\/\/blogs.ncl.ac.uk\/isg\/?p=650","title":{"rendered":"Extending Visual Studio Team Services via the Marketplace"},"content":{"rendered":"<p>As useful as Visual Studio Team Services is by itself, and with its API (we sync our LANDesk tickets with the VSTS Kanban board via the REST API &#8211; I&#8217;ll write a post about that sometime), it can be made a lot better through the use of extensions that have been created by Microsoft and the community and made available through the Marketplace.<\/p>\n<p>There are a whole load of extensions to integrate with other products to help your team collaboration, build, deployment, testing, etc. All you need to do is click the shopping bag icon in the top right of any VSTS screen to go to the Marketplace.<\/p>\n<p><a href=\"https:\/\/blogs.ncl.ac.uk\/isg\/files\/2016\/07\/VSTSMarketplace.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-662 size-large\" src=\"https:\/\/blogs.ncl.ac.uk\/isg\/files\/2016\/07\/VSTSMarketplace-1024x806.png\" alt=\"VSTSMarketplace\" width=\"584\" height=\"460\" srcset=\"https:\/\/blogs.ncl.ac.uk\/isg\/files\/2016\/07\/VSTSMarketplace-1024x806.png 1024w, https:\/\/blogs.ncl.ac.uk\/isg\/files\/2016\/07\/VSTSMarketplace-300x236.png 300w, https:\/\/blogs.ncl.ac.uk\/isg\/files\/2016\/07\/VSTSMarketplace-768x605.png 768w, https:\/\/blogs.ncl.ac.uk\/isg\/files\/2016\/07\/VSTSMarketplace-381x300.png 381w, https:\/\/blogs.ncl.ac.uk\/isg\/files\/2016\/07\/VSTSMarketplace.png 1203w\" sizes=\"auto, (max-width: 584px) 100vw, 584px\" \/><\/a><\/p>\n<p>One extension which I think everyone should add is <strong>Code Search<\/strong>, which has been written by Microsoft themselves. This gives you a handy search tool which you can use to find bits of code in your repo which match a variety of criteria. You&#8217;ve got a number of powerful search options to make sure you find what you&#8217;re looking for, no matter how big your codebase is.<\/p>\n<p><a href=\"https:\/\/blogs.ncl.ac.uk\/isg\/files\/2016\/07\/CodeSearch.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-663 size-full\" src=\"https:\/\/blogs.ncl.ac.uk\/isg\/files\/2016\/07\/CodeSearch.png\" alt=\"CodeSearch\" width=\"279\" height=\"550\" srcset=\"https:\/\/blogs.ncl.ac.uk\/isg\/files\/2016\/07\/CodeSearch.png 279w, https:\/\/blogs.ncl.ac.uk\/isg\/files\/2016\/07\/CodeSearch-152x300.png 152w\" sizes=\"auto, (max-width: 279px) 100vw, 279px\" \/><\/a><\/p>\n<p>The other extension that we use all the time is the Microsoft-written integration extension for the <strong>Slack<\/strong> messaging app. We&#8217;ll probably have another post in the future about Slack &#8211; it&#8217;s a great tool for teams doing DevOps style work because of all the integration options that it has. By using the VSTS\/Slack integration, we all get notifications (in the Slack desktop or mobile apps) of code commits and automated test results, so we don&#8217;t need to open the VSTS website to see how builds have gone.<\/p>\n<p><a href=\"https:\/\/blogs.ncl.ac.uk\/isg\/files\/2016\/07\/SlackVSTS.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-664\" src=\"https:\/\/blogs.ncl.ac.uk\/isg\/files\/2016\/07\/SlackVSTS.png\" alt=\"SlackVSTS\" width=\"602\" height=\"292\" srcset=\"https:\/\/blogs.ncl.ac.uk\/isg\/files\/2016\/07\/SlackVSTS.png 602w, https:\/\/blogs.ncl.ac.uk\/isg\/files\/2016\/07\/SlackVSTS-300x146.png 300w, https:\/\/blogs.ncl.ac.uk\/isg\/files\/2016\/07\/SlackVSTS-500x243.png 500w\" sizes=\"auto, (max-width: 602px) 100vw, 602px\" \/><\/a><\/p>\n<p>We&#8217;ll sometimes commit some code and then stick a comment in the Slack channel for the team if we&#8217;re perhaps expecting the build to fail for some reason, and we might have a little group celebration of success in the channel when something we were struggling with eventually works.<\/p>\n<p>Useful, huh?<\/p>\n<p>You can have a browse of the VSTS marketplace at\u00a0<a href=\"https:\/\/marketplace.visualstudio.com\/VSTS\">https:\/\/marketplace.visualstudio.com\/VSTS<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>As useful as Visual Studio Team Services is by itself, and with its API (we sync our LANDesk tickets with the VSTS Kanban board via the REST API &#8211; I&#8217;ll write a post about that sometime), it can be made &hellip; <a href=\"https:\/\/blogs.ncl.ac.uk\/isg\/?p=650\">Continue reading <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":4741,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[29,36,39],"tags":[],"class_list":["post-650","post","type-post","status-publish","format-standard","hentry","category-cloud","category-devops","category-source-control"],"_links":{"self":[{"href":"https:\/\/blogs.ncl.ac.uk\/isg\/index.php?rest_route=\/wp\/v2\/posts\/650","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blogs.ncl.ac.uk\/isg\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blogs.ncl.ac.uk\/isg\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blogs.ncl.ac.uk\/isg\/index.php?rest_route=\/wp\/v2\/users\/4741"}],"replies":[{"embeddable":true,"href":"https:\/\/blogs.ncl.ac.uk\/isg\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=650"}],"version-history":[{"count":3,"href":"https:\/\/blogs.ncl.ac.uk\/isg\/index.php?rest_route=\/wp\/v2\/posts\/650\/revisions"}],"predecessor-version":[{"id":666,"href":"https:\/\/blogs.ncl.ac.uk\/isg\/index.php?rest_route=\/wp\/v2\/posts\/650\/revisions\/666"}],"wp:attachment":[{"href":"https:\/\/blogs.ncl.ac.uk\/isg\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=650"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blogs.ncl.ac.uk\/isg\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=650"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blogs.ncl.ac.uk\/isg\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=650"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}