Octopus Deploy 3.1 Pre-Release

Published on: 27 Aug 2015 by: Michael Richardson

Octopus Deploy 3.1 is now available as a pre-release.

Features

.NET 4.5

Octopus Deploy 3.1 will require .NET 4.5 to be installed on the server. While Tentacles won't require .NET 4.5, it will need to be installed if you wish to utilize TLS 1.2.

Reporting

Octopus 3.1 adds a reporting feature that makes it easy to produce reports over your deployment history, using your preferred reporting tools.

Currently Octopus doesn't display this reporting data in the user interface anywhere, but we do expose raw data that you can query or consume in your favourite reporting tools.

Raw data is provided in two ways:

  • An an XML feed, which can be consumed by tools like Microsoft Excel or PowerBI (preferred), or programmatically
  • As a table in the Octopus SQL database

The data allows you to report on questions like:

  • How many deployments have we done, over what period? For which projects or environments?
  • How many deployments were successful? How many failed?
  • How long do deployments take on average?

To help you get started, we provide a sample Excel spreadsheet that you can connect to your own Octopus server.

Sample Report

For more information, see our reporting documentation.

Tentacle upgrades and TLS 1.2

We announced recently that Octopus 3.1 would require .NET 4.5. Now that we are moving to .NET 4.5, Octopus/Tentacle communications can use TLS 1.2.

When establishing a connection, Octopus and Tentacle will negotiate for the best protocol out of: TLS 1.0, 1.1 and 1.2. You can however tell Windows to disable TLS 1.0 or 1.1 (or any other protocol) by configuring SChannel, which overrides the settings Octopus/Tentacle use. A free tool which allows you to configure this is IISCrypto

If you want to be TLS 1.2 only, the process would be:

  • Upgrade Octopus to 3.1
  • Upgrade Tentacles to 3.1
  • Use that tool/modify the registry to disable TLS 1.0 and 1.1

One thing to note is that if you already have 3.0 Tentacles, they aren't required to be upgraded to 3.1, since the changes aren't mandatory. On the Environments tab you'll see buttons to upgrade the Tentacles, but if for some reason you need to stick to the 3.0 version of Tentacle, you can.

Azure step-types

As Paul recently posted, for 3.1 we are changing our approach to deploying to Azure.

We have introduced three new step types:

  • Azure Cloud Service
  • Azure Web App
  • Azure PowerShell

Azure Step Types

Hopefully we've kept the best of the 3.0 changes, but re-enabled some automatic infrastructure-provisioning scenarios.

For example, looking at the cloud-service template, you'll notice we still have Accounts, and the drop-downs to select the service and storage account are still there, but all fields can be switched to be bound to a variable-expression (as storage account and slot have in the image below).

Cloud Service Template

Any PowerShell run as part of a Cloud Service or Web App step will still be executed with the Azure PowerShell module automatically loaded, and the subscription associated with the chosen account selected.

We have also updated the bundled Azure PowerShell module to version 0.9.5.

Migrating 2.6 Azure Steps

For 3.0, we were unable to migrate 2.6 Azure Cloud Service steps into the new Azure Targets. With 3.1, any existing Azure steps can be migrated from 2.6, and will be able to be deployed without modification.

Deprecating the 3.0 targets

We haven't removed the 3.0 Azure targets in 3.1. We have added a warning message, indicating that they have been deprecated. While we don't have a strict deadline for their removal, we don't intend to support both models for the long term, and we encourage you to begin to move your 3.0 targets into the 3.1 step types. We do apologize to those who have been inconvenienced by these changes and we do hope you understand. This wasn't a decision made lightly, but we feel that this is the best option for the future.

Deploying to sub-directories of a Web App

Since we added the ability to deploy to Azure Web Apps, a much requested feature has been the ability to deploy to a location other than the site root. So we've added a 'Physical Path' field to the Azure Web App step.

Web App Physical Path

This will enable scenarios such as the deployment of Azure Web Jobs separately from an existing web site.

In Summary

This is a pre-release, so we encourage any of you who have been waiting for these features to grab it and try them out. We're aiming to make it an official release within the next two weeks.

We know a lot of you have been waiting for some upcoming features like Branching Support and Multi Tenancy. These are coming next. We had aimed for a 3.1 release for these, but the Azure changes took priority. We've updated our roadmap accordingly and are already working on the 3.2 features.

Happy Deployments!