AzureRmWebAppDeployment@4 - Tarefa de implantação do Serviço de Aplicativo do Azure v4
Use esta tarefa para implantar no Serviço de Aplicativo do Azure um aplicativo Web, móvel ou de API usando Docker, Java, .NET, .NET Core, Node.js, PHP, Python ou Ruby.
Observação
Use AzureFunctionApp@1 para implantar aplicativos do Azure Functions.
Atualize os Serviços de Aplicativo do Azure no Windows, o Aplicativo Web no Linux com imagens internas ou contêineres do Docker, ASP.NET, aplicativos Web baseados em .NET Core, PHP, Python ou Node.js, Aplicativos de Função no Windows ou Linux com Contêineres do Docker, Aplicativos Móveis, aplicativos de API e Trabalhos da Web usando APIs REST do Web Deploy/Kudu.
Sintaxe
# Azure App Service deploy v4
# Deploy to Azure App Service a web, mobile, or API app using Docker, Java, .NET, .NET Core, Node.js, PHP, Python, or Ruby.
- task: AzureRmWebAppDeployment@4
inputs:
ConnectionType: 'AzureRM' # 'AzureRM' | 'PublishProfile'. Required. Connection type. Default: AzureRM.
azureSubscription: # string. Alias: ConnectedServiceName. Required when ConnectionType = AzureRM. Azure subscription.
#PublishProfilePath: '$(System.DefaultWorkingDirectory)/**/*.pubxml' # string. Required when ConnectionType = PublishProfile. Publish profile path. Default: $(System.DefaultWorkingDirectory)/**/*.pubxml.
#PublishProfilePassword: # string. Required when ConnectionType = PublishProfile. Publish profile password.
appType: 'webApp' # 'webApp' | 'webAppLinux' | 'webAppContainer' | 'webAppHyperVContainer' | 'functionApp' | 'functionAppLinux' | 'functionAppContainer' | 'apiApp' | 'mobileApp'. Alias: WebAppKind. Required when ConnectionType = AzureRM. App Service type. Default: webApp.
WebAppName: # string. Required when ConnectionType = AzureRM. App Service name.
#deployToSlotOrASE: false # boolean. Alias: DeployToSlotOrASEFlag. Optional. Use when ConnectionType = AzureRM && WebAppKind != "". Deploy to Slot or App Service Environment. Default: false.
#ResourceGroupName: # string. Required when DeployToSlotOrASEFlag = true. Resource group.
#SlotName: 'production' # string. Required when DeployToSlotOrASEFlag = true. Slot. Default: production.
#DockerNamespace: # string. Required when WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppKind = webAppHyperVContainer. Registry or Namespace.
#DockerRepository: # string. Required when WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppKind = webAppHyperVContainer. Image.
#DockerImageTag: # string. Optional. Use when WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppKind = webAppHyperVContainer. Tag.
#VirtualApplication: # string. Optional. Use when WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && WebAppKind != functionApp && webAppKind != functionAppLinux && WebAppKind != "". Virtual application.
#packageForLinux: '$(System.DefaultWorkingDirectory)/**/*.zip' # string. Alias: Package. Required when ConnectionType = PublishProfile || WebAppKind = webApp || WebAppKind = apiApp || WebAppKind = functionApp || WebAppKind = mobileApp || WebAppKind = webAppLinux || webAppKind = functionAppLinux. Package or folder. Default: $(System.DefaultWorkingDirectory)/**/*.zip.
#RuntimeStack: # string. Optional. Use when WebAppKind = webAppLinux. Runtime Stack.
#RuntimeStackFunction: # 'DOTNET|2.2' | 'DOTNET|3.1' | 'JAVA|8' | 'JAVA|11' | 'NODE|8' | 'NODE|10' | 'NODE|12' | 'NODE|14' | 'PYTHON|3.6' | 'PYTHON|3.7' | 'PYTHON|3.8'. Optional. Use when WebAppKind = functionAppLinux. Runtime Stack.
#StartupCommand: # string. Optional. Use when WebAppKind = webAppLinux || WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppKind = functionAppLinux || WebAppKind = webAppHyperVContainer. Startup command.
# Post Deployment Action
#ScriptType: # 'Inline Script' | 'File Path'. Optional. Use when ConnectionType = AzureRM && WebAppKind != "" && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer. Deployment script type.
#InlineScript: ':: You can provide your deployment commands here. One command per line.' # string. Required when ScriptType == Inline Script && ConnectionType = AzureRM && WebAppKind != "" && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer. Inline Script. Default: :: You can provide your deployment commands here. One command per line..
#ScriptPath: # string. Required when ScriptType == File Path && ConnectionType = AzureRM && WebAppKind != "" && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer. Deployment script path.
# File Transforms & Variable Substitution Options
#WebConfigParameters: # string. Optional. Use when WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war. Generate web.config parameters for Python, Node.js, Go and Java apps.
#enableXmlTransform: false # boolean. Alias: XmlTransformation. Optional. Use when WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war. XML transformation. Default: false.
#enableXmlVariableSubstitution: false # boolean. Alias: XmlVariableSubstitution. Optional. Use when WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war. XML variable substitution. Default: false.
#JSONFiles: # string. Optional. Use when WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war. JSON variable substitution.
# Application and Configuration Settings
#AppSettings: # string. Optional. Use when ConnectionType = AzureRM. App settings.
#ConfigurationSettings: # string. Optional. Use when ConnectionType = AzureRM. Configuration settings.
# Additional Deployment Options
#enableCustomDeployment: false # boolean. Alias: UseWebDeploy. Optional. Use when ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Select deployment method. Default: false.
#DeploymentType: 'webDeploy' # 'webDeploy' | 'zipDeploy' | 'runFromZip'. Required when UseWebDeploy == true && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Deployment method. Default: webDeploy.
#TakeAppOfflineFlag: true # boolean. Optional. Use when UseWebDeploy == true && DeploymentType != runFromZip && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Take App Offline. Default: true.
#SetParametersFile: # string. Optional. Use when UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. SetParameters file.
#RemoveAdditionalFilesFlag: false # boolean. Optional. Use when UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Remove additional files at destination. Default: false.
#ExcludeFilesFromAppDataFlag: true # boolean. Optional. Use when UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Exclude files from the App_Data folder. Default: true.
#AdditionalArguments: '-retryAttempts:6 -retryInterval:10000' # string. Optional. Use when UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Additional arguments. Default: -retryAttempts:6 -retryInterval:10000.
#RenameFilesFlag: true # boolean. Optional. Use when UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Rename locked files. Default: true.
# Azure App Service deploy v4
# Deploy to Azure App Service a web, mobile, or API app using Docker, Java, .NET, .NET Core, Node.js, PHP, Python, or Ruby.
- task: AzureRmWebAppDeployment@4
inputs:
ConnectionType: 'AzureRM' # 'AzureRM' | 'PublishProfile'. Required. Connection type. Default: AzureRM.
azureSubscription: # string. Alias: ConnectedServiceName. Required when ConnectionType = AzureRM. Azure subscription.
#PublishProfilePath: '$(System.DefaultWorkingDirectory)/**/*.pubxml' # string. Required when ConnectionType = PublishProfile. Publish profile path. Default: $(System.DefaultWorkingDirectory)/**/*.pubxml.
#PublishProfilePassword: # string. Required when ConnectionType = PublishProfile. Publish profile password.
appType: 'webApp' # 'webApp' | 'webAppLinux' | 'webAppContainer' | 'webAppHyperVContainer' | 'functionApp' | 'functionAppLinux' | 'functionAppContainer' | 'apiApp' | 'mobileApp'. Alias: WebAppKind. Required when ConnectionType = AzureRM. App Service type. Default: webApp.
WebAppName: # string. Required when ConnectionType = AzureRM. App Service name.
#deployToSlotOrASE: false # boolean. Alias: DeployToSlotOrASEFlag. Optional. Use when ConnectionType = AzureRM && WebAppKind != "". Deploy to Slot or App Service Environment. Default: false.
#ResourceGroupName: # string. Required when DeployToSlotOrASEFlag = true. Resource group.
#SlotName: 'production' # string. Required when DeployToSlotOrASEFlag = true. Slot. Default: production.
#DockerNamespace: # string. Required when WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppkind = webAppHyperVContainer. Registry or Namespace.
#DockerRepository: # string. Required when WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppkind = webAppHyperVContainer. Image.
#DockerImageTag: # string. Optional. Use when WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppkind = webAppHyperVContainer. Tag.
#VirtualApplication: # string. Optional. Use when WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != functionApp && webAppKind != functionAppLinux && WebAppKind != "". Virtual application.
#packageForLinux: '$(System.DefaultWorkingDirectory)/**/*.zip' # string. Alias: Package. Required when ConnectionType = PublishProfile || WebAppKind = webApp || WebAppKind = apiApp || WebAppKind = functionApp || WebAppKind = mobileApp || WebAppKind = webAppLinux || webAppKind = functionAppLinux. Package or folder. Default: $(System.DefaultWorkingDirectory)/**/*.zip.
#RuntimeStack: # string. Optional. Use when WebAppKind = webAppLinux. Runtime Stack.
#RuntimeStackFunction: # 'DOTNET|2.2' | 'DOTNET|3.1' | 'JAVA|8' | 'JAVA|11' | 'NODE|8' | 'NODE|10' | 'NODE|12' | 'NODE|14' | 'PYTHON|3.6' | 'PYTHON|3.7' | 'PYTHON|3.8'. Optional. Use when WebAppKind = functionAppLinux. Runtime Stack.
#StartupCommand: # string. Optional. Use when WebAppKind = webAppLinux || WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppKind = functionAppLinux || WebAppkind = webAppHyperVContainer. Startup command.
# Post Deployment Action
#ScriptType: # 'Inline Script' | 'File Path'. Optional. Use when ConnectionType = AzureRM && WebAppKind != "" && WebAppKind != webAppContainer && WebAppkind != functionAppContainer. Deployment script type.
#InlineScript: ':: You can provide your deployment commands here. One command per line.' # string. Required when ScriptType == Inline Script && ConnectionType = AzureRM && WebAppKind != "" && WebAppKind != webAppContainer && WebAppkind != functionAppContainer. Inline Script. Default: :: You can provide your deployment commands here. One command per line..
#ScriptPath: # string. Required when ScriptType == File Path && ConnectionType = AzureRM && WebAppKind != "" && WebAppKind != webAppContainer && WebAppkind != functionAppContainer. Deployment script path.
# File Transforms & Variable Substitution Options
#WebConfigParameters: # string. Optional. Use when WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war. Generate web.config parameters for Python, Node.js, Go and Java apps.
#enableXmlTransform: false # boolean. Alias: XmlTransformation. Optional. Use when WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war. XML transformation. Default: false.
#enableXmlVariableSubstitution: false # boolean. Alias: XmlVariableSubstitution. Optional. Use when WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war. XML variable substitution. Default: false.
#JSONFiles: # string. Optional. Use when WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war. JSON variable substitution.
# Application and Configuration Settings
#AppSettings: # string. Optional. Use when ConnectionType = AzureRM. App settings.
#ConfigurationSettings: # string. Optional. Use when ConnectionType = AzureRM. Configuration settings.
# Additional Deployment Options
#enableCustomDeployment: false # boolean. Alias: UseWebDeploy. Optional. Use when ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Select deployment method. Default: false.
#DeploymentType: 'webDeploy' # 'webDeploy' | 'zipDeploy' | 'runFromZip'. Required when UseWebDeploy == true && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Deployment method. Default: webDeploy.
#TakeAppOfflineFlag: true # boolean. Optional. Use when UseWebDeploy == true && DeploymentType != runFromZip && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Take App Offline. Default: true.
#SetParametersFile: # string. Optional. Use when UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. SetParameters file.
#RemoveAdditionalFilesFlag: false # boolean. Optional. Use when UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Remove additional files at destination. Default: false.
#ExcludeFilesFromAppDataFlag: true # boolean. Optional. Use when UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Exclude files from the App_Data folder. Default: true.
#AdditionalArguments: '-retryAttempts:6 -retryInterval:10000' # string. Optional. Use when UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Additional arguments. Default: -retryAttempts:6 -retryInterval:10000.
#RenameFilesFlag: true # boolean. Optional. Use when UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Rename locked files. Default: true.
# Azure App Service deploy v4
# Deploy to Azure App Service a web, mobile, or API app using Docker, Java, .NET, .NET Core, Node.js, PHP, Python, or Ruby.
- task: AzureRmWebAppDeployment@4
inputs:
ConnectionType: 'AzureRM' # 'AzureRM' | 'PublishProfile'. Required. Connection type. Default: AzureRM.
azureSubscription: # string. Alias: ConnectedServiceName. Required when ConnectionType = AzureRM. Azure subscription.
#PublishProfilePath: '$(System.DefaultWorkingDirectory)/**/*.pubxml' # string. Required when ConnectionType = PublishProfile. Publish profile path. Default: $(System.DefaultWorkingDirectory)/**/*.pubxml.
#PublishProfilePassword: # string. Required when ConnectionType = PublishProfile. Publish profile password.
appType: 'webApp' # 'webApp' | 'webAppLinux' | 'webAppContainer' | 'functionApp' | 'functionAppLinux' | 'functionAppContainer' | 'apiApp' | 'mobileApp'. Alias: WebAppKind. Required when ConnectionType = AzureRM. App Service type. Default: webApp.
WebAppName: # string. Required when ConnectionType = AzureRM. App Service name.
#deployToSlotOrASE: false # boolean. Alias: DeployToSlotOrASEFlag. Optional. Use when ConnectionType = AzureRM && WebAppKind != "". Deploy to Slot or App Service Environment. Default: false.
#ResourceGroupName: # string. Required when DeployToSlotOrASEFlag = true. Resource group.
#SlotName: 'production' # string. Required when DeployToSlotOrASEFlag = true. Slot. Default: production.
#DockerNamespace: # string. Required when WebAppKind = webAppContainer || WebAppkind = functionAppContainer. Registry or Namespace.
#DockerRepository: # string. Required when WebAppKind = webAppContainer || WebAppkind = functionAppContainer. Image.
#DockerImageTag: # string. Optional. Use when WebAppKind = webAppContainer || WebAppkind = functionAppContainer. Tag.
#VirtualApplication: # string. Optional. Use when WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != functionApp && webAppKind != functionAppLinux && WebAppKind != "". Virtual application.
#packageForLinux: '$(System.DefaultWorkingDirectory)/**/*.zip' # string. Alias: Package. Required when ConnectionType = PublishProfile || WebAppKind = webApp || WebAppKind = apiApp || WebAppKind = functionApp || WebAppKind = mobileApp || WebAppKind = webAppLinux || webAppKind = functionAppLinux. Package or folder. Default: $(System.DefaultWorkingDirectory)/**/*.zip.
#RuntimeStack: # string. Optional. Use when WebAppKind = webAppLinux. Runtime Stack.
#RuntimeStackFunction: # 'DOTNET|2.2' | 'DOTNET|3.1' | 'JAVA|8' | 'JAVA|11' | 'NODE|8' | 'NODE|10' | 'NODE|12' | 'NODE|14' | 'PYTHON|3.6' | 'PYTHON|3.7' | 'PYTHON|3.8'. Optional. Use when WebAppKind = functionAppLinux. Runtime Stack.
#StartupCommand: # string. Optional. Use when WebAppKind = webAppLinux || WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppKind = functionAppLinux. Startup command.
# Post Deployment Action
#ScriptType: # 'Inline Script' | 'File Path'. Optional. Use when ConnectionType = AzureRM && WebAppKind != "" && WebAppKind != webAppContainer && WebAppkind != functionAppContainer. Deployment script type.
#InlineScript: ':: You can provide your deployment commands here. One command per line.' # string. Required when ScriptType == Inline Script && ConnectionType = AzureRM && WebAppKind != "" && WebAppKind != webAppContainer && WebAppkind != functionAppContainer. Inline Script. Default: :: You can provide your deployment commands here. One command per line..
#ScriptPath: # string. Required when ScriptType == File Path && ConnectionType = AzureRM && WebAppKind != "" && WebAppKind != webAppContainer && WebAppkind != functionAppContainer. Deployment script path.
# File Transforms & Variable Substitution Options
#WebConfigParameters: # string. Optional. Use when WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war. Generate web.config parameters for Python, Node.js, Go and Java apps.
#enableXmlTransform: false # boolean. Alias: XmlTransformation. Optional. Use when WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war. XML transformation. Default: false.
#enableXmlVariableSubstitution: false # boolean. Alias: XmlVariableSubstitution. Optional. Use when WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war. XML variable substitution. Default: false.
#JSONFiles: # string. Optional. Use when WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war. JSON variable substitution.
# Application and Configuration Settings
#AppSettings: # string. Optional. Use when ConnectionType = AzureRM. App settings.
#ConfigurationSettings: # string. Optional. Use when ConnectionType = AzureRM. Configuration settings.
# Additional Deployment Options
#enableCustomDeployment: false # boolean. Alias: UseWebDeploy. Optional. Use when ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Select deployment method. Default: false.
#DeploymentType: 'webDeploy' # 'webDeploy' | 'zipDeploy' | 'runFromZip'. Required when UseWebDeploy == true && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Deployment method. Default: webDeploy.
#TakeAppOfflineFlag: true # boolean. Optional. Use when UseWebDeploy == true && DeploymentType != runFromZip && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Take App Offline. Default: true.
#SetParametersFile: # string. Optional. Use when UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. SetParameters file.
#RemoveAdditionalFilesFlag: false # boolean. Optional. Use when UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Remove additional files at destination. Default: false.
#ExcludeFilesFromAppDataFlag: true # boolean. Optional. Use when UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Exclude files from the App_Data folder. Default: true.
#AdditionalArguments: '-retryAttempts:6 -retryInterval:10000' # string. Optional. Use when UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Additional arguments. Default: -retryAttempts:6 -retryInterval:10000.
#RenameFilesFlag: true # boolean. Optional. Use when UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Rename locked files. Default: true.
# Azure App Service deploy v4
# Deploy to Azure App Service a web, mobile, or API app using Docker, Java, .NET, .NET Core, Node.js, PHP, Python, or Ruby.
- task: AzureRmWebAppDeployment@4
inputs:
ConnectionType: 'AzureRM' # 'AzureRM' | 'PublishProfile'. Required. Connection type. Default: AzureRM.
azureSubscription: # string. Alias: ConnectedServiceName. Required when ConnectionType = AzureRM. Azure subscription.
#PublishProfilePath: '$(System.DefaultWorkingDirectory)/**/*.pubxml' # string. Required when ConnectionType = PublishProfile. Publish profile path. Default: $(System.DefaultWorkingDirectory)/**/*.pubxml.
#PublishProfilePassword: # string. Required when ConnectionType = PublishProfile. Publish profile password.
appType: 'webApp' # 'webApp' | 'webAppLinux' | 'webAppContainer' | 'functionApp' | 'functionAppLinux' | 'functionAppContainer' | 'apiApp' | 'mobileApp'. Alias: WebAppKind. Required when ConnectionType = AzureRM. App Service type. Default: webApp.
WebAppName: # string. Required when ConnectionType = AzureRM. App Service name.
#deployToSlotOrASE: false # boolean. Alias: DeployToSlotOrASEFlag. Optional. Use when ConnectionType = AzureRM && WebAppKind != "". Deploy to Slot or App Service Environment. Default: false.
#ResourceGroupName: # string. Required when DeployToSlotOrASEFlag = true. Resource group.
#SlotName: 'production' # string. Required when DeployToSlotOrASEFlag = true. Slot. Default: production.
#DockerNamespace: # string. Required when WebAppKind = webAppContainer || WebAppkind = functionAppContainer. Registry or Namespace.
#DockerRepository: # string. Required when WebAppKind = webAppContainer || WebAppkind = functionAppContainer. Image.
#DockerImageTag: # string. Optional. Use when WebAppKind = webAppContainer || WebAppkind = functionAppContainer. Tag.
#VirtualApplication: # string. Optional. Use when WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != functionApp && webAppKind != functionAppLinux && WebAppKind != "". Virtual application.
#packageForLinux: '$(System.DefaultWorkingDirectory)/**/*.zip' # string. Alias: Package. Required when ConnectionType = PublishProfile || WebAppKind = webApp || WebAppKind = apiApp || WebAppKind = functionApp || WebAppKind = mobileApp || WebAppKind = webAppLinux || webAppKind = functionAppLinux. Package or folder. Default: $(System.DefaultWorkingDirectory)/**/*.zip.
#RuntimeStack: # string. Optional. Use when WebAppKind = webAppLinux. Runtime Stack.
#RuntimeStackFunction: # 'DOCKER|microsoft/azure-functions-dotnet-core2.0:2.0' | 'DOCKER|microsoft/azure-functions-node8:2.0'. Optional. Use when WebAppKind = functionAppLinux. Runtime Stack.
#StartupCommand: # string. Optional. Use when WebAppKind = webAppLinux || WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppKind = functionAppLinux. Startup command.
# Post Deployment Action
#ScriptType: # 'Inline Script' | 'File Path'. Optional. Use when ConnectionType = AzureRM && WebAppKind != "" && WebAppKind != webAppContainer && WebAppkind != functionAppContainer. Deployment script type.
#InlineScript: ':: You can provide your deployment commands here. One command per line.' # string. Required when ScriptType == Inline Script && ConnectionType = AzureRM && WebAppKind != "" && WebAppKind != webAppContainer && WebAppkind != functionAppContainer. Inline Script. Default: :: You can provide your deployment commands here. One command per line..
#ScriptPath: # string. Required when ScriptType == File Path && ConnectionType = AzureRM && WebAppKind != "" && WebAppKind != webAppContainer && WebAppkind != functionAppContainer. Deployment script path.
# File Transforms & Variable Substitution Options
#WebConfigParameters: # string. Optional. Use when WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war. Generate web.config parameters for Python, Node.js, Go and Java apps.
#enableXmlTransform: false # boolean. Alias: XmlTransformation. Optional. Use when WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war. XML transformation. Default: false.
#enableXmlVariableSubstitution: false # boolean. Alias: XmlVariableSubstitution. Optional. Use when WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war. XML variable substitution. Default: false.
#JSONFiles: # string. Optional. Use when WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war. JSON variable substitution.
# Application and Configuration Settings
#AppSettings: # string. Optional. Use when ConnectionType = AzureRM. App settings.
#ConfigurationSettings: # string. Optional. Use when ConnectionType = AzureRM. Configuration settings.
# Additional Deployment Options
#enableCustomDeployment: false # boolean. Alias: UseWebDeploy. Optional. Use when ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Select deployment method. Default: false.
#DeploymentType: 'webDeploy' # 'webDeploy' | 'zipDeploy' | 'runFromZip'. Required when UseWebDeploy == true && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Deployment method. Default: webDeploy.
#TakeAppOfflineFlag: true # boolean. Optional. Use when UseWebDeploy == true && DeploymentType != runFromZip && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Take App Offline. Default: true.
#SetParametersFile: # string. Optional. Use when UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. SetParameters file.
#RemoveAdditionalFilesFlag: false # boolean. Optional. Use when UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Remove additional files at destination. Default: false.
#ExcludeFilesFromAppDataFlag: true # boolean. Optional. Use when UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Exclude files from the App_Data folder. Default: true.
#AdditionalArguments: '-retryAttempts:6 -retryInterval:10000' # string. Optional. Use when UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Additional arguments. Default: -retryAttempts:6 -retryInterval:10000.
#RenameFilesFlag: true # boolean. Optional. Use when UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Rename locked files. Default: true.
# Azure App Service Deploy v4
# Update Azure App Services on Windows, Web App on Linux with built-in images or Docker containers, ASP.NET, .NET Core, PHP, Python or Node.js based Web applications, Function Apps on Windows or Linux with Docker Containers, Mobile Apps, API applications, Web Jobs using Web Deploy / Kudu REST APIs.
- task: AzureRmWebAppDeployment@4
inputs:
ConnectionType: 'AzureRM' # 'AzureRM' | 'PublishProfile'. Required. Connection type. Default: AzureRM.
azureSubscription: # string. Alias: ConnectedServiceName. Required when ConnectionType = AzureRM. Azure subscription.
#PublishProfilePath: '$(System.DefaultWorkingDirectory)/**/*.pubxml' # string. Required when ConnectionType = PublishProfile. Publish profile path. Default: $(System.DefaultWorkingDirectory)/**/*.pubxml.
#PublishProfilePassword: # string. Required when ConnectionType = PublishProfile. Publish profile password.
appType: 'webApp' # 'webApp' | 'webAppLinux' | 'webAppContainer' | 'functionApp' | 'functionAppLinux' | 'functionAppContainer' | 'apiApp' | 'mobileApp'. Alias: WebAppKind. Required when ConnectionType = AzureRM. App Service type. Default: webApp.
WebAppName: # string. Required when ConnectionType = AzureRM. App Service name.
#deployToSlotOrASE: false # boolean. Alias: DeployToSlotOrASEFlag. Optional. Use when ConnectionType = AzureRM && WebAppKind != "". Deploy to Slot or App Service Environment. Default: false.
#ResourceGroupName: # string. Required when DeployToSlotOrASEFlag = true. Resource group.
#SlotName: 'production' # string. Required when DeployToSlotOrASEFlag = true. Slot. Default: production.
#DockerNamespace: # string. Required when WebAppKind = webAppContainer || WebAppkind = functionAppContainer. Registry or Namespace.
#DockerRepository: # string. Required when WebAppKind = webAppContainer || WebAppkind = functionAppContainer. Image.
#DockerImageTag: # string. Optional. Use when WebAppKind = webAppContainer || WebAppkind = functionAppContainer. Tag.
#VirtualApplication: # string. Optional. Use when WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != functionApp && webAppKind != functionAppLinux && WebAppKind != "". Virtual application.
#packageForLinux: '$(System.DefaultWorkingDirectory)/**/*.zip' # string. Alias: Package. Required when ConnectionType = PublishProfile || WebAppKind = webApp || WebAppKind = apiApp || WebAppKind = functionApp || WebAppKind = mobileApp || WebAppKind = webAppLinux || webAppKind = functionAppLinux. Package or folder. Default: $(System.DefaultWorkingDirectory)/**/*.zip.
#RuntimeStack: # string. Optional. Use when WebAppKind = webAppLinux. Runtime Stack.
#RuntimeStackFunction: # 'DOCKER|microsoft/azure-functions-dotnet-core2.0:2.0' | 'DOCKER|microsoft/azure-functions-node8:2.0'. Optional. Use when WebAppKind = functionAppLinux. Runtime Stack.
#StartupCommand: # string. Optional. Use when WebAppKind = webAppLinux || WebAppKind = webAppContainer || WebAppkind = functionAppContainer. Startup command.
# Post Deployment Action
#ScriptType: # 'Inline Script' | 'File Path'. Optional. Use when ConnectionType = AzureRM && WebAppKind != "" && WebAppKind != webAppContainer && WebAppkind != functionAppContainer. Deployment script type.
#InlineScript: ':: You can provide your deployment commands here. One command per line.' # string. Required when ScriptType == Inline Script && ConnectionType = AzureRM && WebAppKind != "" && WebAppKind != webAppContainer && WebAppkind != functionAppContainer. Inline Script. Default: :: You can provide your deployment commands here. One command per line..
#ScriptPath: # string. Required when ScriptType == File Path && ConnectionType = AzureRM && WebAppKind != "" && WebAppKind != webAppContainer && WebAppkind != functionAppContainer. Deployment script path.
# File Transforms & Variable Substitution Options
#WebConfigParameters: # string. Optional. Use when WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war. Generate web.config parameters for Python, Node.js, Go and Java apps.
#enableXmlTransform: false # boolean. Alias: XmlTransformation. Optional. Use when WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war. XML transformation. Default: false.
#enableXmlVariableSubstitution: false # boolean. Alias: XmlVariableSubstitution. Optional. Use when WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war. XML variable substitution. Default: false.
#JSONFiles: # string. Optional. Use when WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war. JSON variable substitution.
# Application and Configuration Settings
#AppSettings: # string. Optional. Use when ConnectionType = AzureRM. App settings.
#ConfigurationSettings: # string. Optional. Use when ConnectionType = AzureRM. Configuration settings.
# Additional Deployment Options
#enableCustomDeployment: false # boolean. Alias: UseWebDeploy. Optional. Use when ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Select deployment method. Default: false.
#DeploymentType: 'webDeploy' # 'webDeploy' | 'zipDeploy' | 'runFromZip'. Required when UseWebDeploy == true && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Deployment method. Default: webDeploy.
#TakeAppOfflineFlag: true # boolean. Optional. Use when UseWebDeploy == true && DeploymentType != runFromZip && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Take App Offline. Default: true.
#SetParametersFile: # string. Optional. Use when UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. SetParameters file.
#RemoveAdditionalFilesFlag: false # boolean. Optional. Use when UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Remove additional files at destination. Default: false.
#ExcludeFilesFromAppDataFlag: true # boolean. Optional. Use when UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Exclude files from the App_Data folder. Default: true.
#AdditionalArguments: '-retryAttempts:6 -retryInterval:10000' # string. Optional. Use when UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Additional arguments. Default: -retryAttempts:6 -retryInterval:10000.
#RenameFilesFlag: true # boolean. Optional. Use when UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Rename locked files. Default: true.
Insumos
ConnectionType
-
Tipo de conexão
string
. Necessário. Valores permitidos: AzureRM
(Azure Resource Manager), PublishProfile
(Publish Profile). Valor padrão: AzureRM
.
Especifique o tipo de conexão de serviço a ser usado para implantar o Aplicativo Web.
Especifique Publish Profile
para usar o Visual Studio criado Publicar perfis.
ConnectionType
-
Tipo de conexão
string
. Necessário. Valores permitidos: AzureRM
(Azure Resource Manager), PublishProfile
(Publish Profile). Valor padrão: AzureRM
.
Especifique o tipo de conexão de serviço a ser usado para implantar o Aplicativo Web.
azureSubscription
-
de assinatura do Azure
Alias de entrada: ConnectedServiceName
.
string
. Necessário quando ConnectionType = AzureRM
.
Especifique a assinatura do Azure Resource Manager para a implantação.
PublishProfilePath
-
Publicar caminho do perfil
string
. Necessário quando ConnectionType = PublishProfile
. Valor padrão: $(System.DefaultWorkingDirectory)/**/*.pubxml
.
O caminho do perfil de publicação criado a partir do Visual Studio.
PublishProfilePassword
-
Publicar senha de perfil
string
. Necessário quando ConnectionType = PublishProfile
.
Recomenda-se armazenar uma senha em uma variável secreta e usar essa variável aqui, por exemplo, $(Password)
.
appType
-
Tipo de Serviço de Aplicativo
Alias de entrada: WebAppKind
.
string
. Necessário quando ConnectionType = AzureRM
. Valores permitidos: webApp
(Aplicativo Web no Windows), webAppLinux
(Aplicativo Web no Linux), webAppContainer
(Aplicativo Web para Contêineres (Linux)), webAppHyperVContainer
(Aplicativo Web para Contêineres (Windows)), functionApp
(Aplicativo de Função no Windows (Não Recomendado, Usar Tarefa do Azure Functions)), functionAppLinux
(Aplicativo de Função no Linux (Não Recomendado, Usar a Tarefa do Azure Functions)), functionAppContainer
(Aplicativo de Função para Contêineres (Linux) (Não Recomendado, Usar o Azure Functions para Tarefa de Contêiner)), apiApp
(API App), mobileApp
(Mobile App). Valor padrão: webApp
.
Escolha entre Web App no Windows, Web App no Linux, Web App for Containers, Function App, Function App no Linux, Function App for Containers e Mobile App.
appType
-
Tipo de Serviço de Aplicativo
Alias de entrada: WebAppKind
.
string
. Necessário quando ConnectionType = AzureRM
. Valores permitidos: webApp
(Web App no Windows), webAppLinux
(Web App no Linux), webAppContainer
(Web App for Containers (Linux)), functionApp
(Function App no Windows), functionAppLinux
(Function App no Linux), functionAppContainer
(Function App for Containers (Linux)), apiApp
(API App), mobileApp
(Mobile App). Valor padrão: webApp
.
Escolha entre Web App no Windows, Web App no Linux, Web App for Containers, Function App, Function App no Linux, Function App for Containers e Mobile App.
WebAppName
-
nome do Serviço de Aplicativo
string
. Necessário quando ConnectionType = AzureRM
.
Especifique o nome de um Serviço de Aplicativo do Azure existente. Os serviços de aplicativo baseados no tipo de aplicativo selecionado só serão listados ao usar o assistente de tarefas.
deployToSlotOrASE
-
Implantar no Slot ou no Ambiente do Serviço de Aplicativo
Alias de entrada: DeployToSlotOrASEFlag
.
boolean
. Opcional. Use quando ConnectionType = AzureRM && WebAppKind != ""
. Valor padrão: false
.
Especifique a opção a ser implantada em um slot de implantação existente ou em um ambiente do Serviço de Aplicativo do Azure. Para ambos os destinos, a tarefa requer um nome de Grupo de Recursos.
Se o destino de implantação for um slot, por padrão, a implantação será para o slot de de produção Production
e especifique apenas o nome do Grupo de Recursos.
ResourceGroupName
-
Grupo de recursos
string
. Necessário quando DeployToSlotOrASEFlag = true
.
O nome do grupo de recursos é necessário quando o destino de implantação é um slot de implantação ou um Ambiente do Serviço de Aplicativo.
Especifique o grupo de Recursos do Azure que contém o Serviço de Aplicativo do Azure especificado acima.
SlotName
-
Slot
string
. Necessário quando DeployToSlotOrASEFlag = true
. Valor padrão: production
.
Especifique um slot existente diferente do slot Produção.
DockerNamespace
-
Registro ou namespace
string
. Necessário quando WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppKind = webAppHyperVContainer
.
Um nome de domínio de nível superior globalmente exclusivo para seu registro ou namespace específico. Nota: O nome da imagem totalmente qualificada será do formato: {registry or namespace}/{repository}:{tag}
. Por exemplo, myregistry.azurecr.io/nginx:latest
.
DockerNamespace
-
Registro ou namespace
string
. Necessário quando WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppkind = webAppHyperVContainer
.
Um nome de domínio de nível superior globalmente exclusivo para seu registro ou namespace específico. Nota: O nome da imagem totalmente qualificada será do formato: {registry or namespace}/{repository}:{tag}
. Por exemplo, myregistry.azurecr.io/nginx:latest
.
DockerNamespace
-
Registro ou namespace
string
. Necessário quando WebAppKind = webAppContainer || WebAppkind = functionAppContainer
.
Um nome de domínio de nível superior globalmente exclusivo para seu registro ou namespace específico. Nota: O nome da imagem totalmente qualificada será do formato: {registry or namespace}/{repository}:{tag}
. Por exemplo, myregistry.azurecr.io/nginx:latest
.
DockerRepository
-
Imagem
string
. Necessário quando WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppKind = webAppHyperVContainer
.
O nome do repositório onde as imagens de contêiner são armazenadas. Nota: O nome da imagem totalmente qualificada será do formato: {registry or namespace}/{repository}:{tag}
. Por exemplo, myregistry.azurecr.io/nginx:latest
.
DockerRepository
-
Imagem
string
. Necessário quando WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppkind = webAppHyperVContainer
.
O nome do repositório onde as imagens de contêiner são armazenadas. Nota: O nome da imagem totalmente qualificada será do formato: {registry or namespace}/{repository}:{tag}
. Por exemplo, myregistry.azurecr.io/nginx:latest
.
DockerRepository
-
Imagem
string
. Necessário quando WebAppKind = webAppContainer || WebAppkind = functionAppContainer
.
O nome do repositório onde as imagens de contêiner são armazenadas. Nota: O nome da imagem totalmente qualificada será do formato: {registry or namespace}/{repository}:{tag}
. Por exemplo, myregistry.azurecr.io/nginx:latest
.
DockerImageTag
-
Tag
string
. Opcional. Use quando WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppKind = webAppHyperVContainer
.
As tags são o mecanismo que os registros usam para aplicar informações de versão às imagens do Docker. Nota: O nome da imagem totalmente qualificada será do formato: {registry or namespace}/{repository}:{tag}
. Por exemplo, myregistry.azurecr.io/nginx:latest
.
DockerImageTag
-
Tag
string
. Opcional. Use quando WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppkind = webAppHyperVContainer
.
As tags são o mecanismo que os registros usam para aplicar informações de versão às imagens do Docker. Nota: O nome da imagem totalmente qualificada será do formato: {registry or namespace}/{repository}:{tag}
. Por exemplo, myregistry.azurecr.io/nginx:latest
.
DockerImageTag
-
Tag
string
. Opcional. Use quando WebAppKind = webAppContainer || WebAppkind = functionAppContainer
.
As tags são o mecanismo que os registros usam para aplicar informações de versão às imagens do Docker. Nota: O nome da imagem totalmente qualificada será do formato: {registry or namespace}/{repository}:{tag}
. Por exemplo, myregistry.azurecr.io/nginx:latest
.
VirtualApplication
-
Aplicação virtual
string
. Opcional. Use quando WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && WebAppKind != functionApp && webAppKind != functionAppLinux && WebAppKind != ""
.
Especifique o nome do Aplicativo Virtual que foi configurado no portal do Azure. Essa opção não é necessária para implantações na raiz do site. O Aplicativo Virtual deve ter sido configurado antes da implantação do projeto Web.
VirtualApplication
-
Aplicação virtual
string
. Opcional. Use quando WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != functionApp && webAppKind != functionAppLinux && WebAppKind != ""
.
Especifique o nome do Aplicativo Virtual que foi configurado no portal do Azure. Essa opção não é necessária para implantações na raiz do site. O Aplicativo Virtual deve ter sido configurado antes da implantação do projeto Web.
packageForLinux
-
de pacotes ou pastas
Alias de entrada: Package
.
string
. Necessário quando ConnectionType = PublishProfile || WebAppKind = webApp || WebAppKind = apiApp || WebAppKind = functionApp || WebAppKind = mobileApp || WebAppKind = webAppLinux || webAppKind = functionAppLinux
. Valor padrão: $(System.DefaultWorkingDirectory)/**/*.zip
.
O caminho do arquivo para o pacote ou para uma pasta que contém o conteúdo do serviço de aplicativo gerado pelo MSBuild ou um arquivo compactado zip ou war.
As variáveis são Build e Release. curingas são suportados.
Por exemplo, $(System.DefaultWorkingDirectory)/\*\*/\*.zip
ou $(System.DefaultWorkingDirectory)/\*\*/\*.war
.
RuntimeStack
-
Runtime Stack
string
. Opcional. Use quando WebAppKind = webAppLinux
.
Especifique a estrutura e a versão.
RuntimeStackFunction
-
Runtime Stack
string
. Opcional. Use quando WebAppKind = functionAppLinux
. Valores permitidos: DOTNET|2.2
(DOTNET|2.2 (functionapp v2)), DOTNET|3.1
(DOTNET|3.1 (functionapp v3)), JAVA|8
(JAVA|8 (functionapp v2/v3)), JAVA|11
(JAVA|11 (functionapp v3)), NODE|8
(NODE|8 (functionapp v2)), NODE|10
(NODE|10 (functionapp v2/v3)), NODE|12
(NODE|12 (functionapp v3)), NODE|14
(NODE|14 (functionapp v3)), PYTHON|3.6
(PYTHON|3.6 (functionapp v2/v3)), PYTHON|3.7
(PYTHON|3.7 (functionapp v2/v3)), PYTHON|3.8
(PYTHON|3.8 (functionapp v3)).
Especifique a estrutura e a versão. Consulte a visão geral das versões de tempo de execução do Azure Functions para versões de tempo de execução com suporte. Valores antigos como DOCKER|microsoft/azure-functions-*
são preteridos. Use os novos valores da lista suspensa.
RuntimeStackFunction
-
Runtime Stack
string
. Opcional. Use quando WebAppKind = functionAppLinux
. Valores permitidos: DOCKER|microsoft/azure-functions-dotnet-core2.0:2.0
(.NET), DOCKER|microsoft/azure-functions-node8:2.0
(JavaScript).
Especifique a estrutura e a versão.
StartupCommand
-
Comando de inicialização
string
. Opcional. Use quando WebAppKind = webAppLinux || WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppKind = functionAppLinux || WebAppKind = webAppHyperVContainer
.
Especifique o comando Startup. Por exemplo:
dotnet exec filename.dll
dotnet filename.dll
.
StartupCommand
-
Comando de inicialização
string
. Opcional. Use quando WebAppKind = webAppLinux || WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppKind = functionAppLinux || WebAppkind = webAppHyperVContainer
.
Especifique o comando Startup. Por exemplo:
dotnet exec filename.dll
dotnet filename.dll
.
StartupCommand
-
Comando de inicialização
string
. Opcional. Use quando WebAppKind = webAppLinux || WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppKind = functionAppLinux
.
Especifique o comando Startup. Por exemplo:
dotnet exec filename.dll
dotnet filename.dll
.
StartupCommand
-
Comando de inicialização
string
. Opcional. Use quando WebAppKind = webAppLinux || WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppKind = functionAppLinux
.
Especifique o comando Startup. Por exemplo, dotnet run
dotnet filename.dll
.
StartupCommand
-
Comando de inicialização
string
. Opcional. Use quando WebAppKind = webAppLinux || WebAppKind = webAppContainer || WebAppkind = functionAppContainer
.
Especifique o comando Startup.
ScriptType
-
Tipo de script de implantação
string
. Opcional. Use quando ConnectionType = AzureRM && WebAppKind != "" && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer
. Valores permitidos: Inline Script
, File Path
(Caminho do arquivo de script).
Personaliza a implantação fornecendo um script que é executado no Serviço de Aplicativo do Azure após a implantação bem-sucedida. Escolha o script de implantação embutido ou o caminho e o nome de um arquivo de script. Saiba mais sobre de Implantação do Serviço de Aplicativo do Azure .
ScriptType
-
Tipo de script de implantação
string
. Opcional. Use quando ConnectionType = AzureRM && WebAppKind != "" && WebAppKind != webAppContainer && WebAppkind != functionAppContainer
. Valores permitidos: Inline Script
, File Path
(Caminho do arquivo de script).
Personaliza a implantação fornecendo um script que é executado no Serviço de Aplicativo do Azure após a implantação bem-sucedida. Escolha o script de implantação embutido ou o caminho e o nome de um arquivo de script. Saiba mais sobre de Implantação do Serviço de Aplicativo do Azure .
InlineScript
-
Script Inline
string
. Necessário quando ScriptType == Inline Script && ConnectionType = AzureRM && WebAppKind != "" && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer
. Valor padrão: :: You can provide your deployment commands here. One command per line.
.
O script a ser executado. Você pode fornecer seus comandos de implantação aqui, um comando por linha. Veja o exemplo a seguir.
InlineScript
-
Script Inline
string
. Necessário quando ScriptType == Inline Script && ConnectionType = AzureRM && WebAppKind != "" && WebAppKind != webAppContainer && WebAppkind != functionAppContainer
. Valor padrão: :: You can provide your deployment commands here. One command per line.
.
O script a ser executado. Você pode fornecer seus comandos de implantação aqui, um comando por linha. Veja o exemplo a seguir.
ScriptPath
-
Caminho do script de implantação
string
. Necessário quando ScriptType == File Path && ConnectionType = AzureRM && WebAppKind != "" && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer
.
O caminho e o nome do script a ser executado.
ScriptPath
-
Caminho do script de implantação
string
. Necessário quando ScriptType == File Path && ConnectionType = AzureRM && WebAppKind != "" && WebAppKind != webAppContainer && WebAppkind != functionAppContainer
.
O caminho e o nome do script a ser executado.
WebConfigParameters
-
Gerar parâmetros de web.config para aplicativos Python, Node.js, Go e Java
string
. Opcional. Use quando WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war
.
Um Web.config
padrão será gerado e implantado no Serviço de Aplicativo do Azure se o aplicativo não tiver um. Os valores em web.config
podem ser editados e variar com base na estrutura do aplicativo. Por exemplo, para aplicativos node.js
, web.config
terá um arquivo de inicialização e iis_node valores de módulo. Este recurso de edição é apenas para o web.config
gerado . Saiba mais sobre de Implantação do Serviço de Aplicativo do Azure .
WebConfigParameters
-
Gerar parâmetros de web.config para aplicativos Python, Node.js, Go e Java
string
. Opcional. Use quando WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war
.
Um Web.config
padrão será gerado e implantado no Serviço de Aplicativo do Azure se o aplicativo não tiver um. Os valores em web.config
podem ser editados e variar com base na estrutura do aplicativo. Por exemplo, para aplicativos node.js
, web.config
terá um arquivo de inicialização e iis_node valores de módulo. Este recurso de edição é apenas para o web.config
gerado . Saiba mais sobre de Implantação do Serviço de Aplicativo do Azure .
AppSettings
-
Configurações do aplicativo
string
. Opcional. Use quando ConnectionType = AzureRM
.
Edita as configurações do aplicativo Web usando a sintaxe -key value
. Os valores que contenham espaços devem ser colocados entre aspas duplas. Exemplos: -Port 5000 -RequestTimeout 5000
e -WEBSITE_TIME_ZONE "Eastern Standard Time"
. Para fornecer dois ou mais valores de chave, os valores de chave devem ser separados por um espaço. Exemplo: -key1 "Value1" -Key2 "Value2"
.
ConfigurationSettings
-
Definições de configuração
string
. Opcional. Use quando ConnectionType = AzureRM
.
Edita as definições de configuração do aplicativo Web usando a sintaxe -key value
. Os valores que contenham espaços devem ser colocados entre aspas duplas. Exemplo: -phpVersion 5.6 -linuxFxVersion node|6.11
.
enableCustomDeployment
-
Selecione o método de implantação
Alias de entrada: UseWebDeploy
.
boolean
. Opcional. Use quando ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar
. Valor padrão: false
.
Se não estiver marcada ou false, a tarefa detetará automaticamente o melhor método de implantação com base no tipo de aplicativo, formato de pacote e outros parâmetros. Marque essa opção no assistente de tarefas para exibir os métodos de implantação suportados e escolha um para implantar seu aplicativo.
enableCustomDeployment
-
Selecione o método de implantação
Alias de entrada: UseWebDeploy
.
boolean
. Opcional. Use quando ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar
. Valor padrão: false
.
Se não estiver marcada ou false, a tarefa detetará automaticamente o melhor método de implantação com base no tipo de aplicativo, formato de pacote e outros parâmetros. Marque essa opção no assistente de tarefas para exibir os métodos de implantação suportados e escolha um para implantar seu aplicativo.
DeploymentType
-
Método de implantação
string
. Necessário quando UseWebDeploy == true && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar
. Valores permitidos: webDeploy
(Web Deploy), zipDeploy
(Zip Deploy) runFromZip
(Run From Package). Valor padrão: webDeploy
.
Determina o método de implantação para o aplicativo.
DeploymentType
-
Método de implantação
string
. Necessário quando UseWebDeploy == true && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar
. Valores permitidos: webDeploy
(Web Deploy), zipDeploy
(Zip Deploy) runFromZip
(Run From Package). Valor padrão: webDeploy
.
Determina o método de implantação para o aplicativo.
TakeAppOfflineFlag
-
colocar o aplicativo offline
boolean
. Opcional. Use quando UseWebDeploy == true && DeploymentType != runFromZip && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar
. Valor padrão: true
.
Especifique essa opção para colocar o Serviço de Aplicativo do Azure offline colocando um arquivo app_offline.htm
no diretório raiz antes do início da operação de sincronização. O arquivo será removido depois que a sincronização for concluída com êxito.
TakeAppOfflineFlag
-
colocar o aplicativo offline
boolean
. Opcional. Use quando UseWebDeploy == true && DeploymentType != runFromZip && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar
. Valor padrão: true
.
Especifique essa opção para colocar o Serviço de Aplicativo do Azure offline colocando um arquivo app_offline.htm
no diretório raiz antes do início da operação de sincronização. O arquivo será removido depois que a sincronização for concluída com êxito.
SetParametersFile
-
arquivo SetParameters
string
. Opcional. Use quando UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar
.
O local do arquivo de SetParameters.xml
a ser usado.
SetParametersFile
-
arquivo SetParameters
string
. Opcional. Use quando UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar
.
O local do arquivo de SetParameters.xml
a ser usado.
RemoveAdditionalFilesFlag
-
Remover arquivos adicionais no destino
boolean
. Opcional. Use quando UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar
. Valor padrão: false
.
Especifique 'true' para excluir arquivos no Serviço de Aplicativo do Azure que não tenham arquivos correspondentes no pacote ou pasta do Serviço de Aplicativo. Isso também removerá todos os arquivos relacionados a qualquer extensão instalada neste Serviço de Aplicativo do Azure. Para evitar isso, marque a caixa de seleção Exclude files from App_Data folder
.
RemoveAdditionalFilesFlag
-
Remover arquivos adicionais no destino
boolean
. Opcional. Use quando UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar
. Valor padrão: false
.
Especifique 'true' para excluir arquivos no Serviço de Aplicativo do Azure que não tenham arquivos correspondentes no pacote ou pasta do Serviço de Aplicativo. Isso também removerá todos os arquivos relacionados a qualquer extensão instalada neste Serviço de Aplicativo do Azure. Para evitar isso, marque a caixa de seleção Exclude files from App_Data folder
.
ExcludeFilesFromAppDataFlag
-
Excluir arquivos da pasta App_Data
boolean
. Opcional. Use quando UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar
. Valor padrão: true
.
Especifique a opção para impedir que arquivos na pasta App_Data
sejam implantados/excluídos do Serviço de Aplicativo do Azure.
ExcludeFilesFromAppDataFlag
-
Excluir arquivos da pasta App_Data
boolean
. Opcional. Use quando UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar
. Valor padrão: true
.
Especifique a opção para impedir que arquivos na pasta App_Data
sejam implantados/excluídos do Serviço de Aplicativo do Azure.
AdditionalArguments
-
Argumentos adicionais
string
. Opcional. Use quando UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar
. Valor padrão: -retryAttempts:6 -retryInterval:10000
.
Argumentos adicionais de implantação da Web seguindo a sintaxe -key:value
. Eles serão aplicados ao implantar o Serviço de Aplicativo do Azure. Exemplos: -disableLink:AppPoolExtension -disableLink:ContentExtension
. Saiba mais sobre Configurações de Operação de Implantação da Web.
AdditionalArguments
-
Argumentos adicionais
string
. Opcional. Use quando UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar
. Valor padrão: -retryAttempts:6 -retryInterval:10000
.
Argumentos adicionais de implantação da Web seguindo a sintaxe -key:value
. Eles serão aplicados ao implantar o Serviço de Aplicativo do Azure. Exemplos: -disableLink:AppPoolExtension -disableLink:ContentExtension
. Saiba mais sobre Configurações de Operação de Implantação da Web.
RenameFilesFlag
-
Renomeie arquivos bloqueados
boolean
. Opcional. Use quando UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar
. Valor padrão: true
.
Especifique o valor padrão para habilitar o MSDEPLOY_RENAME_LOCKED_FILES=1
de sinalizador msdeploy nas configurações do aplicativo do Serviço de Aplicativo do Azure. Se definida, a opção permite que o msdeploy renomeie arquivos bloqueados durante a implantação do aplicativo.
RenameFilesFlag
-
Renomeie arquivos bloqueados
boolean
. Opcional. Use quando UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar
. Valor padrão: true
.
Especifique o valor padrão para habilitar o MSDEPLOY_RENAME_LOCKED_FILES=1
de sinalizador msdeploy nas configurações do aplicativo do Serviço de Aplicativo do Azure. Se definida, a opção permite que o msdeploy renomeie arquivos bloqueados durante a implantação do aplicativo.
enableXmlTransform
-
de transformação XML
Alias de entrada: XmlTransformation
.
boolean
. Opcional. Use quando WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war
. Valor padrão: false
.
As transformações de configuração serão executadas por *.Release.config
e *.<EnvironmentName>.config
no *.config file
. As transformações de configuração são executadas antes da substituição de variáveis.
transformações XML são suportadas apenas para a plataforma Windows.
enableXmlTransform
-
de transformação XML
Alias de entrada: XmlTransformation
.
boolean
. Opcional. Use quando WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war
. Valor padrão: false
.
As transformações de configuração serão executadas por *.Release.config
e *.<EnvironmentName>.config
no *.config file
. As transformações de configuração são executadas antes da substituição de variáveis.
transformações XML são suportadas apenas para a plataforma Windows.
enableXmlVariableSubstitution
-
substituição de variáveis XML
Alias de entrada: XmlVariableSubstitution
.
boolean
. Opcional. Use quando WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war
. Valor padrão: false
.
As variáveis definidas no pipeline de compilação ou liberação serão comparadas com as entradas de chave ou nome nas seções configSections
, appSettings
, applicationSettings
e connectionStrings
de qualquer arquivo de configuração e arquivo parameters.xml
. A substituição de variáveis é executada após transformações de configuração.
Se as mesmas variáveis forem definidas no pipeline de liberação e no estágio, as variáveis de estágio substituirão as variáveis do pipeline de liberação. Saiba mais sobre [XML variable substitution]](/azure/devops/pipelines/tasks/transforms-variable-substitution#xml-variable-substitution).
enableXmlVariableSubstitution
-
substituição de variáveis XML
Alias de entrada: XmlVariableSubstitution
.
boolean
. Opcional. Use quando WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war
. Valor padrão: false
.
As variáveis definidas no pipeline de compilação ou liberação serão comparadas com as entradas de chave ou nome nas seções configSections
, appSettings
, applicationSettings
e connectionStrings
de qualquer arquivo de configuração e arquivo parameters.xml
. A substituição de variáveis é executada após transformações de configuração.
Se as mesmas variáveis forem definidas no pipeline de liberação e no estágio, as variáveis de estágio substituirão as variáveis do pipeline de liberação. Saiba mais sobre [XML variable substitution]](/azure/devops/pipelines/tasks/transforms-variable-substitution#xml-variable-substitution).
JSONFiles
-
de substituição de variáveis JSON
string
. Opcional. Use quando WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war
.
Fornece uma lista separada por nova linha de arquivos JSON para substituir os valores das variáveis. Os nomes de arquivo devem ser relativos à pasta raiz. Para substituir variáveis JSON aninhadas ou hierárquicas, especifique-as usando expressões JSONPath
. Por exemplo, para substituir o valor de ConnectionString
no exemplo abaixo, defina uma variável chamada Data.DefaultConnection.ConnectionString
no pipeline de compilação ou liberação (ou estágio de pipelines de liberação).
{
"Data": {
"DefaultConnection": {
"ConnectionString": "Server=(localdb)\SQLEXPRESS;Database=MyDB;Trusted_Connection=True"
}
}
}
Uma substituição de variável é executada após transformações de configuração. Nota: As variáveis de pipeline de compilação e liberação são excluídas da substituição. Saiba mais sobre substituição de variáveis JSON.
JSONFiles
-
de substituição de variáveis JSON
string
. Opcional. Use quando WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war
.
Fornece uma lista separada por nova linha de arquivos JSON para substituir os valores das variáveis. Os nomes de arquivo devem ser relativos à pasta raiz. Para substituir variáveis JSON aninhadas ou hierárquicas, especifique-as usando expressões JSONPath
. Por exemplo, para substituir o valor de ConnectionString
no exemplo abaixo, defina uma variável chamada Data.DefaultConnection.ConnectionString
no pipeline de compilação ou liberação (ou estágio de pipelines de liberação).
{
"Data": {
"DefaultConnection": {
"ConnectionString": "Server=(localdb)\SQLEXPRESS;Database=MyDB;Trusted_Connection=True"
}
}
}
Uma substituição de variável é executada após transformações de configuração. Nota: As variáveis de pipeline de compilação e liberação são excluídas da substituição. Saiba mais sobre substituição de variáveis JSON.
Opções de controlo de tarefas
Todas as tarefas têm opções de controle, além de suas entradas de tarefas. Para obter mais informações, consulte Opções de controle de e propriedades de tarefas comuns.
Variáveis de saída
Esta tarefa define as seguintes variáveis de saída , que você pode consumir em etapas, trabalhos e estágios downstream.
AppServiceApplicationUrl
URL do Aplicativo do Serviço de Aplicativo selecionado.
Comentários
- Pré-requisitos para a tarefa
- Notas de utilização
- Métodos de implantação
- Solução de problemas
- Perguntas frequentes
Use esta tarefa para implantar em uma variedade de Serviços de Aplicativo no Azure. A tarefa funciona em agentes multiplataforma que executam Windows, Linux ou Mac e usa várias tecnologias de implantação diferentes subjacentes.
A tarefa funciona para ASP.NET, ASP.NET Core, PHP, Java, Python, Goe aplicações web baseadas em Node.js.
A tarefa pode ser usada para implantar em uma variedade de Serviços de Aplicativo do Azure, como:
- Web Apps em Windows e Linux
- Aplicativos Web para contêineres
- Function Apps no Windows e Linux
- aplicativos de função para contêineres
- WebJobs
- Aplicativos configurados em Ambientes do Serviço de Aplicativo do Azure
Pré-requisitos para a tarefa
Os pré-requisitos a seguir devem ser configurados na(s) máquina(s) de destino para que a tarefa funcione corretamente.
instância do Serviço de Aplicativo. A tarefa é usada para implantar um projeto de Aplicativo Web ou projeto de Função do Azure em uma instância existente do Serviço de Aplicativo do Azure, que deve existir antes da execução da tarefa. A instância do Serviço de Aplicativo pode ser criada a partir do do portal do
Azure e de tarefas doconfigurada lá. Como alternativa, oAzure PowerShell pode ser usado para executar scripts do Azure PowerShell para provisionar e configurar o Aplicativo Web.Azure Subscription. Para implantar no Azure, uma assinatura do Azure deve ser vinculada ao pipeline. A tarefa não funciona com a conexão de serviço Clássico do Azure e não listará essas conexões nas configurações da tarefa.
Notas de utilização
- A tarefa funciona apenas com as APIs do Azure Resource Manager.
- Para ignorar erros de SSL, defina uma variável chamada
VSTS_ARM_REST_IGNORE_SSL_ERRORS
com valortrue
no pipeline. Se você estiver implantando em um slot configurado para troca automática, a troca falhará, a menos que você definaSCM_SKIP_SSL_VALIDATION
ouSCM_SKIP_ASE_SSL_VALIDATION
para1
nas definições de configuração dos serviços de aplicativo. - Para aplicativos .NET destinados a aplicativos Web no Windows, evite falhas de implantação com o erro
ERROR_FILE_IN_USE
garantindo que as configurações de Renomear arquivos bloqueados e Colocar o aplicativo offline estejam habilitadas. Para implantação sem tempo de inatividade, use a opção de troca de slot. - Ao implantar em um Serviço de Aplicativo que tenha o Application Insights configurado e você tenha habilitado Remover arquivos adicionais node destino , certifique-se de habilitar também Excluir arquivos da pasta App_Data para manter a extensão do Application Insights em um estado seguro. Isso é necessário porque o trabalho Web contínuo do Application Insights está instalado na pasta App_Data.
Métodos de implantação
Vários métodos de implantação estão disponíveis nesta tarefa. Web Deploy (msdeploy.exe) é o padrão. Para alterar a opção de implantação, expanda Opções de Implantação Adicionais e habilite método de implantação Select escolher entre opções de implantação adicionais baseadas em pacote.
Com base no tipo de agente e do Serviço de Aplicativo do Azure, a tarefa escolhe uma tecnologia de implantação adequada. As diferentes tecnologias de implantação usadas pela tarefa são:
- Web Deploy
- APIs REST do Kudu
- Registro de contêiner
- Zip Implantar
- Executar a partir do pacote
- War Deploy
Por padrão, a tarefa tenta selecionar a tecnologia de implantação apropriada com base no tipo de pacote de entrada, no tipo de Serviço de Aplicativo e no sistema operacional do agente.
Lógica de deteção automática
Para agentes baseados em janelas.
Tipo de Serviço de Aplicativo | Tipo de embalagem | Método de implantação |
---|---|---|
WebApp no Linux ou Function App no Linux | Pasta/Zip/jar Guerra |
Zip Deploy War Deploy |
WebApp para Containers (Linux) ou Function App for Containers (Linux) | Atualizar as configurações do aplicativo | NA |
WebApp no Windows, Function App no Windows, API App ou Mobile App | War Jar MsBuild tipo de pacote ou implantar no aplicativo virtual Pasta/Zip |
War Deploy Zip Deploy Web Deploy if postDeploymentScript == true, Zip Deploy else, Run From Package |
Em agentes que não sejam do Windows (para qualquer tipo de Serviço de Aplicativo), a tarefa depende de APIs REST Kudu implantar o aplicativo.
Implantação da Web
de Implantação da Web (msdeploy.exe) pode ser usada para implantar um Aplicativo Web no Windows ou um Aplicativo de Função no Serviço de Aplicativo do Azure usando um agente do Windows. O Web Deploy é rico em recursos e oferece opções como:
Renomear arquivos bloqueados: Renomeie qualquer arquivo que ainda esteja em uso pelo servidor Web habilitando o sinalizador msdeploy
MSDEPLOY\_RENAME\_LOCKED\_FILES=1
nas configurações do Serviço de Aplicativo do Azure. Essa opção, se definida, permite que o msdeploy renomeie arquivos bloqueados durante a implantação do aplicativo.Remover arquivos adicionais no destino: Exclui arquivos no Serviço de Aplicativo do Azure que não têm arquivos correspondentes no pacote de artefatos ou pasta do Serviço de Aplicativo que está sendo implantado.
Excluir arquivos da pasta App_Data: Impedir que arquivos na pasta App_Data (no pacote/pasta de artefato que está sendo implantado) sejam implantados no Serviço de Aplicativo do Azure
Argumentos adicionais de implantação da Web: Argumentos que serão aplicados ao implantar o Serviço de Aplicativo do Azure. Exemplo:
-disableLink:AppPoolExtension -disableLink:ContentExtension
. Para obter mais exemplos de configurações de operação de implantação da Web, consulte Configurações de operação de implantação da Web.
Instale o Web Deploy no agente a partir do Web Deploy 3.6. O Web Deploy 3.5 deve ser instalado sem o suporte SQL incluído. Não há necessidade de escolher nenhuma configuração personalizada ao instalar o Web Deploy. O Web Deploy está instalado em C:/Program Files (x86)/IIS/Microsoft Web Deploy V3
.
Kudu REST APIs
APIs REST Kudu funcionar em agentes de automação Windows e Linux quando o destino é um aplicativo Web no Windows, aplicativo Web no Linux (fonte interna) ou aplicativo de função. A tarefa usa o Kudu para copiar arquivos para o serviço de Aplicativo do Azure.
Registo de Contentores
Funciona em agentes de automação Windows e Linux quando o destino é um Web App for Containers. A tarefa atualiza o aplicativo definindo o registro de contêiner, o repositório, o nome da imagem e as informações de tag apropriadas. Você também pode usar a tarefa para passar um comando de inicialização para a imagem do contêiner.
Implantação Zip
Espera um pacote de implantação .zip e implanta o conteúdo do arquivo na pasta wwwroot do Serviço de Aplicativo ou Aplicativo de Função no Azure.
Esta opção substitui todo o conteúdo existente na pasta
Executar a partir do pacote
Espera o mesmo pacote de implantação que o Zip Deploy. No entanto, em vez de implantar arquivos na pasta wwwroot, todo o pacote é montado pelo tempo de execução do Functions e os arquivos na pasta wwwroot se tornam somente leitura. Para obter mais informações, consulte executar o Azure Functions a partir de um arquivo de pacote.
Implantação de guerra
Espera um pacote de implantação .war e implanta o conteúdo do arquivo na pasta de wwwroot
Solução de problemas
Não consigo implantar a Web no meu Serviço de Aplicativo do Azure usando a autenticação de ID do Microsoft Entra do meu agente do Windows
A tarefa de implantação do Serviço de Aplicativo do Azure dá suporte à conexão com o Microsoft Azure com uma conexão de serviço ARM usando a ID do Microsoft Entra, a menos que as três condições a seguir estejam presentes:
- Você está usando o formato de pacote de implantação da Web em um agente do Windows
- Seu agente está sendo executado com uma versão mais antiga do msdeploy.exe (por exemplo, ao usar o windows-2019 imagem do agente hospedado)
- A autenticação básica está desabilitada para o Serviço de Aplicativo do Azure
Se essas três condições estiverem presentes, você receberá um erro como App Service is configured to not use basic authentication. This requires Web Deploy msdeploy.exe version 7.1.7225.2108 or higher. You need a version of Visual Studio that includes an updated version of msdeploy.exe. For more information, visit https://aka.ms/azdo-webapp-msdeploy.
Para resolver esse problema, você pode escolher entre as seguintes opções, em ordem de preferência.
- Atualize a imagem do agente. Se você estiver usando agentes hospedados, mude de windows-2019 para windows-2022 (ou windows-latest). Se você estiver usando agentes auto-hospedados, instale o Visual Studio 2022 no agente para obter uma versão mais recente do msdeploy.exe.
- Se você depender de uma imagem de agente mais antiga e não puder atualizar o agente para seu pipeline, considere dividir o trabalho para que a tarefa de implantação do Serviço de Aplicativo do Azure seja executada em do Windows-2022 (ou mais recente do Windows).
- Se nenhuma dessas opções for possível, você poderá habilitar de autenticação básica para seu Serviço de Aplicativo do Azure.
Erro: Não foi possível buscar o token de acesso para o Azure. Verifique se a entidade de serviço usada é válida e não expirou.
A tarefa usa a entidade de serviço na conexão de serviço para autenticar com o Azure. Se a entidade de serviço tiver expirado ou não tiver permissões para o Serviço de Aplicativo, a tarefa falhará com esse erro. Verifique a validade da entidade de serviço usada e se ela está presente no registro do aplicativo. Para obter mais informações, consulte Usar controle de acesso baseado em função para gerenciar o acesso aos recursos de assinatura do Azure. Esta postagem de blog também contém mais informações sobre como usar a autenticação da entidade de serviço.
Erro SSL
Se você quiser usar um certificado no Serviço de Aplicativo, o certificado deverá ser assinado por uma autoridade de certificação confiável. Se seu aplicativo Web fornecer erros de validação de certificado, você provavelmente está usando um certificado autoassinado. Defina uma variável chamada VSTS_ARM_REST_IGNORE_SSL_ERRORS
para o valor true
no pipeline de compilação ou liberação para resolver o erro.
Uma liberação trava por muito tempo e, em seguida, falha
Esse problema pode ser o resultado de capacidade insuficiente em seu plano do Serviço de Aplicativo. Para resolver esse problema, você pode dimensionar a instância do Serviço de Aplicativo para aumentar a CPU, a RAM e o espaço em disco disponíveis ou tentar usar um plano diferente do Serviço de Aplicativo.
5xx códigos de erro
Se você estiver vendo um erro de 5xx, verifique o status do seu serviço do Azure.
Azure Function de repente parou de funcionar
O Azure Functions pode parar de funcionar subitamente se tiver passado mais de um ano desde a última implantação. Se você implantar com "RunFromPackage" em "deploymentMethod", uma SAS com uma data de expiração de 1 ano será gerada e definida como o valor de "WEBSITE_RUN_FROM_PACKAGE" na configuração do aplicativo. O Azure Functions usa essa SAS para fazer referência ao arquivo de pacote para execução da função, portanto, se a SAS tiver expirado, a função não será executada. Para resolver esse problema, implante novamente para gerar uma SAS com uma data de expiração de um ano.
Erro: Nenhum pacote encontrado com o padrão especificado
Verifique se o pacote mencionado na tarefa é publicado como um artefato na compilação ou em um estágio anterior e baixado no trabalho atual.
Erro: A opção Publicar usando zip deploy não é suportada para o tipo de pacote msBuild
Os pacotes da Web criados por meio da tarefa MSBuild (com argumentos padrão) têm uma estrutura de pastas aninhada que pode ser implantada corretamente somente pela Implantação da Web. A opção de implantação publish-to-zip não pode ser usada para implantar esses pacotes. Para converter a estrutura de embalagem, siga estas etapas:
Na tarefa Compilar solução, altere o
Argumentos do MSBuild para : Adicione uma tarefa Arquivo morto e altere os valores da seguinte maneira:
Altere pasta ou arquivo raiz para arquivar para
$(System.DefaultWorkingDirectory)\\WebAppContent
.Desmarque a caixa de seleção Prepend root folder name to archive paths:
A implantação do aplicativo Web no Windows foi bem-sucedida, mas o aplicativo não está funcionando
Isso pode ser porque web.config não está presente em seu aplicativo. Você pode adicionar um arquivo web.config à sua origem ou gerar automaticamente um usando as Opções de Transformações de Arquivo e Substituição de Variáveis da tarefa.
Clique na tarefa e vá para Gerar parâmetros de web.config para aplicativos Python, Node.js, Go e Java.
Clique no botão mais Gerar parâmetros de web.config para aplicativos Python, Node.js, Go e Java para editar os parâmetros.
Selecione o tipo de aplicativo na lista suspensa.
Clique em OK. Isso preencherá web.config parâmetros necessários para gerar web.config.
Observação
Esta seção foi preterida e substituída pela tarefa Transformação de Arquivo
ERROR_FILE_IN_USE
Ao implantar aplicativos .NET no aplicativo Web no Windows, a implantação pode falhar com o código de erro ERROR_FILE_IN_USE. Para resolver o erro, verifique se opções Renomear arquivos bloqueados e Colocar o aplicativo offline estão habilitadas na tarefa. Para implantações sem tempo de inatividade, use a troca de slot.
Você também pode usar método de implantação Run From Package para evitar o bloqueio de recursos.
Erro de implantação da Web
Se você estiver usando a implantação da Web para implantar seu aplicativo, em alguns cenários de erro a Implantação da Web mostrará um código de erro no log. Para solucionar um erro de implantação da Web, consulte códigos de erro de implantação da Web.
A implantação do aplicativo Web no Ambiente do Serviço de Aplicativo (ASE) não está funcionando
- Verifique se o agente de compilação do Azure DevOps está na mesma VNET (a sub-rede pode ser diferente) que o ILB (Balanceador de Carga Interno) do ASE. Isso permitirá que o agente extraia código do Azure DevOps e implante no ASE.
- Se você estiver usando o Azure DevOps, o agente não precisará estar acessível pela Internet, mas precisará apenas de acesso de saída para se conectar ao Serviço de DevOps do Azure.
- Se você estiver usando o TFS/Azure DevOps Server implantado em uma Rede Virtual, o agente poderá ser completamente isolado.
- O agente de compilação deve ser configurado com a configuração DNS do aplicativo Web no qual ele precisa ser implantado. Como os recursos privados na Rede Virtual não têm entradas no DNS do Azure, isso precisa ser adicionado ao arquivo hosts na máquina do agente.
- Se um certificado autoassinado for usado para a configuração do ASE, a opção
-allowUntrusted
precisará ser definida na tarefa de implantação do MSDeploy. Também é recomendado definir a variávelVSTS_ARM_REST_IGNORE_SSL_ERRORS
como true. Se um certificado de uma autoridade de certificação for usado para a configuração do ASE, isso não deverá ser necessário. Se você estiver implantando em um slot configurado para troca automática, a troca falhará, a menos que você definaSCM_SKIP_SSL_VALIDATION
ouSCM_SKIP_ASE_SSL_VALIDATION
para1
nas definições de configuração dos serviços de aplicativo.
Perguntas frequentes
Qual é a diferença entre as tarefas AzureWebApp
e AzureRmWebAppDeployment
?
O de tarefas do
A tarefa Implantação do Serviço de Aplicativo do Azure (AzureRmWebAppDeployment
pode lidar com cenários mais personalizados, como:
- Modificar definições de configuração dentro de pacotes da Web e arquivos de parâmetros XML.
- Implantar com a implantação da Web, se você estiver acostumado com o processo de implantação do IIS.
- Implantar em aplicativos virtuais.
- Implante em outros tipos de aplicativos, como aplicativos de contêiner, aplicativos de função, WebJobs ou aplicativos de API e móveis.
Observação
As transformações de arquivo e a substituição de variáveis também são suportadas pela tarefa separada Transformação de Arquivo para uso no Azure Pipelines. Você pode usar a tarefa Transformação de arquivo para aplicar transformações de arquivo e substituições de variáveis em qualquer arquivo de configuração e parâmetros.
Como devo configurar minha conexão de serviço?
Esta tarefa requer uma conexão de serviço do Azure Resource Manager.
Como devo configurar a implantação de trabalho na Web com o Application Insights?
Ao implantar em um Serviço de Aplicativo, se você tiver Application Insights configurado e tiver habilitado Remove additional files at destination
, também precisará habilitar Exclude files from the App_Data folder
. Habilitar essa opção mantém a extensão do Application Insights em um estado seguro. Esta etapa é necessária porque o WebJob contínuo do Application Insights está instalado na pasta App_Data.
Como devo configurar meu agente se ele estiver atrás de um proxy enquanto estou implantando no Serviço de Aplicativo?
Se o agente auto-hospedado exigir um proxy da Web, você poderá informar o agente sobre o proxy durante a configuração. Isso permite que seu agente se conecte ao Azure Pipelines ou ao Azure DevOps Server por meio do proxy. Saiba mais sobre como executar um agente auto-hospedado por trás de um proxy da Web.
Exemplos
- Implantar em um tipo de aplicativo específico
- Implantar no contêiner Linux do Aplicativo Web do Azure
- Implantar um aplicativo Web em um Serviço de Aplicativo do Windows em slots de implantação
- Exemplo de script de implantação de Post
Implantar em um tipo de aplicativo específico
Para implantar em um tipo de aplicativo específico, defina appType
para qualquer um dos seguintes valores aceitos: webApp
(Web App no Windows), webAppLinux
(Web App no Linux), webAppContainer
(Web App for Containers - Linux), functionApp
(Function App no Windows), functionAppLinux
(Function App no Linux), functionAppContainer
(Function App for Containers - Linux), apiApp
(API App) mobileApp
(Mobile App). Se não for mencionado, webApp
será tomado como o valor padrão.
Para habilitar quaisquer opções avançadas de implantação, adicione o parâmetro enableCustomDeployment: true
e inclua os seguintes parâmetros conforme necessário.
# deploymentMethod: 'runFromPackage' # supports zipDeploy as well
# appOffline: boolean # Not applicable for 'runFromPackage'
# setParametersFile: string
# removeAdditionalFilesFlag: boolean
# additionalArguments: string
Implantar no contêiner Linux do Aplicativo Web do Azure
O exemplo de YAML a seguir implanta em um contêiner do Aplicativo Web do Azure (Linux).
pool:
vmImage: ubuntu-latest
variables:
azureSubscriptionEndpoint: Contoso
DockerNamespace: contoso.azurecr.io
DockerRepository: aspnetcore
WebAppName: containersdemoapp
steps:
- task: AzureRMWebAppDeployment@4
displayName: Azure App Service Deploy
inputs:
appType: webAppContainer
ConnectedServiceName: $(azureSubscriptionEndpoint)
WebAppName: $(WebAppName)
DockerNamespace: $(DockerNamespace)
DockerRepository: $(DockerRepository)
DockerImageTag: $(Build.BuildId)
Implantar um aplicativo Web em um Serviço de Aplicativo do Windows em slots de implantação
O exemplo a seguir implanta um aplicativo Web em um Serviço de Aplicativo do Windows em slots de implantação.
pool:
vmImage: 'windows-latest'
variables:
solution: '**/*.sln'
buildPlatform: 'Any CPU'
buildConfiguration: 'Release'
stages:
- stage: DeployDevStage
displayName: 'Deploy App to Dev Slot'
jobs:
- job: DeployApp
displayName: 'Deploy App'
steps:
- task: DownloadPipelineArtifact@2
inputs:
buildType: 'current'
artifactName: 'drop'
targetPath: '$(System.DefaultWorkingDirectory)'
- task: AzureRmWebAppDeployment@4
inputs:
ConnectionType: 'AzureRM'
azureSubscription: 'Fabrikam Azure Subscription - PartsUnlimited'
appType: 'webApp'
WebAppName: 'partsunlimited'
deployToSlotOrASE: true
ResourceGroupName: 'rgPartsUnlimited'
SlotName: 'Dev'
packageForLinux: '$(System.DefaultWorkingDirectory)/**/*.zip'
- stage: DeployStagingStage
displayName: 'Deploy App to Staging Slot'
dependsOn: DeployDevStage
jobs:
- job: DeployApp
displayName: 'Deploy App'
steps:
- task: DownloadPipelineArtifact@2
inputs:
buildType: 'current'
artifactName: 'drop'
targetPath: '$(System.DefaultWorkingDirectory)'
- task: AzureRmWebAppDeployment@4
inputs:
appType: webApp
ConnectionType: AzureRM
ConnectedServiceName: 'Fabrikam Azure Subscription - PartsUnlimited'
ResourceGroupName: 'rgPartsUnlimited'
WebAppName: 'partsunlimited'
Package: '$(System.DefaultWorkingDirectory)/**/*.zip'
deployToSlotOrASE: true
SlotName: 'staging'
Exemplo de script de pós-implantação
A tarefa fornece uma opção para personalizar a implantação fornecendo um script que será executado no Serviço de Aplicativo do Azure depois que os artefatos do aplicativo tiverem sido copiados com êxito para o Serviço de Aplicativo. Você pode optar por fornecer um script de implantação embutido ou o caminho e o nome de um arquivo de script em sua pasta de artefatos.
Isso é muito útil quando você deseja restaurar as dependências do aplicativo diretamente no Serviço de Aplicativo. Restaurar pacotes para aplicativos Node, PHP e python ajuda a evitar tempos limite quando a dependência do aplicativo resulta em um artefato grande sendo copiado do agente para o Serviço de Aplicativo do Azure.
Um exemplo de um script de implantação é:
@echo off
if NOT exist requirements.txt (
echo No Requirements.txt found.
EXIT /b 0
)
if NOT exist "$(PYTHON_EXT)/python.exe" (
echo Python extension not available >&2
EXIT /b 1
)
echo Installing dependencies
call "$(PYTHON_EXT)/python.exe" -m pip install -U setuptools
if %errorlevel% NEQ 0 (
echo Failed to install setuptools >&2
EXIT /b 1
)
call "$(PYTHON_EXT)/python.exe" -m pip install -r requirements.txt
if %errorlevel% NEQ 0 (
echo Failed to install dependencies>&2
EXIT /b 1
)
Requerimentos
Exigência | Descrição |
---|---|
Tipos de pipeline | YAML, Construção clássica, Versão clássica |
Funciona em | Agente, DeploymentGroup |
Exigências | Nenhum |
Capacidades | Esta tarefa não satisfaz quaisquer exigências para tarefas subsequentes no trabalho. |
Restrições de comando | Qualquer |
Variáveis configuráveis | Qualquer |
Versão do agente | 2.104.1 ou superior |
Categoria de tarefa | Implantar |
Ver também
- Esta tarefa é de código aberto no GitHub. Comentários e contribuições são bem-vindos.