AzureRmWebAppDeployment@4 — Служба приложений Azure задачи развертывания версии 4
Используйте эту задачу для развертывания Служба приложений Azure веб-приложения, мобильного приложения или приложения API с помощью Docker, Java, .NET, .NET Core, Node.js, PHP, Python или Ruby.
Примечание
Используйте AzureFunctionApp@1 для развертывания приложений Функции Azure.
Обновите службы приложение Azure в Windows, веб-приложения в Linux с помощью встроенных образов или контейнеров Docker, ASP.NET, .NET Core, PHP, Python или веб-приложений на основе Node.js, приложений-функций в Windows или Linux с контейнерами Docker, мобильных приложений, приложений API и веб-заданий с помощью интерфейсов REST API веб-развертывания или Kudu.
Синтаксис
# 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.
Входные данные
ConnectionType
- Тип подключения
string
. Обязательный. Допустимые значения: AzureRM
(Azure Resource Manager), PublishProfile
(профиль публикации). Значение по умолчанию: AzureRM
.
Укажите тип подключения службы, используемый для развертывания веб-приложения.
Укажите Publish Profile
для использования созданных в Visual Studio профилей публикации.
ConnectionType
- Тип подключения
string
. Обязательный. Допустимые значения: AzureRM
(Azure Resource Manager), PublishProfile
(профиль публикации). Значение по умолчанию: AzureRM
.
Укажите тип подключения службы, используемый для развертывания веб-приложения.
azureSubscription
- Подписка Azure
Входной псевдоним: ConnectedServiceName
. string
. Требуется, если ConnectionType = AzureRM
.
Укажите подписку azure Resource Manager для развертывания.
PublishProfilePath
- Путь к профилю публикации
string
. Требуется, если ConnectionType = PublishProfile
. Значение по умолчанию: $(System.DefaultWorkingDirectory)/**/*.pubxml
.
Путь к профилю публикации , созданному из Visual Studio.
PublishProfilePassword
- Пароль профиля публикации
string
. Требуется, если ConnectionType = PublishProfile
.
Рекомендуется хранить пароль в секретной переменной и использовать ее здесь, например $(Password)
.
appType
- Тип Служба приложений
Входной псевдоним: WebAppKind
. string
. Требуется, если ConnectionType = AzureRM
. Допустимые значения: webApp
(веб-приложение в Windows), webAppLinux
(веб-приложение в Linux), webAppContainer
(веб-приложение для контейнеров (Linux)), webAppHyperVContainer
(веб-приложение для контейнеров (Windows)), functionApp
(приложение-функция в Windows (не рекомендуется, использовать Функции Azure задачу)), functionAppLinux
(приложение-функция в Linux (не рекомендуется, использовать Функции Azure задачу)), functionAppContainer
(приложение-функция для контейнеров (Linux) (не рекомендуется, использовать Функции Azure для задачи контейнера)), apiApp
(приложение API), mobileApp
(мобильное приложение). Значение по умолчанию: webApp
.
Выберите веб-приложение в Windows, веб-приложение в Linux, веб-приложение для контейнеров, приложение-функцию, приложение-функцию в Linux, приложение-функцию для контейнеров и мобильное приложение.
appType
- Тип Служба приложений
Входной псевдоним: WebAppKind
. string
. Требуется, если ConnectionType = AzureRM
. Допустимые значения: webApp
(веб-приложение в Windows), webAppLinux
(веб-приложение в Linux), webAppContainer
(веб-приложение для контейнеров (Linux)), functionApp
(приложение-функция в Windows), functionAppLinux
(приложение-функция в Linux), functionAppContainer
(приложение-функция для контейнеров (Linux)), apiApp
(приложение API), mobileApp
(мобильное приложение). Значение по умолчанию: webApp
.
Выберите веб-приложение в Windows, веб-приложение в Linux, веб-приложение для контейнеров, приложение-функцию, приложение-функцию в Linux, приложение-функцию для контейнеров и мобильное приложение.
WebAppName
- имя Служба приложений
string
. Требуется, если ConnectionType = AzureRM
.
Укажите имя существующего Служба приложений Azure. Службы приложений на основе выбранного типа приложения будут перечислены только при использовании задачи помощник.
deployToSlotOrASE
- Развертывание в слоте или Среда службы приложений
Входной псевдоним: DeployToSlotOrASEFlag
. boolean
. Необязательный элемент. Используйте при ConnectionType = AzureRM && WebAppKind != ""
. Значение по умолчанию: false
.
Укажите параметр для развертывания в существующем слоте развертывания или Служба приложений Azure среде. Для обоих целевых объектов задаче требуется имя группы ресурсов.
Если целевой объект развертывания является слотом, по умолчанию развертывание выполняется в рабочий слот. Можно указать любое другое имя существующего слота.
Если целевой объект развертывания является Служба приложений Azure средой, оставьте имя слота и Production
укажите только имя группы ресурсов.
ResourceGroupName
- Группа ресурсов
string
. Требуется, если DeployToSlotOrASEFlag = true
.
Имя группы ресурсов необходимо, если целевой объект развертывания является слотом развертывания или Среда службы приложений.
Укажите группу ресурсов Azure, содержащую указанные выше Служба приложений Azure.
SlotName
- Слот
string
. Требуется, если DeployToSlotOrASEFlag = true
. Значение по умолчанию: production
.
Укажите существующий слот, отличный от рабочего слота.
DockerNamespace
- Реестр или пространство имен
string
. Требуется, если WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppKind = webAppHyperVContainer
.
Глобально уникальное доменное имя верхнего уровня для конкретного реестра или пространства имен. Примечание. Полное имя образа будет иметь формат : {registry or namespace}/{repository}:{tag}
. Например, myregistry.azurecr.io/nginx:latest
.
DockerNamespace
- Реестр или пространство имен
string
. Требуется, если WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppkind = webAppHyperVContainer
.
Глобально уникальное доменное имя верхнего уровня для конкретного реестра или пространства имен. Примечание. Полное имя образа будет иметь формат : {registry or namespace}/{repository}:{tag}
. Например, myregistry.azurecr.io/nginx:latest
.
DockerNamespace
- Реестр или пространство имен
string
. Требуется, если WebAppKind = webAppContainer || WebAppkind = functionAppContainer
.
Глобально уникальное доменное имя верхнего уровня для конкретного реестра или пространства имен. Примечание. Полное имя образа будет иметь формат : {registry or namespace}/{repository}:{tag}
. Например, myregistry.azurecr.io/nginx:latest
.
DockerRepository
- Изображения
string
. Требуется, если WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppKind = webAppHyperVContainer
.
Имя репозитория, в котором хранятся образы контейнеров. Примечание. Полное имя образа будет иметь формат : {registry or namespace}/{repository}:{tag}
. Например, myregistry.azurecr.io/nginx:latest
.
DockerRepository
- Изображения
string
. Требуется, если WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppkind = webAppHyperVContainer
.
Имя репозитория, в котором хранятся образы контейнеров. Примечание. Полное имя образа будет иметь формат : {registry or namespace}/{repository}:{tag}
. Например, myregistry.azurecr.io/nginx:latest
.
DockerRepository
- Изображения
string
. Требуется, если WebAppKind = webAppContainer || WebAppkind = functionAppContainer
.
Имя репозитория, в котором хранятся образы контейнеров. Примечание. Полное имя образа будет иметь формат : {registry or namespace}/{repository}:{tag}
. Например, myregistry.azurecr.io/nginx:latest
.
DockerImageTag
- Тег
string
. Необязательный элемент. Используйте при WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppKind = webAppHyperVContainer
.
Теги — это механизм, который реестры используют для применения сведений о версии к образам Docker. Примечание. Полное имя образа будет иметь формат : {registry or namespace}/{repository}:{tag}
. Например, myregistry.azurecr.io/nginx:latest
.
DockerImageTag
- Тег
string
. Необязательный элемент. Используйте при WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppkind = webAppHyperVContainer
.
Теги — это механизм, который реестры используют для применения сведений о версии к образам Docker. Примечание. Полное имя образа будет иметь формат : {registry or namespace}/{repository}:{tag}
. Например, myregistry.azurecr.io/nginx:latest
.
DockerImageTag
- Тег
string
. Необязательный элемент. Используйте при WebAppKind = webAppContainer || WebAppkind = functionAppContainer
.
Теги — это механизм, который реестры используют для применения сведений о версии к образам Docker. Примечание. Полное имя образа будет иметь формат : {registry or namespace}/{repository}:{tag}
. Например, myregistry.azurecr.io/nginx:latest
.
VirtualApplication
- Виртуальное приложение
string
. Необязательный элемент. Используйте при WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && WebAppKind != functionApp && webAppKind != functionAppLinux && WebAppKind != ""
.
Укажите имя виртуального приложения, которое было настроено в портал Azure. Этот параметр не требуется для развертываний в корневом каталоге веб-сайта. Виртуальное приложение должно быть настроено перед развертыванием веб-проекта.
VirtualApplication
- Виртуальное приложение
string
. Необязательный элемент. Используйте при WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != functionApp && webAppKind != functionAppLinux && WebAppKind != ""
.
Укажите имя виртуального приложения, которое было настроено в портал Azure. Этот параметр не требуется для развертываний в корневом каталоге веб-сайта. Виртуальное приложение должно быть настроено перед развертыванием веб-проекта.
packageForLinux
- Пакет или папка
Входной псевдоним: Package
. string
. Требуется, если ConnectionType = PublishProfile || WebAppKind = webApp || WebAppKind = apiApp || WebAppKind = functionApp || WebAppKind = mobileApp || WebAppKind = webAppLinux || webAppKind = functionAppLinux
. Значение по умолчанию: $(System.DefaultWorkingDirectory)/**/*.zip
.
Путь к пакету или папке, содержащей содержимое службы приложений, созданное MSBuild, или сжатый ZIP-файл или war-файл.
Переменными являются Сборка и Выпуск. Поддерживаются подстановочные знаки.
Например, $(System.DefaultWorkingDirectory)/\*\*/\*.zip
или $(System.DefaultWorkingDirectory)/\*\*/\*.war
.
RuntimeStack
- Стек среды выполнения
string
. Необязательный элемент. Используйте при WebAppKind = webAppLinux
.
Укажите платформу и версию для приложения-функции в Linux.
RuntimeStackFunction
- Стек среды выполнения
string
. Необязательный элемент. Используйте при WebAppKind = functionAppLinux
. Допустимые значения: DOTNET|2.2
(DOTNET|2.2 (functionapp v2)), DOTNET|3.1
(DOTNET|3.1 (functionapp версии 3)), JAVA|8
(JAVA|8 (functionapp v2/v3)), JAVA|11
(JAVA|11 (functionapp v3)), NODE|8
(NODE|8 (functionapp v2)), (NODE|10 (functionapp v3)), NODE|10
(NODE|10 (functionapp v2) 2/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 версии 2/v3)), PYTHON|3.8
(PYTHON|3.8 (functionapp версии 3)).
Укажите платформу и версию. Сведения о поддерживаемых версиях среды выполнения см. в обзоре Функции Azure версий среды выполнения. Старые значения, такие как DOCKER|microsoft/azure-functions-*
, являются устаревшими. Используйте новые значения из раскрывающегося списка.
RuntimeStackFunction
- Стек среды выполнения
string
. Необязательный элемент. Используйте при WebAppKind = functionAppLinux
. Допустимые значения: DOCKER|microsoft/azure-functions-dotnet-core2.0:2.0
(.NET), DOCKER|microsoft/azure-functions-node8:2.0
(JavaScript).
Укажите платформу и версию.
StartupCommand
- Команда запуска
string
. Необязательный элемент. Используйте при WebAppKind = webAppLinux || WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppKind = functionAppLinux || WebAppKind = webAppHyperVContainer
.
Укажите команду Запуска. Пример:
dotnet exec filename.dll
dotnet filename.dll
.
StartupCommand
- Команда запуска
string
. Необязательный элемент. Используйте при WebAppKind = webAppLinux || WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppKind = functionAppLinux || WebAppkind = webAppHyperVContainer
.
Укажите команду Запуска. Пример:
dotnet exec filename.dll
dotnet filename.dll
.
StartupCommand
- Команда запуска
string
. Необязательный элемент. Используйте при WebAppKind = webAppLinux || WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppKind = functionAppLinux
.
Укажите команду Запуска. Пример:
dotnet exec filename.dll
dotnet filename.dll
.
StartupCommand
- Команда запуска
string
. Необязательный элемент. Используйте при WebAppKind = webAppLinux || WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppKind = functionAppLinux
.
Укажите команду Запуска. Например, dotnet run
dotnet filename.dll
.
StartupCommand
- Команда запуска
string
. Необязательный элемент. Используйте при WebAppKind = webAppLinux || WebAppKind = webAppContainer || WebAppkind = functionAppContainer
.
Укажите команду Запуска.
ScriptType
- Тип скрипта развертывания
string
. Необязательный элемент. Используйте при ConnectionType = AzureRM && WebAppKind != "" && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer
. Допустимые значения: Inline Script
, File Path
(Путь к файлу скрипта).
Настраивает развертывание, предоставляя скрипт, который выполняется на Служба приложений Azure после успешного развертывания. Выберите встроенный сценарий развертывания или путь и имя файла скрипта. Дополнительные сведения о развертывании Служба приложений Azure.
ScriptType
- Тип скрипта развертывания
string
. Необязательный элемент. Используйте при ConnectionType = AzureRM && WebAppKind != "" && WebAppKind != webAppContainer && WebAppkind != functionAppContainer
. Допустимые значения: Inline Script
, File Path
(Путь к файлу скрипта).
Настраивает развертывание, предоставляя скрипт, который выполняется на Служба приложений Azure после успешного развертывания. Выберите встроенный сценарий развертывания или путь и имя файла скрипта. Дополнительные сведения о развертывании Служба приложений Azure.
InlineScript
- Встроенный скрипт
string
. Требуется, если ScriptType == Inline Script && ConnectionType = AzureRM && WebAppKind != "" && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer
. Значение по умолчанию: :: You can provide your deployment commands here. One command per line.
.
Скрипт для выполнения. Здесь можно указать команды развертывания по одной команде в каждой строке. См. следующий пример.
InlineScript
- Встроенный скрипт
string
. Требуется, если ScriptType == Inline Script && ConnectionType = AzureRM && WebAppKind != "" && WebAppKind != webAppContainer && WebAppkind != functionAppContainer
. Значение по умолчанию: :: You can provide your deployment commands here. One command per line.
.
Скрипт для выполнения. Здесь можно указать команды развертывания по одной команде в каждой строке. См. следующий пример.
ScriptPath
- Путь к скрипту развертывания
string
. Требуется, если ScriptType == File Path && ConnectionType = AzureRM && WebAppKind != "" && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer
.
Путь и имя выполняемого скрипта.
ScriptPath
- Путь к скрипту развертывания
string
. Требуется, если ScriptType == File Path && ConnectionType = AzureRM && WebAppKind != "" && WebAppKind != webAppContainer && WebAppkind != functionAppContainer
.
Путь и имя выполняемого скрипта.
WebConfigParameters
- Создание параметров web.config для приложений Python, Node.js, Go и Java
string
. Необязательный элемент. Используйте при WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war
.
Web.config
Стандарт будет создан и развернут в Служба приложений Azure, если у приложения его нет. Значения в web.config
могут изменяться и изменяться в зависимости от платформы приложений. Например, для node.js
приложений web.config
будет иметь файл запуска и iis_node значения модуля. Эта функция редактирования доступна только для созданного web.config
объекта . Дополнительные сведения о развертывании Служба приложений Azure.
WebConfigParameters
- Создание параметров web.config для приложений Python, Node.js, Go и Java
string
. Необязательный элемент. Используйте при WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war
.
Web.config
Стандарт будет создан и развернут в Служба приложений Azure, если у приложения его нет. Значения в web.config
могут изменяться и изменяться в зависимости от платформы приложений. Например, для node.js
приложений web.config
будет иметь файл запуска и iis_node значения модуля. Эта функция редактирования доступна только для созданного web.config
объекта . Дополнительные сведения о развертывании Служба приложений Azure.
AppSettings
- Параметры приложения
string
. Необязательный элемент. Используйте при ConnectionType = AzureRM
.
Изменяет параметры веб-приложения с помощью синтаксиса -key value
. Значения, содержащие пробелы, должны быть заключены в двойные кавычки. Примерами являются события -Port 5000 -RequestTimeout 5000
и -WEBSITE_TIME_ZONE "Eastern Standard Time"
. Чтобы предоставить два или более значений ключа, значения ключа должны быть разделены пробелом. Например, -key1 "Value1" -Key2 "Value2"
.
ConfigurationSettings
- Параметры конфигурации
string
. Необязательный элемент. Используйте при ConnectionType = AzureRM
.
Изменяет параметры конфигурации веб-приложения с помощью синтаксиса -key value
. Значения, содержащие пробелы, должны быть заключены в двойные кавычки. Например, -phpVersion 5.6 -linuxFxVersion node|6.11
.
enableCustomDeployment
- Выбор метода развертывания
Входной псевдоним: UseWebDeploy
. boolean
. Необязательный элемент. Используйте при ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar
. Значение по умолчанию: false
.
Если флажок не установлен или false, задача автоматически определяет оптимальный метод развертывания на основе типа приложения, формата пакета и других параметров. Установите этот флажок в помощник задачи, чтобы просмотреть поддерживаемые методы развертывания и выбрать один из них для развертывания приложения.
enableCustomDeployment
- Выбор метода развертывания
Входной псевдоним: UseWebDeploy
. boolean
. Необязательный элемент. Используйте при ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar
. Значение по умолчанию: false
.
Если флажок не установлен или false, задача автоматически определяет оптимальный метод развертывания на основе типа приложения, формата пакета и других параметров. Установите этот флажок в помощник задачи, чтобы просмотреть поддерживаемые методы развертывания и выбрать один из них для развертывания приложения.
DeploymentType
- Метод развертывания
string
. Требуется, если UseWebDeploy == true && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar
. Допустимые значения: webDeploy
(Web Deploy), zipDeploy
(Zip Deploy), runFromZip
(Run From Package). Значение по умолчанию: webDeploy
.
Определяет метод развертывания для приложения.
DeploymentType
- Метод развертывания
string
. Требуется, если UseWebDeploy == true && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar
. Допустимые значения: webDeploy
(Web Deploy), zipDeploy
(Zip Deploy), runFromZip
(Run From Package). Значение по умолчанию: webDeploy
.
Определяет метод развертывания для приложения.
TakeAppOfflineFlag
- Перевести приложение в автономный режим
boolean
. Необязательный элемент. Используйте при UseWebDeploy == true && DeploymentType != runFromZip && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar
. Значение по умолчанию: true
.
Укажите этот параметр, чтобы перевести Служба приложений Azure в автономный app_offline.htm
режим, разместив файл в корневом каталоге перед началом операции синхронизации. Файл будет удален после успешного завершения синхронизации.
TakeAppOfflineFlag
- Перевести приложение в автономный режим
boolean
. Необязательный элемент. Используйте при UseWebDeploy == true && DeploymentType != runFromZip && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar
. Значение по умолчанию: true
.
Укажите этот параметр, чтобы перевести Служба приложений Azure в автономный app_offline.htm
режим, разместив файл в корневом каталоге перед началом операции синхронизации. Файл будет удален после успешного завершения синхронизации.
SetParametersFile
- Файл SetParameters
string
. Необязательный элемент. Используйте при UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar
.
Расположение используемого SetParameters.xml
файла.
SetParametersFile
- Файл SetParameters
string
. Необязательный элемент. Используйте при UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar
.
Расположение используемого SetParameters.xml
файла.
RemoveAdditionalFilesFlag
- Удаление дополнительных файлов в месте назначения
boolean
. Необязательный элемент. Используйте при UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar
. Значение по умолчанию: false
.
Укажите значение true, чтобы удалить файлы на Служба приложений Azure, которые не имеют соответствующих файлов в пакете или папке Служба приложений. При этом также будут удалены все файлы, связанные с любым расширением, установленным на этом Служба приложений Azure. Чтобы избежать этого, установите Exclude files from App_Data folder
флажок.
RemoveAdditionalFilesFlag
- Удаление дополнительных файлов в месте назначения
boolean
. Необязательный элемент. Используйте при UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar
. Значение по умолчанию: false
.
Укажите значение true, чтобы удалить файлы на Служба приложений Azure, которые не имеют соответствующих файлов в пакете или папке Служба приложений. При этом также будут удалены все файлы, связанные с любым расширением, установленным на этом Служба приложений Azure. Чтобы избежать этого, установите Exclude files from App_Data folder
флажок.
ExcludeFilesFromAppDataFlag
- Исключение файлов из папки App_Data
boolean
. Необязательный элемент. Используйте при UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar
. Значение по умолчанию: true
.
Укажите параметр , чтобы предотвратить развертывание файлов в App_Data
папке или удаление из Служба приложений Azure.
ExcludeFilesFromAppDataFlag
- Исключение файлов из папки App_Data
boolean
. Необязательный элемент. Используйте при UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar
. Значение по умолчанию: true
.
Укажите параметр , чтобы предотвратить развертывание файлов в App_Data
папке или удаление из Служба приложений Azure.
AdditionalArguments
- Дополнительные аргументы
string
. Необязательный элемент. Используйте при UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar
. Значение по умолчанию: -retryAttempts:6 -retryInterval:10000
.
Дополнительные аргументы веб-развертывания, следующие синтаксису -key:value
. Они будут применяться при развертывании Служба приложений Azure. Примеры: -disableLink:AppPoolExtension -disableLink:ContentExtension
. Дополнительные сведения о параметрах операции веб-развертывания.
AdditionalArguments
- Дополнительные аргументы
string
. Необязательный элемент. Используйте при UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar
. Значение по умолчанию: -retryAttempts:6 -retryInterval:10000
.
Дополнительные аргументы веб-развертывания, следующие синтаксису -key:value
. Они будут применяться при развертывании Служба приложений Azure. Примеры: -disableLink:AppPoolExtension -disableLink:ContentExtension
. Дополнительные сведения о параметрах операции веб-развертывания.
RenameFilesFlag
- Переименование заблокированных файлов
boolean
. Необязательный элемент. Используйте при UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar
. Значение по умолчанию: true
.
Укажите значение по умолчанию, чтобы включить флаг MSDEPLOY_RENAME_LOCKED_FILES=1
msdeploy в Служба приложений Azure параметрах приложения. Если этот параметр задан, параметр позволяет msdeploy переименовывать файлы, заблокированные во время развертывания приложения.
RenameFilesFlag
- Переименование заблокированных файлов
boolean
. Необязательный элемент. Используйте при UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar
. Значение по умолчанию: true
.
Укажите значение по умолчанию, чтобы включить флаг MSDEPLOY_RENAME_LOCKED_FILES=1
msdeploy в Служба приложений Azure параметрах приложения. Если этот параметр задан, параметр позволяет msdeploy переименовывать файлы, заблокированные во время развертывания приложения.
enableXmlTransform
- Преобразование XML
Входной псевдоним: XmlTransformation
. boolean
. Необязательный элемент. Используйте при WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war
. Значение по умолчанию: false
.
Преобразования конфигурации будут выполняться для *.Release.config
и *.<EnvironmentName>.config
в *.config file
. Преобразования конфигурации выполняются до подстановки переменных. Xml-преобразования поддерживаются только для платформы Windows.
enableXmlTransform
- Преобразование XML
Входной псевдоним: XmlTransformation
. boolean
. Необязательный элемент. Используйте при WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war
. Значение по умолчанию: false
.
Преобразования конфигурации будут выполняться для *.Release.config
и *.<EnvironmentName>.config
в *.config file
. Преобразования конфигурации выполняются до подстановки переменных. Xml-преобразования поддерживаются только для платформы Windows.
enableXmlVariableSubstitution
- Подстановка переменных XML
Входной псевдоним: XmlVariableSubstitution
. boolean
. Необязательный элемент. Используйте при WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war
. Значение по умолчанию: false
.
Переменные, определенные в конвейере сборки или выпуска, будут сопоставляться с ключами или записями имен в configSections
разделах , appSettings
, applicationSettings
и connectionStrings
любого файла конфигурации и parameters.xml
файла конфигурации. Подстановка переменных выполняется после преобразований конфигурации.
Если одни и те же переменные определены в конвейере выпуска и на этапе, переменные этапа будут заменять переменные конвейера выпуска. Дополнительные сведения о [подстановке переменных XML]](/azure/devops/pipelines/tasks/transforms-variable-substitution#xml-variable-substitution).
enableXmlVariableSubstitution
- Подстановка переменных XML
Входной псевдоним: XmlVariableSubstitution
. boolean
. Необязательный элемент. Используйте при WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war
. Значение по умолчанию: false
.
Переменные, определенные в конвейере сборки или выпуска, будут сопоставляться с ключами или записями имен в configSections
разделах , appSettings
, applicationSettings
и connectionStrings
любого файла конфигурации и parameters.xml
файла конфигурации. Подстановка переменных выполняется после преобразований конфигурации.
Если одни и те же переменные определены в конвейере выпуска и на этапе, переменные этапа будут заменять переменные конвейера выпуска. Дополнительные сведения о [подстановке переменных XML]](/azure/devops/pipelines/tasks/transforms-variable-substitution#xml-variable-substitution).
JSONFiles
- Подстановка переменных JSON
string
. Необязательный элемент. Используйте при WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war
.
Предоставляет разделенный новыми строками список ФАЙЛОВ JSON для замены значений переменных. Имена файлов должны быть относительно корневой папки. Чтобы заменить вложенные или иерархические переменные JSON, укажите их с помощью JSONPath
выражений. Например, чтобы заменить значение ConnectionString
в приведенном ниже примере, определите переменную с именем Data.DefaultConnection.ConnectionString
в конвейере сборки или выпуска (или стадии конвейеров выпуска).
{
"Data": {
"DefaultConnection": {
"ConnectionString": "Server=(localdb)\SQLEXPRESS;Database=MyDB;Trusted_Connection=True"
}
}
}
Подстановка переменных выполняется после преобразований конфигурации. Примечание. Переменные конвейера сборки и выпуска исключаются из подстановки. Дополнительные сведения о подстановке переменных JSON.
JSONFiles
- Подстановка переменных JSON
string
. Необязательный элемент. Используйте при WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war
.
Предоставляет разделенный новыми строками список ФАЙЛОВ JSON для замены значений переменных. Имена файлов должны быть относительно корневой папки. Чтобы заменить вложенные или иерархические переменные JSON, укажите их с помощью JSONPath
выражений. Например, чтобы заменить значение ConnectionString
в приведенном ниже примере, определите переменную с именем Data.DefaultConnection.ConnectionString
в конвейере сборки или выпуска (или стадии конвейеров выпуска).
{
"Data": {
"DefaultConnection": {
"ConnectionString": "Server=(localdb)\SQLEXPRESS;Database=MyDB;Trusted_Connection=True"
}
}
}
Подстановка переменных выполняется после преобразований конфигурации. Примечание. Переменные конвейера сборки и выпуска исключаются из подстановки. Дополнительные сведения о подстановке переменных JSON.
Параметры управления задачами
Помимо входных данных, все задачи имеют параметры управления. Дополнительные сведения см. в разделе Параметры управления и общие свойства задачи.
Выходные переменные
Эта задача определяет следующие выходные переменные, которые можно использовать в последующих шагах, заданиях и этапах.
AppServiceApplicationUrl
URL-адрес приложения выбранного Служба приложений.
Комментарии
- Предварительные требования для задачи
- Примечания об использовании
- Методы развертывания
- Устранение неполадок
- Вопросы и ответы
Используйте эту задачу для развертывания в ряде Служб приложений в Azure. Задача работает на кроссплатформенных агентах под управлением Windows, Linux или Mac и использует несколько разных базовых технологий развертывания.
Задача работает для веб-приложений на основе ASP.NET, ASP.NET Core, PHP, Java, Python, Go и Node.js.
Задачу можно использовать для развертывания в ряде служб приложение Azure, например:
- веб-приложения в Windows и Linux
- веб-приложения для контейнеров
- Приложения-функции в Windows и Linux
- Приложения-функции для контейнеров
- Веб-задания
- Приложения, настроенные в Служба приложений Azure средах
Предварительные требования для задачи
Для правильной работы задачи на целевых компьютерах необходимо настроить следующие предварительные требования.
Служба приложений экземпляр. Задача используется для развертывания проекта веб-приложения или проекта функции Azure в существующем экземпляре Служба приложений Azure, который должен существовать до выполнения задачи. Экземпляр Служба приложений можно создать на основе портал Azure и настроить там. Кроме того, задачу Azure PowerShell можно использовать для запуска скриптов AzureRM PowerShell для подготовки и настройки веб-приложения.
Подписка Azure. Для развертывания в Azure подписка Azure должна быть связана с конвейером. Задача не работает с подключением классической службы Azure и не будет перечислять эти подключения в параметрах задачи.
Примечания об использовании
- Задача работает только с API Resource Manager Azure.
- Чтобы игнорировать ошибки SSL, определите переменную
VSTS_ARM_REST_IGNORE_SSL_ERRORS
со значениемtrue
в конвейере. При развертывании в слоте, настроенном для автоматического переключения, переключение завершится ошибкой, если в параметрах конфигурации служб приложений не заданоSCM_SKIP_SSL_VALIDATION
значение илиSCM_SKIP_ASE_SSL_VALIDATION
1
. - Для приложений .NET, предназначенных для веб-приложений в Windows, избегайте сбоев развертывания с ошибкой
ERROR_FILE_IN_USE
, убедитесь, что включены параметры Переименовать заблокированные файлы и Перевести приложение в автономный режим . Для развертывания с нулевым временем простоя используйте параметр переключения слотов. - При развертывании в Служба приложений, для которого настроена application Insights и включен параметр Удалить дополнительные файлы в месте назначения, убедитесь, что вы также включили параметр Исключить файлы из папки App_Data, чтобы поддерживать расширение Application Insights в безопасном состоянии. Это необходимо, так как непрерывное веб-задание Application Insights устанавливается в папку App_Data.
Методы развертывания
В этой задаче доступно несколько методов развертывания. Веб-развертывание (msdeploy.exe) используется по умолчанию. Чтобы изменить параметр развертывания, разверните дополнительные параметры развертывания и включите параметр Выбрать метод развертывания , чтобы выбрать один из дополнительных вариантов развертывания на основе пакета.
В зависимости от типа Служба приложений Azure и агента задача выбирает подходящую технологию развертывания. Ниже перечислены различные технологии развертывания, используемые задачей.
- Веб-развертывание
- REST API Kudu
- Реестр контейнеров
- Развертывание в ZIP
- Запуск из пакета
- Развертывание войны
По умолчанию задача пытается выбрать соответствующую технологию развертывания на основе типа входного пакета, типа Служба приложений и операционной системы агента.
Логика автоматического обнаружения
Для агентов на основе Windows.
Тип Служба приложений | Тип пакета | Методы развертывания |
---|---|---|
Веб-приложение в Linux или приложение-функция в Linux | Война папок,ZIP/JAR |
Zip Deploy War Deploy |
Веб-приложение для контейнеров (Linux) или приложение-функция для контейнеров (Linux) | Обновление параметров приложения | Н/Д |
Веб-приложение в Windows, приложение-функция в Windows, приложение API или мобильное приложение | Тип пакета MsBuild War Jar или развертывание в папке или ZIP-файле виртуального приложения |
War Deploy Zip Deploy Web Deploy Web Deploy if postDeploymentScript == true, Zip Deploy else, Run From Package |
В агентах, отличных от Windows (для любого типа Служба приложений), задача зависит от REST API Kudu для развертывания приложения.
Web Deploy
Веб-развертывание (msdeploy.exe) можно использовать для развертывания веб-приложения в Windows или приложения-функции в Служба приложений Azure с помощью агента Windows. Веб-развертывание обладает широкими возможностями и предлагает следующие варианты:
Переименуйте заблокированные файлы: Переименуйте любой файл, который по-прежнему используется веб-сервером, включив флаг
MSDEPLOY\_RENAME\_LOCKED\_FILES=1
msdeploy в параметрах Служба приложений Azure. Этот параметр позволяет msdeploy переименовывать файлы, заблокированные во время развертывания приложения.Удалите дополнительные файлы в месте назначения: Удаляет файлы в Служба приложений Azure, которые не имеют соответствующих файлов в развертываемом пакете артефактов Служба приложений или папке.
Исключите файлы из папки App_Data: Запретить развертывание файлов в папке App_Data (в развертываемом пакете артефактов или папке) в Служба приложений Azure
Дополнительные аргументы веб-развертывания: Аргументы, которые будут применяться при развертывании Служба приложений Azure. Например,
-disableLink:AppPoolExtension -disableLink:ContentExtension
. Дополнительные примеры параметров операции веб-развертывания см. в разделе Параметры операции веб-развертывания.
Установите веб-развертывание в агенте из веб-развертывания 3.6. Веб-развертывание 3.5 должно быть установлено без поддержки пакетной поддержки SQL. При установке веб-развертывания не нужно выбирать какие-либо пользовательские параметры. Веб-развертывание устанавливается по адресу C:/Program Files (x86)/IIS/Microsoft Web Deploy V3
.
REST API Kudu
Rest API Kudu работают с агентами автоматизации Windows и Linux, когда целевым объектом является веб-приложение в Windows, веб-приложение в Linux (встроенный источник) или приложение-функция. Задача использует Kudu для копирования файлов в службу приложение Azure.
Реестр контейнеров
Работает с агентами автоматизации Windows и Linux, когда целевым объектом является веб-приложение для контейнеров. Задача обновляет приложение, задавая соответствующий реестр контейнеров, репозиторий, имя образа и сведения о теге. Вы также можете использовать задачу для передачи команды запуска для образа контейнера.
Развертывание из ZIP-файла
Ожидает пакет развертывания .zip и развертывает содержимое файла в папке wwwroot Служба приложений или приложения-функции в Azure. Этот параметр перезаписывает все существующее содержимое в папке wwwroot . Дополнительные сведения см. в статье Развертывание zip для Функции Azure.
Запуск из пакета
Ожидает тот же пакет развертывания, что и Zip Deploy. Однако вместо развертывания файлов в папке wwwroot весь пакет подключается средой выполнения Функций, а файлы в папке wwwroot становятся доступными только для чтения. Дополнительные сведения см. в руководстве по запуску Функций Azure из файла пакета.
Развертывание войны
Ожидает war deployment package и развертывает содержимое файла в папке wwwroot или папке webapps Служба приложений в Azure.
Устранение неполадок
Не удается выполнить веб-развертывание на Служба приложений Azure с помощью проверки подлинности Microsoft Entra ID из агента Windows
Задача развертывания Служба приложений Azure поддерживает подключение к Microsoft Azure с помощью подключения к службе ARM с помощью Microsoft Entra ID, если не выполняются следующие три условия:
- Вы используете формат пакета веб-развертывания в агенте Windows
- Агент работает с более старой версией msdeploy.exe (например, при использовании образа размещенного агента Windows-2019 ).
- Обычная проверка подлинности отключена для Служба приложений Azure
Если эти три условия присутствуют, вы получите сообщение об ошибке, например 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.
Чтобы устранить эту проблему, можно выбрать один из следующих вариантов в порядке предпочтения.
- Обновите образ агента. Если вы используете размещенные агенты, перейдите с windows-2019 на windows-2022 (или windows-latest). Если вы используете локальные агенты, установите Visual Studio 2022 на агенте, чтобы получить более новую версию msdeploy.exe.
- Если вы зависите от более старого образа агента и не можете обновить агент для конвейера, рассмотрите возможность разделения задания, чтобы задача развертывания Служба приложений Azure выполнялась в windows-2022 (или windows-latest).
- Если ни то из этих вариантов не существует, вы можете включить обычную проверку подлинности для Служба приложений Azure.
Ошибка: "Не удалось извлечь маркер доступа для Azure". Убедитесь, что используемый субъект-служба является допустимым и не истек ли срок действия.
Задача использует субъект-службу в подключении к службе для проверки подлинности в Azure. Если срок действия субъекта-службы истек или у него нет разрешений на Служба приложений, задача завершается сбоем с этой ошибкой. Убедитесь, что используемый субъект-служба допустимый и что он присутствует в регистрации приложения. Дополнительные сведения см. в статье Использование управления доступом на основе ролей для контроля доступа к ресурсам в подписке Azure. В этой записи блога также содержатся дополнительные сведения об использовании проверки подлинности субъекта-службы.
Ошибка SSL
Если вы хотите использовать сертификат в Служба приложений, сертификат должен быть подписан доверенным центром сертификации. Если веб-приложение выдает ошибки проверки сертификата, вероятно, вы используете самозаверяющий сертификат. Присвойте переменной VSTS_ARM_REST_IGNORE_SSL_ERRORS
значение true
в конвейере сборки или выпуска, чтобы устранить ошибку.
Выпуск зависает на долгое время, а затем завершается ошибкой
Эта проблема может быть связана с нехваткой емкости в плане Служба приложений. Чтобы устранить эту проблему, можно увеличить масштаб экземпляра Служба приложений, чтобы увеличить доступное пространство ЦП, ОЗУ и дискового пространства, или попробовать использовать другой план Служба приложений.
Коды ошибок 5хх
Если вы видите ошибку 5xx, проверка состояние службы Azure.
Функция Azure внезапно перестала работать
Функции Azure может внезапно перестать работать, если с момента последнего развертывания прошло более одного года. При развертывании с параметром RunFromPackage в deploymentMethod создается SAS с датой окончания срока действия 1 год и устанавливается значение WEBSITE_RUN_FROM_PACKAGE в конфигурации приложения. Функции Azure использует этот SAS для ссылки на файл пакета для выполнения функции, поэтому если срок действия SAS истек, функция не будет выполняться. Чтобы устранить эту проблему, разверните еще раз, чтобы создать SAS с датой окончания срока действия в один год.
Ошибка: "Пакет с указанным шаблоном не найден"
Проверьте, публикуется ли пакет, упомянутый в задаче, как артефакт в сборке или на предыдущем этапе и скачан ли он в текущем задании.
Ошибка: параметр развертывания публикации с помощью ZIP-файла не поддерживается для типа пакета msBuild
Веб-пакеты, созданные с помощью задачи MSBuild (с аргументами по умолчанию), имеют структуру вложенных папок, которую можно правильно развернуть только с помощью веб-развертывания. Параметр развертывания publish-to-ZIP нельзя использовать для развертывания этих пакетов. Чтобы преобразовать структуру упаковки, сделайте следующее:
В задаче Сборка решения измените аргументы MSBuild на
/p:DeployOnBuild=true /p:DeployDefaultTarget=WebPublish /p:WebPublishMethod=FileSystem /p:DeleteExistingFiles=True /p:publishUrl="$(System.DefaultWorkingDirectory)\\WebAppContent"
:Добавьте задачу Архивация и измените значения следующим образом:
Измените корневую папку или файл для архивации на
$(System.DefaultWorkingDirectory)\\WebAppContent
.Снимите флажок Prepend root folder name to archive paths проверка ( Prepend root folder name to archive paths проверка ).
Развертывание веб-приложения в Windows выполнено успешно, но приложение не работает
Это может быть вызвано тем, что web.config отсутствует в приложении. Вы можете добавить web.config файл в источник или автоматически создать его с помощью параметров преобразования файлов и подстановки переменных задачи.
Щелкните задачу и перейдите в раздел Создание параметров web.config для приложений Python, Node.js, Go и Java.
Нажмите кнопку Дополнительно Создать параметры web.config для приложений Python, Node.js, Go и Java, чтобы изменить параметры.
Выберите тип приложения в раскрывающемся списке.
Нажмите кнопку OK. Будут заполнены web.config параметры, необходимые для создания web.config.
Примечание
Этот раздел является нерекомендуемой и заменен задачей "Преобразование файла ".
ERROR_FILE_IN_USE
При развертывании приложений .NET в веб-приложении в Windows развертывание может завершиться ошибкой с кодом ERROR_FILE_IN_USE. Чтобы устранить эту ошибку, убедитесь, что в задаче включены параметры Переименовать заблокированные файлы и Перевести приложение в автономный режим . Для развертываний без простоя используйте переключение слотов.
Также можно использовать метод Run из пакета развертывания, чтобы избежать блокировки ресурсов.
Ошибка веб-развертывания
Если для развертывания приложения используется веб-развертывание, в некоторых сценариях ошибок при веб-развертывании будет регистрироваться ошибка в журнале. Сведения об устранении ошибки веб-развертывания см. в разделе Коды ошибок веб-развертывания.
Развертывание веб-приложения в Среде службы приложений (ASE) не работает
- Убедитесь, что агент сборки Azure DevOps находится в той же виртуальной сети (подсеть может отличаться), что и внутренняя Load Balancer (ILB) ASE. Это позволит агенту извлекать код из Azure DevOps и развертывать их в ASE.
- Если вы используете Azure DevOps, агент не обязательно должен быть доступен из Интернета, а только исходящий доступ для подключения к Azure DevOps Service.
- Если вы используете TFS/Azure DevOps Server развернуты в виртуальная сеть, агент можно полностью изолировать.
- Агент сборки должен быть настроен с помощью конфигурации DNS веб-приложения, в который он должен развернуться. Так как частные ресурсы в виртуальная сеть не содержат записей в Azure DNS, их необходимо добавить в файл hosts на компьютере агента.
- Если для конфигурации ASE используется самозаверяющий сертификат,
-allowUntrusted
этот параметр необходимо задать в задаче развертывания для MSDeploy. Также рекомендуется задать для переменнойVSTS_ARM_REST_IGNORE_SSL_ERRORS
значение true. Если для настройки ASE используется сертификат из центра сертификации, это не должно быть обязательным. При развертывании в слоте, настроенном для автоматического переключения, переключение завершится ошибкой, если в параметрах конфигурации служб приложений не заданоSCM_SKIP_SSL_VALIDATION
значение илиSCM_SKIP_ASE_SSL_VALIDATION
1
.
Часто задаваемые вопросы
В чем разница между задачами AzureWebApp
и AzureRmWebAppDeployment
?
Задача веб-приложения Azure (AzureWebApp
) — это самый простой способ развертывания в веб-приложении Azure. По умолчанию развертывание выполняется в корневое приложение в веб-приложении Azure.
Задача развертывания Служба приложений Azure (AzureRmWebAppDeployment
) может обрабатывать дополнительные пользовательские сценарии, например:
- Изменение параметров конфигурации в веб-пакетах и ФАЙЛАх параметров XML.
- Развертывание с помощью веб-развертывания, если вы привыкли к процессу развертывания IIS.
- Развертывание в виртуальных приложениях.
- Развертывание в других типах приложений, таких как приложения-контейнеры, приложения-функции, веб-задания, API и мобильные приложения.
Примечание
Преобразования файлов и подстановка переменных также поддерживаются отдельной задачей преобразования файлов для использования в Azure Pipelines. Вы можете использовать задачу преобразования файлов, чтобы применять преобразования файлов и подстановки переменных к любым файлам конфигурации и параметров.
Как настроить подключение к службе?
Для выполнения этой задачи требуется подключение службы Resource Manager Azure.
Как настроить развертывание веб-заданий с помощью Application Insights?
Если при развертывании в Служба приложений настроено приложение Application Insights и вы включили Remove additional files at destination
, необходимо также включить Exclude files from the App_Data folder
. При включении этого параметра расширение Application Insights сохраняется в безопасном состоянии. Этот шаг является обязательным, так как непрерывное веб-задание Application Insights устанавливается в папку App_Data.
Как настроить агент, если он находится за прокси-сервером во время развертывания в Служба приложений?
Если локальному агенту требуется веб-прокси, вы можете сообщить агенту о прокси-сервере во время настройки. Это позволит агенту подключаться к Azure Pipelines или Azure DevOps Server через прокси-сервер. Узнайте больше о запуске локального агента за веб-прокси.
Примеры
- Развертывание в определенном типе приложения
- Развертывание в контейнере Linux веб-приложения Azure
- Развертывание веб-приложения в Служба приложений Windows в слотах развертывания
- Пример скрипта после развертывания
Развертывание в определенном типе приложения
Чтобы развернуть приложение определенного типа, задайте appType
любое из следующих допустимых значений: webApp
(веб-приложение в Windows), webAppLinux
(веб-приложение в Linux), webAppContainer
(веб-приложение для контейнеров — Linux), functionApp
(приложение-функция в Windows), functionAppLinux
(приложение-функция в Linux), functionAppContainer
(приложение-функция для контейнеров — Linux), (приложение-функция для контейнеров — Linux), apiApp
(приложение API), mobileApp
(мобильное приложение). Если оно не указано, webApp
принимается в качестве значения по умолчанию.
Чтобы включить дополнительные параметры развертывания, добавьте параметр enableCustomDeployment: true
и при необходимости добавьте следующие параметры.
# deploymentMethod: 'runFromPackage' # supports zipDeploy as well
# appOffline: boolean # Not applicable for 'runFromPackage'
# setParametersFile: string
# removeAdditionalFilesFlag: boolean
# additionalArguments: string
Развертывание в контейнере Linux веб-приложения Azure
В следующем примере YAML выполняется развертывание в контейнере веб-приложения 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)
Развертывание веб-приложения в Служба приложений Windows в слотах развертывания
В следующем примере веб-приложение развертывается в Служба приложений Windows в слотах развертывания.
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'
Пример скрипта после развертывания
Задача предоставляет возможность настройки развертывания, предоставляя скрипт, который будет выполняться на Служба приложений Azure после успешного копирования артефактов приложения в Служба приложений. Вы можете указать встроенный скрипт развертывания или путь и имя файла скрипта в папке артефактов.
Это очень полезно, если требуется восстановить зависимости приложения непосредственно от Служба приложений. Восстановление пакетов для приложений Node, PHP и Python помогает избежать превышения времени ожидания, когда зависимость приложения приводит к копированию большого артефакта из агента в Служба приложений Azure.
Пример скрипта развертывания:
@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
)
Требования
Требование | Описание |
---|---|
Типы конвейеров | YAML, классическая сборка, классический выпуск |
Выполняется в | Агент, DeploymentGroup |
Требования | None |
Capabilities | Эта задача не удовлетворяет требованиям для последующих задач в задании. |
Ограничения команд | Любой |
Устанавливаемые переменные | Любой |
Версия агента | 2.104.1 или более поздней версии |
Категория задач | Развернуть |
См. также раздел
- Эта задача открытый код на GitHub. Отзывы и вклады приветствуются.