Deploy a Package

Octopus.TentaclePackage exported 2026-07-22 by Octopus Deploy belongs to ‘Package’ category.

Deploy the contents of a package to one or more deployment targets.

Parameters

When this step is included in a project’s deployment process, the parameters below can be set.

Package ID

Octopus.Action.Package.PackageId (required)

The ID of the package being deployed.

Example: OctoFx.RateService

Feed

Octopus.Action.Package.FeedId (required)

The ID of the package feed from which the package being deployed was pulled.

Example: feeds-123

Package version

Octopus.Action.Package.PackageVersion

The version of the package being deployed.

Example: 1.2.3

Download on target

Octopus.Action.Package.DownloadOnTentacle

If true, the package will be downloaded by the Tentacle, rather than pushed by the Octopus Server.

Allowed values: True, False

Default: False

Custom installation directory

Octopus.Action.Package.CustomInstallationDirectory

If set, a specific directory to which the package will be copied after extraction.

Example: C:\InetPub\WWWRoot\OctoFx

Purge custom installation directory

Octopus.Action.Package.CustomInstallationDirectoryShouldBePurgedBeforeDeployment

If true, all files in the custom installation directory will be deleted before deployment.

Allowed values: True, False

Default: False

Skip if already installed

Octopus.Action.Package.SkipIfAlreadyInstalled

If true, and the version of the package being deployed is already present on the machine, its re-deployment will be skipped (use with caution).

Allowed values: True, False

Default: False

Configuration transforms

Octopus.Action.Package.AutomaticallyRunConfigurationTransformationFiles

Whether to automatically run configuration transformation files.

Allowed values: True, False

Default: True

Configuration variables

Octopus.Action.Package.AutomaticallyUpdateAppSettingsAndConnectionStrings

Whether to automatically update appSettings and connectionStrings entries in configuration files.

Allowed values: True, False

Default: True

Optional features

Enable features by adding their IDs to Octopus.Action.EnabledFeatures (a comma-separated list).

.NET Configuration Transforms Octopus.Features.ConfigurationTransforms

Runs configuration file transforms. Enabled by default for package deployments.

Octopus.Action.Package.AutomaticallyRunConfigurationTransformationFiles

Octopus.Action.Package.AutomaticallyRunConfigurationTransformationFiles

Run default XML transforms (True/False).

Octopus.Action.Package.AdditionalXmlConfigurationTransforms

Octopus.Action.Package.AdditionalXmlConfigurationTransforms

Comma- or newline-separated list of additional transform rules (e.g. Web.Release.config => Web.config).

.NET Configuration Variables Octopus.Features.ConfigurationVariables

Replace appSettings and connectionStrings in .config files. Enabled by default for package deployments.

Octopus.Action.Package.AutomaticallyUpdateAppSettingsAndConnectionStrings

Octopus.Action.Package.AutomaticallyUpdateAppSettingsAndConnectionStrings

Replace appSettings and connectionStrings in .config files (True/False).

Custom Installation Directory Octopus.Features.CustomDirectory

Change where the package is extracted on the target.

Octopus.Action.Package.CustomInstallationDirectory

Octopus.Action.Package.CustomInstallationDirectory

Path on the target to install the package.

Octopus.Action.Package.CustomInstallationDirectoryShouldBePurgedBeforeDeployment

Octopus.Action.Package.CustomInstallationDirectoryShouldBePurgedBeforeDeployment

Purge this directory before installation (True/False).

Octopus.Action.Package.CustomInstallationDirectoryPurgeExclusions

Octopus.Action.Package.CustomInstallationDirectoryPurgeExclusions

Newline-separated list of files/dirs to exclude from purge.

Custom Deployment Scripts Octopus.Features.CustomScripts

Execute scripts during the deployment (pre-deploy, deploy, post-deploy) without embedding them in your package.

Octopus.Action.CustomScripts.PreDeploy.

Octopus.Action.CustomScripts.PreDeploy.<ext>

Pre-deploy script body. The key’s is the script language extension: ps1 (PowerShell), sh (Bash), csx (C#), or py (Python).

Octopus.Action.CustomScripts.Deploy.

Octopus.Action.CustomScripts.Deploy.<ext>

Deploy-phase script body. The key’s is the script language extension: ps1 (PowerShell), sh (Bash), csx (C#), or py (Python).

Octopus.Action.CustomScripts.PostDeploy.

Octopus.Action.CustomScripts.PostDeploy.<ext>

Post-deploy script body. The key’s is the script language extension: ps1 (PowerShell), sh (Bash), csx (C#), or py (Python).

Structured Configuration Variables Octopus.Features.JsonConfigurationVariables

Replace settings in JSON, YAML, XML, and Java Properties files with Octopus variables. Enabled by default for package deployments.

Octopus.Action.Package.JsonConfigurationVariablesTargets

Octopus.Action.Package.JsonConfigurationVariablesTargets

Newline-separated list of target files (e.g. appsettings.json). Wildcards supported.

Substitute Variables in Templates Octopus.Features.SubstituteInFiles

Transforms files using the Octopus #{Variable} substitution syntax. Enabled by default for package deployments.

Octopus.Action.SubstituteInFiles.TargetFiles

Octopus.Action.SubstituteInFiles.TargetFiles

Newline-separated list of file names to transform (relative to package). Wildcards supported.

Octopus.Action.SubstituteInFiles.OutputEncoding

Octopus.Action.SubstituteInFiles.OutputEncoding

Encoding name for the output file (e.g. utf-8). Optional.

IIS6+ Home Directory Octopus.Features.IisHome

Points an existing IIS website or virtual directory’s Home directory to the package extraction path.

Octopus.Action.Package.UpdateIisWebsite

Octopus.Action.Package.UpdateIisWebsite

Attempt to automatically update IIS (True/False).

Octopus.Action.Package.UpdateIisWebsiteName

Octopus.Action.Package.UpdateIisWebsiteName

IIS website name or virtual directory path (e.g. WebsiteName/VirtualDir).

IIS Web Site and Application Pool Octopus.Features.IISWebSite

Creates or reconfigures an IIS website and application pool (IIS7+).

Octopus.Action.IISWebSite.DeploymentType

Octopus.Action.IISWebSite.DeploymentType

Deployment type (webSite, virtualDirectory, webApplication).

Allowed values: webSite, virtualDirectory, webApplication

Octopus.Action.IISWebSite.CreateOrUpdateWebSite

Octopus.Action.IISWebSite.CreateOrUpdateWebSite

Create or update the website (True/False).

Octopus.Action.IISWebSite.Bindings

Octopus.Action.IISWebSite.Bindings

Bindings configuration (protocol, port, host, etc.).

Octopus.Action.IISWebSite.EnableAnonymousAuthentication

Octopus.Action.IISWebSite.EnableAnonymousAuthentication

Enable anonymous authentication (True/False).

Octopus.Action.IISWebSite.EnableBasicAuthentication

Octopus.Action.IISWebSite.EnableBasicAuthentication

Enable basic authentication (True/False).

Octopus.Action.IISWebSite.EnableWindowsAuthentication

Octopus.Action.IISWebSite.EnableWindowsAuthentication

Enable Windows authentication (True/False).

Octopus.Action.IISWebSite.ApplicationPoolFrameworkVersion

Octopus.Action.IISWebSite.ApplicationPoolFrameworkVersion

.NET CLR version for the application pool (e.g. v4.0).

Octopus.Action.IISWebSite.ApplicationPoolIdentityType

Octopus.Action.IISWebSite.ApplicationPoolIdentityType

Application pool identity type (ApplicationPoolIdentity, LocalService, LocalSystem, NetworkService, SpecificUser). Use SpecificUser to run as a custom account.

Allowed values: ApplicationPoolIdentity, LocalService, LocalSystem, NetworkService, SpecificUser

Red Gate Database Octopus.Features.RedGateDatabase

Red Gate database deployment support. This feature is deprecated in the UI and is not documented further here.

Windows Service Octopus.Features.WindowsService

Creates or reconfigures a Windows Service using sc.exe.

Octopus.Action.WindowsService.CreateOrUpdateService

Octopus.Action.WindowsService.CreateOrUpdateService

Create or update the service.

Allowed values: True, False

Octopus.Action.WindowsService.ServiceName

Octopus.Action.WindowsService.ServiceName

Windows service name.

Octopus.Action.WindowsService.DisplayName

Octopus.Action.WindowsService.DisplayName

Optional display name of the Windows Service.

Octopus.Action.WindowsService.Description

Octopus.Action.WindowsService.Description

User-friendly description of the service.

Octopus.Action.WindowsService.ExecutablePath

Octopus.Action.WindowsService.ExecutablePath

Path to the service executable (relative to installation directory).

Octopus.Action.WindowsService.Arguments

Octopus.Action.WindowsService.Arguments

Command line arguments passed to the service executable.

Octopus.Action.WindowsService.ServiceAccount

Octopus.Action.WindowsService.ServiceAccount

Built-in account the service runs under (LocalSystem, NT Authority\NetworkService, NT Authority\LocalService, _CUSTOM). Use _CUSTOM to run as a specific user.

Allowed values: LocalSystem, NT Authority\NetworkService, NT Authority\LocalService, _CUSTOM

Octopus.Action.WindowsService.CustomAccountName

Octopus.Action.WindowsService.CustomAccountName

Windows/domain account the service runs under when ServiceAccount is _CUSTOM.

Octopus.Action.WindowsService.CustomAccountPassword

Octopus.Action.WindowsService.CustomAccountPassword

Password for the custom account (when ServiceAccount is _CUSTOM).

Octopus.Action.WindowsService.StartMode

Octopus.Action.WindowsService.StartMode

Service start type (auto, delayed-auto, demand, disabled, unchanged).

Allowed values: auto, delayed-auto, demand, disabled, unchanged

Octopus.Action.WindowsService.DesiredStatus

Octopus.Action.WindowsService.DesiredStatus

Desired state after deployment (Default, Started, Stopped, Unchanged).

Allowed values: Started, Stopped, Unchanged, Default

Octopus.Action.WindowsService.Dependencies

Octopus.Action.WindowsService.Dependencies

Service dependencies separated by forward slashes.

NGINX Web Server Octopus.Features.Nginx

Configures an NGINX web server.

Octopus.Action.Nginx.Server.HostName

Octopus.Action.Nginx.Server.HostName

The Host header the server listens on. May be an exact name, a wildcard, or a regular expression; leave empty to match any Host header.

Octopus.Action.Nginx.Server.Bindings

Octopus.Action.Nginx.Server.Bindings

Server bindings as a JSON-encoded collection (protocol, port, IP address, optional SSL certificate).

Octopus.Action.Nginx.Server.Locations

Octopus.Action.Nginx.Server.Locations

Virtual server locations as a JSON-encoded collection (path, directives, headers, optional reverse proxy settings).

Octopus.Action.Nginx.Server.ConfigName

Octopus.Action.Nginx.Server.ConfigName

Base name for the NGINX config file (supports variables). Defaults to the package id.

PowerShell Edition Octopus.Features.SelectPowerShellEditionForWindows

Specify the edition of PowerShell used during deployments on Windows.

Octopus.Action.PowerShell.Edition

Octopus.Action.PowerShell.Edition

PowerShell edition on Windows (Desktop or Core).

Allowed values: Desktop, Core

Step configuration using OCL

Example in Octopus Configuration Language (OCL):

step "deploy-package" {
    name = "Deploy Package"
    properties = {
        Octopus.Action.TargetRoles = "app-server"
    }

    action {
        action_type = "Octopus.TentaclePackage"
        properties = {
            Octopus.Action.Package.DownloadOnTentacle = "False"
            Octopus.Action.Package.FeedId = "octopus-server-built-in"
            Octopus.Action.Package.PackageId = "MyApp"
            Octopus.Action.RunOnServer = "false"
        }

        packages {
            acquisition_location = "Server"
            feed = "octopus-server-built-in"
            package_id = "MyApp"
        }
    }
}

Page updated on Wednesday, July 22, 2026