Released: Monday, September 16, 2024

What's new in 2024.3

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

Octopus 2024.3

The 2024.3 release of Octopus Deploy has updates to increase simplicity and efficiency in your deployment processes.

This release’s noteworthy updates include:

  • Introducing the new Vertical Navigation UI
  • Optimized infrastructure use with our autoscaling worker that Octopus manages for you
  • Improvements to the Helm Upgrade step for simpler setup
  • More secure Git workflows with Git protection rules
  • Simpler and faster navigation
  • Configurable deployment freezes to make it easier to manage deployments
  • Streamlined approvals for manual interventions
  • .NET 8 upgrade

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

Release notes

Changes in Octopus Server 2024.3.12932

  • 8736 - Automatic release creation can ignore channel rules when the referenced step is not the same as the channel version rules

Changes in Octopus Server 2024.3.12915

  • 9078 - The 'Needs Approval' tab on tasks pages will now show by default

Changes in Octopus Server 2024.3.12899

  • 9070 - Better support for new licensing model limits when a license isn't supplied

Changes in Octopus Server 2024.3.12894

  • 9071 - Fixed error when scrubbing PII data from Octopus database

Changes in Octopus Server 2024.3.12887

  • 9061 - Improve performance when deleting releases during the retention task

Changes in Octopus Server 2024.3.12878

  • 9067 - Include new deployment targets in the deployment setting in a health check has been updated so if it's a process that's started by a Project Trigger the Re-deploy setting will be respected
  • 9056 - Fix K8s resource edit YAML resetting to the selected container feed to the first available docker feed

Changes in Octopus Server 2024.3.12869

  • 8996 - Only delete Kubernetes Custom Resources once when multiple resources of the same kind is specified
  • 9065 - Include recurring scheduled task logs in diagnostics

Changes in Octopus Server 2024.3.12864

  • 9054 - Tenant tag scoped variables are now evaluated when a release is created and deployed by a scheduled project trigger

Changes in Octopus Server 2024.3.12858

  • 8964 - Adjust formatting of Octopus.Action.Helm.TemplateValuesSources property in OCL for Config as Code projects

Changes in Octopus Server 2024.3.12852

  • 9062 - Fix regression in events query performance

Changes in Octopus Server 2024.3.12848

  • 9061 - Improve performance when deleting releases during the retention task

Changes in Octopus Server 2024.3.12828

  • 8939 - Adds a message when user attempts to schedule a deployment for a date time that has past using the arrows or AM/PM toggle

Changes in Octopus Server 2024.3.12820

  • 9053 - Removed in-app messaging capabilities that had been inadvertently released to self-hosted customers
  • 9028 - Tenant-tag scoped variables get included when a release is created by the built-in feed trigger

Changes in Octopus Server 2024.3.12811

  • 8966 - Empty deployment process will still show existing releases

Changes in Octopus Server 2024.3.12802

  • 9041 - Allow specifying a newline-separated list of file paths for additional YAML files in packages on Upgrade Helm Chart step

Changes in Octopus Server 2024.3.12799

  • 9040 - Fix performance regression when fetching many users

Changes in Octopus Server 2024.3.12794

Changes in Octopus Server 2024.3.12766

  • 9031 - Fixed an issue with mapping projects when Included Library variable set Ids that were null
  • 9014 - Add support for reverting Kubernetes authentication via AWS CLI to use kubectl config get-credentials exec

Changes in Octopus Server 2024.3.12751

  • 9024 - Fixed bug where deleting a space would not leave behind records in the Event table

Changes in Octopus Server 2024.3.12741

  • 9021 - Unable to delete entities due to incorrectly related resources.

Changes in Octopus Server 2024.3.12735

  • 9018 - Fixed an issue where Kubernetes agents were not being health checked on the associated machine policy schedule
  • 6902 - Azure App Service step times out after 100 seconds when uploading package

Changes in Octopus Server 2024.3.12731

Breaking Changes
  • 8918 - Breaking Change: We've modified the way Target Tags (previously known as Target Roles) work under the hood. Some Tags may now be visible to a wider audience than they were before. If you have custom roles that you expect to be able to see or manage Target Tags, you may also need to add new permissions to those roles
Other Changes
  • 6902 - Azure App Service step times out after 100 seconds when uploading package
  • 9002 - Introducing the new Vertical Navigation UI
  • 9011 - Fix variable substitution in values files when Deploying a Helm Chart
  • 9009 - Step Templates sourced from Git can cause a deployment to fail when deploying in parallel
  • 9004 - Update bundled Tentacle version to 8.2.2148
  • 9063 - Add new Kubernetes Worker as a simple, auto-scaling worker
  • 9003 - Fixes issue where deployment process screen would fail to load if the user doesn't have TriggerView permissions
  • 9000 - Enhanced the "Login Succeeded" audit event by including a reference to the user
  • 8996 - Only delete Kubernetes Custom Resources once when multiple resources of the same kind is specified
  • 8994 - Added support for selecting a specific branch or commit for Git resources in the release creation page
  • 8997 - Convert BuildInformation to use Entity Framework
  • 8995 - Removed OidcIdentitiesCustomAudience feature toggle
  • 8991 - Convert Event and EventRelatedDocument to use Entity Framework
  • 8992 - Migrate RunbookProcess table to use Entity Framework
  • 8988 - Migrate TenantVariable table to use Entity Framework
  • 8993 - Updated Helm template values to support reordering, sourcing from Git Repositories and multiple of the same source type
  • 8904 - Fixed an issue where using Helm template files from git repo Helm chart source wouldn't work
  • 8987 - Converted Runbook document persistence from JSON store to relational model
  • 8985 - Use well known service account when upgrading Kubernetes agents and workers
  • 8973 - When running Offline Drop scripts as administrator, the working location is now changed from C:\WINDOWS\system32 to the directory containing the bundle
  • 8978 - Migrate RunbookSnapshot table to use Entity Framework
  • 8986 - Ensure that the OpenId Connect JWT value is included with a OIDC account step parameter
  • 8974 - Converted DeploymentEnvironment document persistence from JSON store to relational model
  • 8977 - Migrate VariableSet table to use Entity Framework
  • 8981 - Fixed: Modifying Deployment Settings via the /projects/Projects-N endpoint in the API could discard some values
  • 8980 - Add support to scope prompted project variables to channels
  • 8979 - Fixed an issue where variable substitution was not run on Helm template values files sourced from packages or git repositories
  • 8348 - Fixed an issue where modifying inline scripts failed due to persisting script parameters
  • 8542 - Fixed issue where creating a Release or Runbook Snapshot fails if one or more steps have a git dependency referencing variables
  • 8913 - Fix a bug where packages weren't being re-acquired after manual intervention steps
  • 8971 - Fixed issue where attempting to deploy certain older releases with primary Git references may result in a "Value cannot be null" error
  • 8970 - Fix constraint violation error when deleting some old Deployments or RunbookRuns
  • 8969 - Inspect target execution context for custom Calamari environment variable
  • 8886 - New Git protection rules have been added to channels allowing you to restrict which branches and tags can be used when using Git repositories during deployments
  • 8962 - Migrate NuGetPackage table to use Entity Framework
  • 8963 - Fixed an issue where deploying a Git-sourced Bicep template may result in an error
  • 8914 - Fix bug with needs approval tab on tasks page - show message for multiple approvals on a task
  • 8960 - Migrate ServerTaskApproval table to use Entity Framework
  • 8952 - Migrate RunbookRun table to use Entity Framework
  • 8958 - Converted DeploymentFreeze document persistence from JSON store to relational model
  • 8959 - Fixed an issue where helm template values packages or git repositories would get a -Infinity index
  • 8946 - Loading the deployments related to releases no longer causes an error when more than 300 deployments exist
  • 8956 - Release Note: Converted BulkDeployment document from JSON store to relational model
  • 8879 - Converted Interruption document persistence from JSON store to relational model
  • 8951 - Fix a broken link navigating from all variables to tenant variables page
  • 8941 - Migrate ActionTemplate and ActionTemplateVersion table to use Entity Framework
  • 8953 - Fixed an issue during tool extraction via Bash when chown is denied
  • 8794 - Correct build information and release notes are shown when a variable is used as a package name and multiple variables values are set with various scoping
  • 8181 - Fixed an issue where extracting the Java archive as an additional package was causing the step to fail
  • 8945 - Migrate Deployment table to use Entity Framework
  • 8944 - Convert Project to use Entity Framework
  • 8948 - Fix Runbook run now page calling incorrect preview endpoint for published snapshots
  • 8862 - Migrate Certificate table to use Entity Framework
  • 8932 - Converted ServerTask document persistence from JSON store to relational model
  • 8943 - Kubernetes agent is now generally available and our recommended Kubernetes deployment target. See our announcement blog post
  • 8950 - Fixed a bug where Script Source wasn't being set when creating new Deploy a Helm Chart steps
  • 8906 - Azure Web App steps failing when no resourceGroup value is set.
  • 8938 - Fixed an issue where the new projects dashboard rendering felt sluggish
  • 8933 - Fixes handling of deleted branches and other Git errors so that the channels screen will not error
  • 8931 - Fix "Edit Step" link not working on Runbook Task List
  • 8920 - Migrate Account table to use Entity Framework
  • 8929 - Migrate Channel table to use Entity Framework
  • 8903 - Migrate TagSet table to use Entity Framework
  • 8927 - Resolved an issue where the Kubernetes agent was erroneously using step-configured execution container details as the script pod container image for certain Kubernetes steps
  • 5161 - The Project > Releases page no longer queries for every task in the history of the universe
  • 8923 - Fixed an issue where failing or in progress deployments were not being prioritized on the new projects page as part of the new vertical navigation
  • 8925 - Fixed a bug where the environment headers on the Projects Page might sometimes be in a different order from the deployment table cells
  • 8926 - Fixed a bug that prevented environment filters from being applied to the Projects page
  • 8915 - Rotation date calculation on the signing keys page better accounts for time zones
  • 8481 - Fix a bug where runbooks runs are blocked from being created if there are multiple prompted variable values for the same variable
  • 8922 - Auto select JSON or YAML syntax highlighting when editing variable values
  • 8733 - Fix conflicting ID when converting multiple value variables to sensitive
  • 8909 - Fix Runbook cloning dialog in the Octopus portal creating a new empty Runbook rather than cloning
  • 8910 - Convert ProjectTrigger to Entity Framework
  • 8208 - URLs for Releases may exceed 4000 characters due to many Tenants / Deployments
  • 8905 - Fix issue where scheduled deployment time was inaccurate
  • 8836 - Migrate GitCredential table to use Entity Framework
  • 8899 - Automatically expand script source when using inline YAML in Kubernetes Step
  • 7616 - Scheduled deployments select the correct release to promote when there are multiple tenanted deployment candidates
  • 8898 - Fixed an issue where tasks menu item was incorrectly hidden in the new vertical navigation when user has task view permissions in a different space
  • 8828 - Fixed audit event not showing a correct value for the variable set and library variable set snapshots when updating a release variable
  • 8896 - Step retries no longer retry after Tentacle communication errors
  • 8888 - Fixed an issue with Kubernetes Server-side apply running on Windows workers
  • 8704 - Scheduled tasks now show the remaining time until their start time on the tasks page
  • 8894 - Added support for opting out of isolated execution on C# dotnet-script steps. To opt out set the variable Octopus.Action.Script.CSharp.BypassIsolation to true
  • 8892 - Fix an issue where tenant logos were cut off on the project dashboard if the tenant had a long name
  • 8720 - Fixed issue where default filters on the Deployments page were not applied correctly
  • 8424 - Fix a bug where certain steps (e.g. manual intervention, email) were copying target roles of parent steps
  • 8889 - Improve UX of expanding rows on the tenants page
  • 8791 - Deployments using multiple workers in a single Worker Pool acquire different workers when packages overlap or subsequent steps do not use packages.
  • 8842 - Fixed an issue preventing Tentacle upgrades on Linux initiated by Octopus Server from falling back to using an archive file for installation if yum or apt-get fails/is unavailable
  • 8884 - Fix dashboard incorrectly showing onboarding prompt
  • 8605 - Fix Azure App Service steps failing to deploy when the step is added from a step template or cloned from an existing step, and a Docker feed is used
  • 8887 - Enhance target tag selector so that tags are added on blur, enter and tab
  • 8878 - Added indentation markers to the code editor for when editing YAML. Fixed a small bug in the code editor, where the editor will now remain focused when you drag select outside of the editor region
  • 8871 - Migrate DeploymentSettings table to use Entity Framework
  • 8876 - Fix issue where health checks on Cloud Regions fail
  • 8880 - Align fonts on project variables and tenant variables to be 14px monospaced. Improve some styling on the tenant variables page
  • 8832 - Improves help text for Deploy a CloudFormation Template step so that it doesn't imply that only JSON templates are supported
  • 8877 - Convert ProjectTriggerExecution to Entity Framework
  • 8864 - Migrate Lifecycle table to use Entity Framework
  • 8873 - Convert DeploymentCompletion to Entity Framework
  • 8866 - Migrate Feed to use Entity Framework
  • 8872 - Migrate AutoDeployQueueItem to use Entity Framework
  • 8874 - Created new experimental optimization for the data source of the new Projects page
  • 8855 - Convert InsightsReport to use Entity Framework
  • 8870 - Upgrade CodeMirror from v5 to v6 and apply new code editor theme for better syntax highlighting
  • 8861 - Convert MessageBusCursor and MessageBusEvent to Entity Framework
  • 8863 - Converted DeploymentFreezeOverride document persistence from JSON store to relational model
  • 8844 - Migrate CommunityActionTemplate table to use Entity Framework
  • 8850 - Migrate LibraryVariableSet table to use Entity Framework
  • 8854 - Improved performance of account usage across variable snapshots
  • 8852 - Added "Edit" deeplinks to Process steps in Runbook logs
  • 8851 - Migrate DataMigrationState table to use Entity Framework
  • 8847 - Converted DashboardConfiguration document persistence from JSON store to relational model
  • 8849 - Enable new Project Tenant Variables view by default
  • 8819 - Migrate WorkerTaskLease table to use Entity Framework
  • 8841 - Ensure SQL connections are closed when encountering exceptions during disposal
  • 8824 - Migrate Space table to use Entity Framework
  • 8821 - Migrate MachinePolicy table to use Entity Framework
  • 8845 - Deleting projects or environments removes them from deployment freeze scope
  • 8831 - Converted Subscription document persistence from JSON store to relational model
  • 8834 - Migrate ConnectProjectToTenantsTask table to use Entity Framework
  • 8837 - Converted DatabaseMaintenance document persistence from JSON store to relational model
  • 8835 - Deprecation of Helm V2 support
  • 8833 - Stopped auditing document modifications for newly queued tasks
  • 8826 - Fixed an issue where very large packages (4+ GB) failed to download from an external feed
  • 8064 - Correctly set windowsFxVersion when deploying containers to a Windows-based container Azure Web App
  • 8827 - Add automatic retry when acquiring packages/containers from Docker, OCI Helm and Artifactory feeds
  • 8818 - Octopus RestAPI create release unable to include / in package name
  • 282 - Create Release --package=VALUE - Unable to include / in package name in value
  • 8823 - Converted Proxy document persistence from JSON store to relational model
  • 8443 - Added the ability to edit the Project Lifecycle from the Project Settings page
  • 8816 - Converted OctopusServerNodeStatus document persistence from JSON store to relational model
  • 8808 - Migrate DynamicInfrastructureLifecycle table to use Entity Framework
  • 8803 - Migrate ProjectIntents table to use Entity Framework
  • 8815 - Rename Library to Git Credentials in Git Repository authentication selector
  • 8812 - Migrate KubernetesTaskResourceStatus table to use Entity Framework
  • 8809 - Fix issue where git repository packages are always re-acquired on target, even if it's the exact same package
  • 8806 - Fixed case-sensitive name filter on Infrastructure Workers page
  • 8804 - Migrate DeprovisionDynamicEnvironmentTask table to use Entity Framework
  • 8805 - Converted OctopusServerNode document persistence from JSON store to relational model
  • 8807 - Improve UX when viewing build information on deployments
  • 8800 - Migrate DeprovisionDynamicEnvironmentForProjectTask table to use Entity Framework
  • 8795 - Account type variable values will use account ID not account name if clicking on 'All Variables' or 'Variable Preview' page and then refreshing that page.
  • 8802 - Support skipping initial health check when creating deployment targets or workers
  • 8793 - Deploying to an environment and a frozen environment at the same time no longer results in a validation error
  • 8792 - Improve Git persistence logic to better detect and recover from corrupt repositories
  • 8785 - Added an optional --cancel-wait parameter in Octopus Server's node command to set the time to wait after task cancellation is requested

Unsure which version is a compatible upgrade? Compare releases.

Looking for older versions of Octopus? Download older versions.