Octopus 1.5 with Azure and FTP deployments, plus ScriptCS support!

Published on: 25 Mar 2013
Octopus Deploy now supports Windows Azure

Today we released Octopus Deploy 1.5, which features support for automated deployment of Windows Azure cloud services, as well as deployments via FTP/FTPS.

Azure cloud services deployments

By packaging your cloud service package into a NuGet package, Octopus can now automatically deploy and promote your application to Windows Azure using a new deployment step type.

Azure step definition

Support for Azure contains a few cool features:

  • Octopus can automatically configure your .cscfg prior to deployment
  • Octopus can keep the instance count already defined on the Azure portal, or use new values from your .cscfg

You can learn more about these features on our documentation page for the Windows Azure feature.

No Tentacle is required for Azure deployments; the package is deployed directly from the Octopus server.

FTP/FTPS deployments

Octopus can also deploy over FTP/FTPS, which means Octopus can now work with a large variety of commercial web hosts as well as Windows Azure websites.

FTP deployment details

As with the Azure deployment step, this step is executed on the Octopus server, so no Tentacle is required. Octopus will still perform XML configuration transforms and run PowerShell scripts, so you can apply environment-specific configuration prior to deployment.

Learn more about this on the Octopus FTP documentation page.

ScriptCS

ScriptCS is an open source project that allows you to write scripts in C#. In Octopus it functions as an alternative to Windows PowerShell.

For example, where you might have used Deploy.ps1, you can instead use Deploy.csx (a ScriptCS script). Octopus will then invoke ScriptCS over your script.

As with PowerShell scripts, Octopus makes your project variables (as well as inbuilt variables) available to your ScriptCS scripts. For example, this script will print the name of the environment being deployed to:

using System;

Console.WriteLine("Deploying to: " + Octopus.Parameters["OctopusEnvironmentName"]);

Improving package step options

When deploying a NuGet package to a Tentacle, you could define so-called "special variables" to configure settings like where to extract the package to, or the name of an IIS site to update.

Now these settings have been moved to the step definition page, making them much easier to find and set:

New package options

Need to use a different setting for different environments? You can make use of variable substitution syntax and our new variable insertion drop down:

Inserting a variable

Learn more: Webinar 28th of March

This release also includes a number of bug fixes and usability improvements. If you want to learn more, come along to our free webinar on the 28th of March.

Happy deployments!