Released: Monday, March 10, 2025

What's new in 2025.1

These are the most important features you'll get by upgrading.

Octopus 2025.1

The 2025.1 release of Octopus Deploy helps you deliver software faster and more flexibly, while making it simpler to manage your deployments.

This release’s noteworthy updates include:

  • Work where you’re most productive with Config as Code for Runbooks
  • Get greater flexibility and control by deactivating tenants that aren’t in use
  • Easy and flexible connectivity with Generic Open ID Connect accounts
  • Optimize resource use with child-first ordering of the task queue
  • Improved encryption and algorithm support with TLS 1.3

The 2025 Q1 release is already available on Octopus Cloud and is now ready for download by our self-hosted customers.

Release notes

Changes in Octopus Server 2025.1.9941

  • 9292 - Fixed bug where runbook snapshots created before migrating to Config as Code Runbooks could not be deleted

Changes in Octopus Server 2025.1.9933

Breaking Changes
  • 9140 - Fixed an issue in the Helm upgrade step where inline YAML values from variables with unescaped quotes caused errors
Other Changes
  • 8734 - Runbook Parameters not shown for an unpublished runbook
  • 9280 - Fixed bug allowing for duplicate tenant variable creation
  • 9271 - Add support for Runbooks in Config as Code
  • 9269 - Recent feature usage telemetry data is included in the diagnostics data, if available
  • 9258 - Fix for "unable to evaluate tokens" warnings appearing in task logs for Kubernetes steps
  • 9263 - Fixed S3 External feed issue where the incorrect package version could be selected during deployment
  • 9252 - Release creation will now succeed even if Jira Username/Password are missing while Jira Integration is enabled
  • 9244 - Update paging UX on project deployments page to match the Projects page. Improves rendering performance when a project has many channels
  • 6475 - Enabled support for TLS 1.3 for Tentacle communications
  • 9217 - Support debug mode
  • 9243 - Fix authenticating against AWS EKS clusters using an AWS OIDC account
  • 9149 - Removed FeedArguments.Cache property to improve Package Acquisition performance
  • 9248 - Support using OAuth 2.0 for authentication into Google's SMTP Server using workload identity federation
  • 9241 - Update scopeduserroles endpoint ordering to be fully unique to fix missing data when using pagination
  • 9242 - Update the file content retrieval process while creating a git resource package so binary files do not get corrupted
  • 9184 - Increase the encryption key size from 128 to 256 bits when sending script variables in Calamari
  • 8949 - Fix issue where deleting tenants resulted in an error after all connected projects are removed while tenant variables still exist. When projects are deleted, now correctly removes the related tenant variables for that project
  • 9239 - Faster Release creation for processes with multiple packages containing identical commits and work items
  • 9238 - Update Kubernetes Object Status to report non-namespaced/cluster-scoped resources
  • 9211 - Targets created with Cloud Target Discovery allow untenanted deployments when resource is tagged with a tenant
  • 9101 - Fixed bug where users with project group scoped permissions could not clone projects
  • 9233 - Git runbooks now have sensitive variable validation and will give an error when there is a step with a sensitive variable
  • 9236 - Fixed a crash of the DataMigrationCoordinationJob when an instance contained build information and no deployments
  • 9235 - Set package versions from snapshot on Runbook process when migrating to Config as Code
  • 9234 - System diagnostics now includes feature toggle state
  • 9232 - Fix empty project variables not showing "missing value" warnings in the tenant variable page
  • 9230 - Apply all filters before paginating the list of tenants
  • 9231 - Improve display of error if event history fails to load when viewing a release or runbook snapshot
  • 9102 - Fixes issue where some old releases could not be edited due to NullReferenceException checking Git protection rules
  • 9228 - Support sourcing files from the project repository in config-as-code runbooks
  • 9229 - Improved SQL performance for creating executions when triggers schedules overlap
  • 9227 - BugFix: Deployment page fails to load if repository is inaccessible
  • 9222 - Backend support for scoping tenant common variables
  • 9224 - Fixed an issue with variable substitution with certain Helm template values
  • 9206 - Octopus Cloud was updated to .NET 9 in version 2025.1.7256 however this was later rolled back. Versions 2025.1.8193 and onwards have returned to using .NET 8
  • 9221 - Fixed a bug in the 'Configure and Apply Kubernetes Resources' step where ConfigMaps could not include values containing line breaks
  • 9214 - Packages resolving from an Artifactory Generic Feed might not interpret pre-release tags when creating a Release
  • 9124 - Removed support for Helm V2
  • 9218 - The option to clone tenants is no longer displayed when there are no tenants to clone
  • 9208 - Deprecated AWS, Azure, and Terraform bundled tools
  • 9207 - Fix an issue where the Tenant run condition wouldn't show on steps in projects that are able to perform both untenanted and tenanted deployments
  • 7980 - Fixed error during project logo loading when source file is missing
  • 9205 - Allow Kubernetes manifest reporting for Deploy Kubernetes Secret & ConfigMap UI actions
  • 9203 - Fixed an issue where S3 packages would sometimes be downloaded without an extension
  • 9183 - Increase the encryption key size from 128 to 256 bits when sending variables to script and step package bootstrappers in Calamari
  • 9198 - Fixes: Step Template parameters not showing up in variable selection dropdowns in all Terraform steps
  • 9197 - Fixed issue with ProjectEdit permission being incorrectly required when creating a deployment
  • 9194 - Fix regression in the Kubernetes Deploy Container action whereby custom secrets were using name instead of computed name
  • 9196 - Fix regression in the Kubernetes Deploy Container action where config map was not evaluating Octopus Parameters
  • 9190 - Upgraded Autofac from 8.1.1 to 8.2.0
  • 9189 - Improve UX of updating step template usages and don't prompt for default values for resource-typed parameters (accounts, certificates and worker pools)
  • 7639 - Bug in Kubernetes Secret resource Step when adding Duplicate Key Values
  • 8975 - When running a runbook snapshot, display number of Git references from the selected published runbook snapshot in the Git Resources section
  • 9188 - Audit events for ITSM (ServiceNow/JSM) controlled deployments now linked to environment
  • 9172 - Allow for scoping deployment freezes to tenants
  • 9173 - Allow for recurring deployment freezes
  • 9187 - Fixes long running database migration cleaning up an unreleased feature
  • 9182 - Mitigated an issue where Helm manifests could not be retrieved for Kubernetes Object Status. This feature requires Helm 3.13 or later
  • 9186 - Kubernetes Object Status for Helm now supports empty or hooks-only charts
  • 9163 - Fixed issue preventing official docker images from contributing label and annotation variables
  • 9164 - Updated docker image manifest parsing to work with new schemas. Labels and annotations from the image manifests will now be contributed to the deployment variables
  • 9175 - Disable F# script execution as it has been deprecated. See the blog post for more information
  • 9178 - Added support for EKS Pod Identities on workers running in EKS clusters
  • 9179 - Fixed an issue where the S3 feed would fail to download when using worker credentials
  • 9177 - Improve performance and reduce resource usage of listing server tasks
  • 7627 - Fix issue where the version mask isn't evaluated correctly for the first Release created via a trigger
  • 8485 - Improve transient error handling to reduce likelihood of stuck Server Tasks
  • 9168 - Regression in Helm Upgrade step: Quoted Argument Handling
  • 9170 - Fixes issue where Kubernetes deployments with object status can get stuck in canceling state
  • 9171 - Improve performance and reduce resource usage of project progression endpoint
  • 9169 - Git submodules are ignored when using git repositories for sourcing deployment resources
  • 9158 - Allow S3 external feeds to be used as a source for charts in Helm steps
  • 9160 - The Octopus Helm step tries to retrieve the deployed manifest even when step verification is disabled
  • 9161 - Fixes account creation and modification to show validation instead of immediately clearing it
  • 9162 - Improve pagination performance on the Audit Page by no longer reloading Event Agent options
  • 9159 - Fixed issue where Acquiring packages may fail with an error referencing multiple concurrent operations on a database context
  • 9043 - Fixes a regression issue in which cloning a step to another project failed due to versioning validation
  • 9156 - Fixed a permissions issue where users with Runbook-only permissions may not be able to view the runbook run details
  • 9006 - When phases inherit retention policies, retention behaves in accordance with lifecycle configuration. Inherited policies are no longer skipped when releases skip phases
  • 9155 - Remove unused indexes from Release table and improve performance of step template usage endpoint
  • 9154 - Enable Octopus Versioning for Artifactory Generic Feeds to provide users with more flexibility in package version styles
  • 9151 - Improve pagination experience and performance for searching audit events
  • 9114 - Fixed bug where step template parameters could not be ordered if there were unsaved step template parameters
  • 9148 - Fix redirect after session expiry
  • 9147 - Fixed a performance regression with various machine related endpoints
  • 9138 - Error no longer occurs when adding source code to a Deploy an Azure Resource Manager template step
  • 9143 - Phase retention policies that inherit from other phases are now described correctly on the lifecycle page
  • 9137 - Kubernetes Object Status now supports the 'Deploy a Helm Chart' step
  • 9133 - Fixed bug where validation errors weren't visible because the Process Editor didn't scroll to top of page after clicking save
  • 9113 - Fixed bug where lifecycle phases could not be ordered if there were unsaved lifecycle phases
  • 9136 - Durations on the task screen will show correctly when the duration exceeds 24 hours
  • 9001 - Improved the performance of loading step template usages when viewing step templates. Note: This change involves a database migration of releases which may take upwards of a few minutes. If you have many releases (over hundreds of thousands), we recommend more aggressive release retention settings for a quicker upgrade
  • 9135 - Default to Hosted Ubuntu worker pool when Bash scripting language is selected in Run a Script step
  • 9129 - OIDC requests that fail now include the reason for failure in the Octopus server logs
  • 9005 - Fixed issue where Git branches that contained symbols could not be deployed from the portal
  • 8344 - Fixed issue where Git branches that contained symbols could not be deployed from the portal
  • 9126 - Fixed an issue with cloud connections in the process editor not appearing without unscoped VariableEdit
  • 9123 - Improve indexes on DataVersion column

Unsure which version is a compatible upgrade? Compare releases.

Looking for older versions of Octopus? Download older versions.