Child pages
  • OctopusDeploy Plugin
Skip to end of metadata
Go to start of metadata

Plugin Information

View OctopusDeploy on the plugin site for more information.

Allows users to create and deploy releases with OctopusDeploy

Releases

1.8.1

Bugfix - When a specified Octopus URL ended with a / the Build Summary links would be incorrectly truncated by one character.

1.8.0

Feature Enhancement - Packages can now be specified by Package Name or by Step Name.

Contributed by Cristian Uroz

1.7.0

New Feature - Supports configuring and using multiple Octopus servers. Configure in the Jenkins global configuration, and use per-project in the Deployment or Release post build step. Found under Advanced Options.

Contributed by Wassim Ben Ayed

1.6.0

New Feature - Support the ability to specify a channel while creating a release.

1.5.0

New Feature - The ability to specify a tenant when deploying in multi-tenant mode.
Contributed by Kees van Ginkel

1.4.0

New Feature - set variables when executing a deployment. 
Contributed by Stephen Rufle

1.3.1

Bugfix - Release notes from SCM now properly include changeset from current build.

1.3.0

Initial release on Jenkins-CI

OctopusDeploy Plugin

Connecting OctopusDeploy to the Jenkins workflow. Integration with OctopusDeploy is achieved via the REST API, not the Octo.exe tool.

Compatibility

Built initially with, and compatible with OctopusDeploy 2.6.
Tested and compatible with OctopusDeploy 3.0, 3.1, 3.2, and 3.4.

Main Components

Post-build step - Create Release

Creates a new release entry for a given project. Optionally also deploys the newly created release to a given environment. This component will only run if the build has been successful up until the point the post-build step is invoked.

Post-build step - Execute Deployment

Sends a release to a given environment. This component will only run if the build has been successful up until the point the post-build step is invoked.

Features

REST API Integration

This plugin implements part of the REST API for OctopusDeploy in order to retrieve data and execute commands on the server. It makes use of an API Key which is configured in the Global Settings Jenkins configuration page. This API Key is used for all interactions with OctopusDeploy.

Environment Variable Support

Environment variables can be used in many fields in the Release and Deployment components of this plugin. Any variable, written as

${VARIABLE_NAME}

will get replaced by that variable's value. If there is no value set for that variable, the token is not replaced.

Custom Release Notes

The Release component allows Release Notes to be gathered from SCM, collecting commit messages from the current build all the way back to the last successful build, or it can load in Release Notes from a file. There is also an option to provide a link back to the job run that created the release in the Release Notes, allowing easy navigation between Jenkins jobs and OctopusDeploy Releases.

Each component provides a link to the Release or Deployment that it created. These links are provided in the console output of the job as well as showing up as a build badge, and in the Build Summary.

Wait-for-Deployment

The Deployment component can optionally wait for the completion of the Deployment, and record the status. If the status returns as failed, the Jenkins job will be marked as a failure.

Autocomplete

Some entry fields, like Project and Environment support auto-completion, pulling a list of names to choose from from the OctopusDeploy server.

Octopus variables

As of 1.4.0, this plugin can set Octopus variables for use in deployment.

Multi tenant support

As of 1.5.0, this plugin can submit a Tenant to the deployment step for use in Octopus' multi-tenant mode.

Creating release on specific Channels

As of 1.6.0, this plugin can create releases on specific Channels as defined by users.

5 Comments

  1. Is there a character limit (30 characters?) on the Octopus Deploy server URL parameter? In our environment Octopus server listens on a non-standard port and the URL is 32 characters long. I am able to mention the server URL just fine in the Manage Jenkins section. However, in the jenkins job, the release and deployment links ignore the last two characters of the server URL.

    1. Nothing in the plugin's code enforces any character limit

      1. It's weird. The build runs fine, it creates the octopus release and initiates the deployment, but in the Jenkins UI the build execution summary shows the Octopus links for Release and Deploy incorrectly. Do you know what might be causing the the server URL to be trimmed?

        1. I don't see anything that would be causing this after a quick look, but if you think there's a bug in the code that needs to be fixed, please file an issue.

          1. I don't think it liked the '/' towards the end of the Octopus server URL. I removed that and it started working. Thank you!

Write a comment…