Hey folks, it's great to be back for part 3 of my zero to hero blog series.
I joined Octopus Deploy in October 2021 and I'm on a learning journey that I want to share with you. In part one, I covered what Octopus Deploy does. In part 2, I discovered the role Octopus plays in DevOps.
In this post, I look at how Octopus Deploy integrates with other tools that organizations use. I also dive in to more of Octopus Deploy's features.
Config As Code
Version control is a core component of the DevOps methodology. Version-controlling your Octopus configuration can now be done with Config as Code.
With Config as Code you can see a history of changes to your deployment process, including who performed changes and when, with a version-controlled (Git) text representation of an Octopus project. If you're storing your application in GitHub as well, you have a single source of truth, with application code, build scripts, and deployment configuration in the one place.
To explore this feature, install the Octopus Deploy for Visual Studio Code plugin. The plugin helps with syntax highlighting when exploring the .OCL files created in your Git repository by Octopus.
Learn more about Config as Code by watching our deep dive webinar, hosted by our Director of Product, Michael Richardson.
Exporting and importing projects
There’s a handy feature in Octopus that makes it possible for projects to be exported and then imported into another space, giving you more control over how you organize your Octopus instance. You can take settings and configurations from a project in one space to another space.
I spent time setting up my first space and project, getting everything right. I then took some of that work with me to another space, using the export/import feature.
I was able to import:
- The project (name and settings)
- The deployment process and runbooks
- Project variables
- Channels and all lifecycles referenced
- Tenants connected to the project
- Accounts and certificates used by the project
- Library variable sets included in the project
- Step templates used in the deployment process or runbooks
- Other projects referenced by the Deploy a Release step
This is a useful feature in Octopus to move projects between instances or to split projects into multiple spaces for better visibility.
It's worth noting that it can't export and import:
Authentication system integration
Most organizations have an existing authentication system set up. Active Directory is a widely-used example. Octopus Deploy can integrate with several authentication systems, including:
- Active Directory Authentication
- Azure Active Directory Authentication
- GoogleApps Authentication
- Okta Authentication
- LDAP Authentication
Check out the authentication provider compatibility documentation for more information.
We recommend your authentication is set up to provide a consistent experience for all your users. If you're introducing Octopus Deploy into your environment, you want to avoid giving your users another username and password combination to manage.
Personalize your space
Something fun and valuable I did, that I recommend you do, too, is customizing your spaces with descriptions and logos.
Under Configuration, then Spaces, and then in each Octopus Space, you can add a description and a logo. Adding these helps you quickly identify your spaces. It also makes it easy for others working with you to distinguish each space.
I'm really starting to feel comfortable using Octopus Deploy. There's always more to learn but the jigsaw pieces are coming together.
If there's anything you want me to cover or answer about Octopus Deploy, please let me know and I can address them in part 4. Reach out to email@example.com or leave a comment below.
We'll add links to other posts in the series as they become available.
- Part 1: Getting to know Octopus Deploy
- Part 2: Discovering DevOps
- Part 3: Octopus features and integrations