Octopus.AzureAppService exported 2026-07-22 by Octopus Deploy belongs to ‘Azure’ category.
Deploy a package or container image to an Azure App Service using Zip Deploy.
Parameters
When this step is included in a project’s deployment process, the parameters below can be set.
Deployment Type
Octopus.Action.Azure.DeploymentType
Select whether to deploy from a package (zip, WAR, NuGet) or a container image.
Allowed values: Package, Container
Default: Package
Deployment Slot
Octopus.Action.Azure.DeploymentSlot
The slot to deploy to. Slots allow deploying different versions of your app to the same app service. Octopus variable expressions can be used.
Example: #{DeploymentSlot}
Application Settings
Octopus.Action.Azure.AppSettings
App Service Application Settings provided as JSON, using the same schema as the bulk edit in the Azure portal. Octopus variable-binding syntax may be used.
Example: [{"name": "Greeting", "value": "#{Greeting}", "slotSetting": false}]
Connection Strings
Octopus.Action.Azure.ConnectionStrings
Connection strings provided as JSON, using the same schema as the bulk edit in the Azure portal. Octopus variable-binding syntax may be used.
Example: [{"name": "AcmeDB", "value": "#{Acme.Database.ConnectionString}", "type": "SQLAzure", "slotSetting": false}]
Optional features
Enable features by adding their IDs to Octopus.Action.EnabledFeatures (a comma-separated list).
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.
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.
.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).
.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).
Step configuration using OCL
Example in Octopus Configuration Language (OCL):
step "deploy-azure-app-service" {
name = "Deploy Azure App Service"
properties = {
Octopus.Action.TargetRoles = "azure-app-service"
}
action {
action_type = "Octopus.AzureAppService"
properties = {
Octopus.Action.Azure.DeploymentType = "Package"
Octopus.Action.Package.DownloadOnTentacle = "False"
Octopus.Action.Package.FeedId = "octopus-server-built-in"
Octopus.Action.Package.PackageId = "MyApp"
Octopus.Action.RunOnServer = "false"
OctopusUseBundledTooling = "False"
}
packages {
acquisition_location = "Server"
feed = "octopus-server-built-in"
package_id = "MyApp"
}
}
} Page updated on Wednesday, July 22, 2026