Released: Monday, June 10, 2024

What's new in 2024.2

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

Octopus 2024.2

The 2024.2 release of Octopus Deploy has updates to further improve our Kubernetes functionality and simplify deployments and operations.

This release’s noteworthy updates include:

  • Simpler deployments to Kubernetes with the Kubernetes agent
  • External feed triggers for Kubernetes for automated releases
  • Improved visibility and management of variables for tenanted deployments
  • ServiceNow integration improvements to provide greater control of change requests
  • Better visibility of key account information with the license usage dashboard
  • Performance improvements for a faster task queue
  • Additional performance improvements
    • Support for Windows 10 LTSC
    • SSH.NET Library upgrade with SHA 256 support

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

Release notes

Changes in Octopus Server 2024.2.9313

  • 8912 - Fix external security group sync failing with deadlock errors

Changes in Octopus Server 2024.2.9303

  • 8900 - Fixed an issue where execution containers images in custom registries were not being correctly retrieved when using the Kubernetes agent
  • 6914 - Produce correctly formatted filenames when transferring a package from Windows to Linux

Changes in Octopus Server 2024.2.9280

  • 8869 - email is no longer used as an identifying value for ActiveDirectory users. Emails are now correctly pulled from AD when looking up a user data after a user is created in Octopus

Changes in Octopus Server 2024.2.9274

  • 8888 - Fixed an issue with Kubernetes Server-side apply running on Windows workers

Changes in Octopus Server 2024.2.9258

  • 8891 - Fixes ssh targets when md5 hashed fingerprints are used

Changes in Octopus Server 2024.2.9248

  • 8882 - Show Proxy details configured via environment variables on the Web Request Proxy page
  • 8881 - Log HTTP 500 errors correctly in the web request logging file

Changes in Octopus Server 2024.2.9235

  • 8868 - Fixed UI performance regression on variable edit page
  • 8867 - Large Variables page with lots of scopes is slow to add new value
  • 8727 - Fixed an issue where async zip deploy failed to clean up packages resulting in failed tasks

Changes in Octopus Server 2024.2.9220

  • 8865 - Don't map work items in build information on pages that don't show this information

Changes in Octopus Server 2024.2.9210

  • 8841 - Ensure SQL connections are closed when encountering exceptions during disposal

Changes in Octopus Server 2024.2.9206

  • 8857 - Fixed an issue where certificate metadata validation returns a byte array and throws an exception when using non string inputs like otherName.1 = 1.3.6.1.4.1.111.20.2.3;UTF8:<mailto:0111111111@test.gov|0111111111@test.gov>
  • 8853 - Audit event for non-scheduled deployments should indicate it was immediately deployed

Changes in Octopus Server 2024.2.9202

Changes in Octopus Server 2024.2.9193

Breaking Changes
  • 7738 - Octopus no longer supports custom authentication extensions. Read the blog for more details: https://octopus.com/blog/deprecating-authentication-extensions
  • 8615 - Breaking change: Internal changes made to Kustomize step resulting in slight UI differences and OCL changes. The only breaking change is the payload to create the Kustomize step via the API is slightly different so any existing external api calls that attempt to create the Kustomize step with the old payload will fail
Other Changes
  • 8849 - Enable new Project Tenant Variables view by default
  • 8727 - Fixed an issue where async zip deploy failed to clean up packages resulting in failed tasks
  • 8843 - Fixed Add Worker page defaulting to non-existent Kubernetes category
  • 8775 - Added background migration to remove duplicate Build Information commits and work items from Deployments
  • 8787 - Open bulk deployment tasks in the project context instead of the global task view
  • 8789 - Fixed an issue where Kubernetes Object Status didn't run for certain Kubernetes steps when deploying via Kubernetes agents
  • 8784 - Convert EventRetentionRun to use Entity Framework
  • 8352 - Fix bug where machines weren't filtering by deployment target types and shell names
  • 8786 - Converted GitRepositoryReferenceCacheHighWatermark document persistence from JSON store to relational model
  • 8781 - Migrate Deployment Target Metadata Inspection to use Entity Framework
  • 8782 - Normalised OctopusServerInstallationHistory and converted document persistence from JSON to relational model
  • 8783 - Normalised SampleProject and converted document persistence from JSON to relational model
  • 8780 - Edit tenant related variables and save with single "Save" operation. Did you know that you can use variables filter while keeping unsaved changes and save them all later after all variables were updated
  • 8779 - Normalised DeletedSpace and converted document persistence from JSON to relational model
  • 8762 - Normalised ApiKey and converted document persistence from JSON to relational model
  • 8778 - Add a new tab "Build Information" on deployments which lists the build information for all packages part of the deployment
  • 8777 - Custom Octopus extensions are no longer loaded
  • 8719 - Guided failure is now invoked when a step times out
  • 8776 - Cancelling a deployment no longer logs that the execution timeout was reached
  • 8768 - Move task history to a separate tab on the task page and move previous deployments to the overflow menu
  • 8773 - Convert tab keys to whitespace characters in the Code Editor
  • 8772 - Normalised Blob and converted document persistence from JSON to relational model
  • 8770 - Fixed an issue where the SMTP page was not available in the configuration navigation item list
  • 8757 - Release changes in a single deployment record no longer contain duplicate commit and work items for a package
  • 8067 - Fixed Build Information duplication in a deployment caused by multiple releases containing the same package but not the other duplication scenarios
  • 8501 - Release changes in a single deployment record no longer contain duplicate commit and work items for a package
  • 8628 - Add new Kubernetes Agent deployment target for simplified deployments to Kubernetes
  • 8763 - Fix Kubernetes agents being unable to be updated
  • 8765 - Fixed an issue where external feed triggers could fail with an InvalidOperationException
  • 8764 - Converted Artifact document persistence from JSON to columns
  • 8521 - When auditing variable changes, the variable list maintains a consistent order across the two versions, allowing for a more straightforward comparison of the underlying changes
  • 8756 - Fixes issue where sourcing files from the project repository for a version controlled project would fail if the release was created from a scheduled trigger
  • 8758 - Fixed a bug where a project's deployments page wouldn't show any deployments
  • 8739 - Fix: Parent rolling step no longer fails when child and grandchild have manual intervention steps that are resolved
  • 6634 - Fix: Parent deployments does not wait for child deployments to complete after an interruption
  • 8731 - Fix EnabledFeatures not being added for Azure App Service Step
  • 8755 - Normalised Tenant and converted document persistence from JSON to relational model
  • 8264 - Octopus no longer attempts to upgrade Tentacles running in a container
  • 7764 - Updated the library used for SSH. This provides improved compatibility with support for newer algorithms (unblocking support for OpenSSH Server 8.8+). SSH targets can now use SHA256 fingerprints for host verification. When adding new SSH targets, Octopus Server will use SHA256 fingerprinting by default
  • 8526 - Fixed issue whereby when using git-sourced scripts, an Octopus variable was considered invalid content for the repository URL; Octopus Variables can now be used for git repository urls
  • 6493 - Interruptions in child deployments can now be actioned from the parent deployment task log
  • 8753 - Refactor ServiceNow project extension settings to be backwards compatible
  • 8751 - Normalised WorkerPool and converted document persistence from JSON to relational model
  • 8750 - Small UI improvement to Server-Side Apply config options
  • 8657 - Fixed issue where file paths field would not be shown in Deploy Kubernetes YAML step properly when sourcing from a Git repository
  • 8580 - Fix an unexpected error that occurs on the triggers page if a branch has been deleted
  • 8746 - Fix database timeout when upgrading Tentacle
  • 7707 - Created new api worker task lease endpoint
  • 8743 - Re-introduce custom project template ordering on project tenant variables
  • 8543 - Onboarding page is shown instead of deployment overview when the project does not have a deployment process regardless of the project type
  • 8749 - Added project trigger support for release creation from external container image and Helm chart registries
  • 8741 - Improved re-ordering UX (e.g. when re-ordering environments or lifecycle phases)
  • 8742 - The variable Octopus.Project.Slug containing the project slug is now available during deployments and runbook runs
  • 8676 - Deploy Windows Services now bind empty account passwords correctly
  • 8547 - Expose server side apply configuration for Kubernetes steps
  • 8738 - Added task logs for ITSM precondition checks when creating a change request
  • 8723 - Audit events are no longer added for the Deployment and Runbook history table
  • 7669 - Fixed sorting order of Steps in the Deployment Step scope dropdown of the variable editor
  • 8690 - Fixed an issue where the browser's back button would need to be clicked twice to go back to the previous page after clicking into a project
  • 8735 - Allow users to choose to automatically transition a ServiceNow Change Request to either Review or Closed after a successful deployment
  • 8722 - Fixed an issue where splitting insights report by project group would result in an error
  • 8710 - Normalised User and converted document persistence from JSON to relational model
  • 8396 - Ensure task history content is not squished
  • 8728 - Remove possibility of receiving two sets of auth cookies
  • 8726 - Remove call to API endpoint that requires ConfigureServer permission on the Create Deployment page
  • 8725 - Add space switcher tool-tip to reveal truncated name
  • 8701 - Allow creating an emergency CR in ServiceNow when deploying a release of a project to an environment that both are change controlled
  • 8691 - Fixed an issue where reordering list items in some situations would be duplicated and potentially crashing the ui
  • 8716 - Log ClientDenied messages at Debug level
  • 8717 - Fixed an issue where a null DisplayName in an external security group would cause authentication to fail
  • 8715 - Watch for Kubernetes Object Status updates as soon as each batch is applied in the case of the Raw Yaml deployments
  • 8711 - Added telemetry on Tentacle certificate signature algorithms
  • 8678 - Improve initial load of data on project tenants page and prevent old data from being displayed during a connection
  • 8675 - Fix bug where full screen variable editor doesn’t take up all available space
  • 8697 - Resizing browser window can reload and unsaved changes lost
  • 8699 - Reduce query overhead on runbook runs page when there are no runs for the runbook
  • 8708 - Fixed a regression causing HTTP requests to intermittently respond with HTTP 500 errors
  • 8696 - Fix issue where extra machines would appear in the Machine group on deployment steps
  • 8693 - Normalized UserRole and converted document persistence from JSON store to relational model
  • 8686 - Overhauled Step Selection screen to reduce confusion and make it easier for K8s users to choose the appropriate step
  • 8685 - Converted ScopedUserRole document persistence from JSON store to relational model
  • 8564 - Fix pull request URLs for GitLab repositories in a subgroup
  • 8692 - Calamari distribution no longer differentiates between Calamari.exe and Calamari.Cloud.exe
  • 8688 - Converted UserSession document persistence from JSON store to relational model
  • 8670 - Polling worker Tentacles are slower when running many concurrent deployments (or concurrent steps).
  • 8687 - The deployment freeze override dialogue will no longer appear when there are errors creating deployments
  • 8683 - Converted Team document persistence from JSON store to relational model
  • 8679 - Routing to invalid space shows dashboard of default space
  • 8682 - Removed 5 redirect links from Global Search
  • 8680 - Fixed an issue where JIRA integration was using an incorrect link for the release deployment details page resulting in the page not being found
  • 8673 - Add/edit source code in Terraform steps has a small textarea
  • 8668 - Disabled /reporting/deployments-counted-by-week API endpoint
  • 8667 - Disabled project level /git/branches API endpoint
  • 8669 - Disabled Project level /runbooks/all API endpoint
  • 8666 - Fixed an issue where clicking on a worker machine that requires a tentacle upgrade will navigate to the wrong page and display a not found error
  • 8664 - Fixed regression that prevented guest users from viewing config as code projects
  • 8659 - Converted RunbookRunHistory document persistence from JSON store to relational model
  • 7461 - Migrated from ADAL to MSAL for Azure service principal accounts. This change applies to fetching authentication tokens, which are consumed by the management clients for storage accounts, resource groups, and web apps
  • 8652 - Display 'Missing resource' text instead of permission error for project variables
  • 8654 - Always keep "edit" button visible in Tenant Variables page
  • 8636 - Show Octopus version for nodes listed on node page
  • 8467 - Fixed an issue preventing the slugs of existing lifecycles from being updated

Unsure which version is a compatible upgrade? Compare releases.

Looking for older versions of Octopus? Download older versions.