Compare releases

Compare releases and check for compatibility between your existing Octopus Server and new releases.

What's new

These are the most important features you'll get by upgrading from 3.15.8 to 3.16.4

Octopus 3.16

Changes in 3.16

See our release blog post for more details.

New Features

Octopus 3.16 removes the requirement to install Mono when deploying to Linux and MacOS targets. It does this by using a self-contained .NET Core build of Calamari.

Improvements

  • Support for Okta as an authentication provider
  • ScriptCS has been upgraded to version 0.17.1
  • Resolved issue introduced by Let's Encrypt API change

Breaking Changes

The latest version of ScriptCS has introduced some breaking changes so it's important to review their release notes before upgrading. This only affects projects with script steps written using C#, which are powered by ScriptCS under the hood.

Upgrading

This release contains a post-install data fix that may take a few minutes, depending on the size of your Events table, so please ensure you allow time for this to complete. In our testing with 180,000 records in the EventsTable took ~3 seconds to upgrade.

If you are running the watchdog service, please ensure this is stopped during the upgrade.

All of the usual steps for upgrading Octopus Deploy apply.

Octopus 3.15

Changes in 3.15

New Features

This month, we bring you some much requested improvements to multi-tenant deployments, as well as Octopus Server integration with Let's Encrypt and more!

The way machines, accounts and certificates participate in tenanted-deployments can now be explicitly specified. This includes allowing un-tenanted projects to be deployed to tenanted machines. This has been a long-standing gripe with tenanted deployments which we're very happy to resolve.

Our new integration with Let's Encrypt means you can setup an SSL certificate for your Octopus Portal and it will automatically be renewed when it expires. No need to worry about buying a certificate or manually reconfiguring your server.

Read the full post on the Octopus blog.

Improvements

  • If you're automating the setup of the Octopus Server or Tentacles, you'll be happy to hear that we've put some solid effort into cleaning up our console logging. It will now be much easier to get the information you need without having to do string parsing.
  • Granting Edit permissions now automatically assigns View permissions. It always helps to be able to see what you're changing.

Breaking Changes

  • Console output has changed (for the better!), so we advise testing any automation before upgrading to this version.
  • Octopus.Client version 4.19.0 contains API changes corresponding with the multi-tenant deployment participation change, a minor breaking change for anyone using the MultiTenantDeploymentMode on Project resources via the client.

Upgrading

This release contains a post-install data fix that may take some time (depending on the size of your Events table), so please ensure you allow time for this to complete. If you are running the watchdog service, please ensure this is stopped during the upgrade.

As always, read the upgrade guide for more details on upgrading to Octopus 3.15.

Release notes

These are the features and fixes you'll get by upgrading from 3.15.8 to 3.16.4.

Changes in Octopus Server 3.16.4

  • 3751 - Fixed an issue creating deployments for tenants that was introduced in 3.16.3

Changes in Octopus Server 3.16.3

  • 2578 - Fix binding to ARM template fields that have allowedValues
  • 3247 - Add supported OS versions to app manifest to ensure correct OS is reported in logs
  • 3512 - Validation on required bindings for IIS related deployment steps
  • 3523 - Deployments triggered by auto-deploy environment in lifecycle should be assigned the user that created the release
  • 3527 - Release retention policy now correctly considers all deployments to all tenants when deciding which releases are “still on the dashboard”
  • 3623 - Add a check to the Octopus server startup to ensure that the Octopus database is using a case-insensitive collation
  • 3638 - Data on extra step features will be cleared when feature is disabled
  • 3641 - The SQL Database schema upgrades are now performed within a single transaction, meaning all upgrades will either succeed, or roll-back as a whole returning the database to its last known good state
  • 3713 - Fix for unexpected deployment errors when steps or actions had the same name by now ignoring case when validating that steps and actions have unique names
  • 3719 - Clarified log message when Calamari is not installed on a target
  • 3725 - Add help text to environment selector on Run Step template page to make it clear no environment variables are available
  • 3733 - Resolved issue migrating ExtensionConfiguration
  • 3735 - Provide helpful error message if package file with length of 0 is pushed
  • 3737 - Allow azure script steps to have child steps

Changes in Octopus Server 3.16.2

  • 3546 - The server side cross check of downloaded packages versions now uses semantic version rules instead of a strict string comparison
  • 3626 - Octopus now ensures only a single database schema upgrade is running at any given time, making Octopus HA upgrades more robust
  • 3708 - Tentacle retention policy now applies to packages used in Run a Script steps
  • 3723 - The task page now provides better insights into why a task hasn't started yet

Changes in Octopus Server 3.16.1

  • 3697 - Fall back to SHA1 certificates on Windows 2008 32 bit if SHA256 is not supported
  • 3699 - Duplicate variable message is now logged as a warning to make it more discoverable for customers
  • 3701 - Polling tentacles now log errors in the main connection retry loop
  • 3722 - Include guest account enabled state in anonymous metrics reporting

Changes in Octopus Server 3.16.0

  • 3621 - Improved handling of key retrieval and caching in the OpenID Connect provider
  • 3624 - Tentacle installer download links on Create deployment target for Listening or Polling Tentacles now point to the correct URL
  • 3673 - Allow the use of Virtual Directories when configuring Let's Encrypt
  • 3676 - Ensure advanced settings are expanded by default on Let's Encrypt dialog when previous values exist
  • 3677 - Minor Breaking Change Updated ScriptCS to 17.1, which contains some minor breaking changes
  • 3688 - Changed the ServerTask table to refer to OctopusServerNode by Id instead of Name
  • 3691 - Fixed a potential memory leak when making heavy use of subscriptions under certain circumstances
  • 3692 - Redesigned SQL Indexes for ServerTask to improve performance of everything that queries tasks
  • 3694 - Ensure 'restart required' message is shown when disabling web sockets
  • 3696 - Allow using self-contained .NET Calamari for SSH Targets (this means no Mono dependency)
  • 3698 - Added support for Okta as an authentication provider
  • 3702 - Resolved issue that caused the WebUI to become unresponsive when deploying to 100+ tentacles
  • 3705 - Fixed Let's Encrypt support after a breaking change in the Let's Encrypt API

Changes in Octopus Server 3.15.8

  • 3522 - Add audit events when a package is deleted from the built-in repository and keep 1 weeks worth of package repository retention logs
  • 3630 - The --console switch is no longer required by scripts automating the Octopus or Tentacle command-line interface, but is still supported for starting either service interactively if so desired
  • 3665 - Fixed a bug that would sometimes result in a null reference exception when setting a password in a step
  • 3675 - Life Cycle listing in the Library will now be available to those with permission LifecycleView, it used to require LifecycleEdit
  • 3678 - Fixed a bug which was preventing the task list from being filtered by Server Node after upgrading to Octopus 3.15.x
  • 3680 - Corrected Azure account variables masking in log
  • 3681 - Add an audit event when the server retention policy deletes a release
  • 3686 - Ensure 'restart required' message is shown for all relevant configure commands
  • 3687 - Improve error message when Docker feed test cant connect successfully