10

Edited to hopefully better fit community guild lines for questions.

I am setting up a CI/CD pipeline for the first time and I would eventually like to setup automated deployments to QA and Production environments. I currently have my source code in a git repo using VSTS. I have been looking at Octopus Deploy to assist me but I haven't found any game breaking features that would put it significantly ahead of VSTS. What features does Octopus deploy have that would better help me accomplish my goals compared to the tool already available to me in VSTS?

Calidus
  • 1,374
  • 2
  • 14
  • 31
  • What is your question? – mkrieger1 Jan 24 '18 at 23:47
  • I was trying see why people prefer one of the other since my initial research didn't show any major difference. I now know this kind of question goes against stackoverflows recommendations since it is a opinion based comparison. – Calidus Jan 25 '18 at 14:57
  • Just want to put this out there, its a good question for people who are just starting in DevOps. Though the answer will still be based on the opinion of the users. Cheers – Rey Norbert Besmonte Mar 26 '18 at 05:09

1 Answers1

13

I recently evaluated both products, so I can speak with some experience.

Octopus Deploy Pros:

  • I liked the dashboard, how you see every product, and the current released version on each environment. VSTS just doesn't have this, at least at the account level. Even at the project level you can't easily determine this information. You could look at the latest release, yes, but someone could have redeployed an old release, and VSTS doesn't keep track of what version is on what environment.
  • Commercial "Supported" product, if you run into questions about VSTS, there is a community of MvPs here on Stack Overflow, and you can submit support cases with Microsoft, but it's not as straight forward as a dedicated support.
  • Documentation: It's absolutely stellar, and all in one place. It's also very well written, with good diagrams/explanations. In my experience with VSTS, documentation is spread out like typical Microsoft, if you have an intriguing question usually you track down a MvP here or through other means, or do lots of searching and figure out something that will work in your case. Unfortunately, the knowledge share for VSTS is just not in place yet, as they've changed their name over the years and keywords you use may simply not rank as high as previous keywords.

VSTS Pros:

  • If you already pay for Visual Studio Enterprise Licenses, you get one free release pipeline per license. In our case, our upfront cost is $0
  • It's all in one place, and secured with the same VSTS groups. OD required it's own user/group structure
  • Cloud based, as opposed to on-premises. This was huge, as you can immediately start using it, and not require infrastructre/setup costs.
  • Doesn't require an additional nuget reference/msbuild parameter in your releasable products (OD prefers if you use OctoPack)

Ultimately, we chose to go with VSTS. VSTS has feature parity across most features of Octopus Deploy, they make it incredibly easy to build a solution, create artifacts and release to a variety of environments. The fact it was "free" was a big driver, vs. paying yearly licensing to another third-party product.

raterus
  • 1,980
  • 20
  • 23
  • Your last paragraph is echoing my initial findings.There seems to be a lot of like about Octopus Deploy just not enough to justify the price if you already have Visual Studio Enterprise Licenses. I was hoping I was wrong, since it looks like a great product. – Calidus Jan 24 '18 at 20:16
  • 5
    @Calidus, Octopus Deploy is a great product, you wouldn't be making a bad choice to seriously consider the product. They were the fore-runner in managing deployments, and wrote the book on how to achieve DevOps in your organization. In some ways, I feel Microsoft totally ripped off their good work and put it in VSTS. – raterus Jan 24 '18 at 20:58
  • 4
    Just one note on the 'good luck getting that in front of someone at Microsoft that actually can help you.' As a Microsoft DevOps MVP I can say that I (and other MVPs) try to help out as much as we can. We're here on Stackoverflow (together with a bunch of Microsoft employees). I'm also on Twitter and I try to help anyone that reaches out to me with questions. There is also a Slack channel team-services.slack.com where a bunch of us hang out. Hope that helps in the future when you have a problem! And of course there is official Microsoft support as a part of your MSDN subscription. – Wouter de Kort Jan 24 '18 at 21:09
  • 4
    Octopus Deploy doesn't require or even prefer you to use OctoPack - https://octopus.com/docs/packaging-applications/creating-packages#create-your-packages – benPearce Jan 25 '18 at 00:29
  • 2
    Yes, our MVPs are _amazing_ and the VSTS team - both support staff and the product team - is also quite active on StackOverflow and Twitter and are quite good about escalating things to the right places. – Edward Thomson Jan 25 '18 at 00:51
  • 3
    On the other hand, if you /don't/ have Visual Studio Enterprise subscriptions, and most don't, then VSTS tends to be significantly more expensive if you want to have any kind of concurrency, especially on smaller teams. MS asks $1000/year for 2 concurrent pipelines vs. Octopus's $750/year for 15 target machines with concurrency only limited by hardware. – Warren Rumak Jan 25 '18 at 00:57
  • VSTS does not require any payments or subscriptions to start, please correct your answer, it's misleading to say at least. Secondly VSTS is cross platform and cross technology. I use it to build docker images and deploy to Kubernetes and docker swarm, this just one of the things which VSTS does which Octopus can not. – Gregory Suvalian Jan 25 '18 at 13:40
  • Octopus can deploy docker images please see : https://octopus.com/docker – Mr. Bellis Mar 07 '18 at 21:54
  • Couple of clarifications to this: 1. Octopack / nuget is not necessary for octopus deployment - you could just zip up any release artifact and hand octopus that zip. 2. Octopus does have a cloud based offering so on prem is not mandatory. I am sure @paulstovell can correct me if I am wrong there. – Darrell May 16 '18 at 23:02
  • With Octopus you define your release process just one and target any environment. With VSTS/azure devops it's the reverse. You define release process per environment which can lead to a disaster. It doesn't compare to octopus deploy. – Abu Belal Oct 10 '19 at 05:56