Visual Studio Online recently announced a new build system that offers a heterogonous capable platform that can easily build or integrate almost any existing asset and be extended to add new ones.
(For more information about this announcement please see Chris Build session: https://channel9.msdn.com/Events/Ignite/2015/BRK3726 )
One of the Architects at Octopus (and “fellow” Queenslander) , Damian Brady decided to take advantage of this opportunity to create an Octopus Integration offering for Visual Studio Online.
Using his own words:
“The idea was to be able to create a new Octopus Deploy Release as a separate step in your build definition. I’m pretty excited by how powerful it was. After spending some time with it, I want to say how awesome the new Build system is! It’s so much easier and so much more powerful that the legacy stuff. I’m really, really impressed.”
I have included much of Damian’s blog post below on this exciting new offering below but highly recommend you check out his blog for the whole story:
Octopus integration with TFS Build vNext
The new structure of Team Build gives us a great opportunity to integrate better with your build process. To that end, we’ve created a new, public OctoTFS repository in GitHub.
It currently contains two options for creating a Release in Octopus as an independent step in your build definition. Both of them let you separate the build and deploy phases really nicely. Note that you’ll still have to package and push your Nuget package to the Octopus Server (or another Nuget repo) – these steps just create releases. You can still use OctoPack for packaging and pushing.
The integration I’m most excited about is the custom Build Step. It gives you a really nice UI and even includes release notes pulled from changesets and work items – something we get asked for a lot.
Unfortunately, because you need to upload the package to TFS/VSO, it won’t be available to use until the new build system hits RTM. That shouldn’t be too far away. At least this way you’ll be able to use it from day one of RTM instead of having to wait!
The other option is a PowerShell script you can include in your project. This one you can use right now, and it works nearly as well (no release notes yet). It’s not quite as nice to work with, but it does the job for now.
We will continue to work on these integrations so they’re useful and easy to use for as many people as possible. Our priority is always going to be on the core product though, so we’ll improve and add when we can.
Of course the OctoTFS repository is open source, and we will be accepting pull requests, so if you see a bug, a potential improvement, or even a completely new integration option, we’d love your contribution!
About Damian Brady
Who am I?
What do I do?
You’re welcome to contact me:
- by email on firstname.lastname@example.org.