The Goal
In this series of blog posts, I'm going to show how to install/configure and use Octopus Deploy, which is a release management and deployment automation tool. Usually release management tools are the final steps in the CI/CD pipeline, which in general consists out of three players: code version control server, build server, deployment/release management server. Let's see that pipeline in the picture:
Octopus Deploy shines exactly at deployment part of the pipeline, meaning it is excellent at distributing build artifacts to the deployment targets.
What to Expect
There is a bunch of good resources to get started with Octopus quickly. I don't think I will introduce something unique here. This is just me learning Octopus Deploy and sharing the process, some HOWTO instructions, tips & tricks, I faced working with Octopus Deploy on a daily basis.
At the moment I have the following high-level plan regarding this series:
- Octopus server installation/configuration
- Octopus agents (tentacles) installation/configuration
- Environments setup
- Deployment Targets
- Roles setup
- Packaging
- Projects
- Lifecycles
- Variables
- Channels
- Releases and Deployments
- Setting up Octopus infrastructure via docker (the hard way)
- Setting up Octopus infrastructure via docker compose
- Setting up High availability cluster
- Octopus Cloud usage
- Misc integrations (Slack, TeamCity, TFS, etc.)
The Resources
Here is the list of learning materials I either going to take or already have taken and recommend:
Comprehensive Documentation
Pluralsight
- Deploying .NET Applications with Octopus Deploy
- Deploying Databases with Octopus
- Getting Started with Octopus
- Play by Play: Modernizing Your Deployment Strategy with Octopus Deploy
Books
- Exploring Octopus Deploy: Deployment Automation for .NET
- Automating .Net Deployments using TeamCity and Octopus: Continous Integration/Continous Deployment for .Net
- DevOps for Azure Applications: Deploy Web Applications on Azure
- ASP.NET 5 Application Deployment Guide
Blogs
- Octopus Deploy Official blog
- DevOps guy in .NET developer clothing
- https://gregorsuttie.com/category/octopus-deploy/
Social
YouTube
- Octopus Deploy Channel
- Octopus Onboarding from Zero (in RUS)
- Continuous deployment in under 60 minutes with Octopus Deploy - Damian Brady
- Octopus Deploy and how to stop deploying like an idiot
- Deploying SQL Server databases using Octopus Deploy
- Deploy Azure ARM with Octopus Deploy (Tech Day 2015)
- Deploying ASP.NET Core Applications including Octopus, Docker & RM
- Coding Octopus Deploy