AzureRmWebAppDeployment@4 - Azure App Service déployer la tâche v4
Utilisez cette tâche pour déployer sur Azure App Service une application web, mobile ou API à l’aide de Docker, Java, .NET, .NET Core, Node.js, PHP, Python ou Ruby.
Notes
Utilisez AzureFunctionApp@1 pour déployer Azure Functions applications.
Mettez à jour Azure App Services sur Windows, Web App sur Linux avec des images intégrées ou des conteneurs Docker, ASP.NET, .NET Core, PHP, Python ou des applications web basées sur Node.js, Des applications de fonction sur Windows ou Linux avec des conteneurs Docker, Des applications mobiles, des applications API et des travaux web à l’aide des API REST Web Deploy/Kudu.
Syntax
# 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.
Entrées
ConnectionType
- Type de connexion
string
. Obligatoire. Valeurs autorisées : AzureRM
(Azure Resource Manager), PublishProfile
(Profil de publication). Valeur par défaut : AzureRM
.
Spécifiez le type de connexion de service à utiliser pour déployer l’application web.
Spécifiez Publish Profile
l’utilisation des profils de publication créés par Visual Studio.
ConnectionType
- Type de connexion
string
. Obligatoire. Valeurs autorisées : AzureRM
(Azure Resource Manager), PublishProfile
(Profil de publication). Valeur par défaut : AzureRM
.
Spécifiez le type de connexion de service à utiliser pour déployer l’application web.
azureSubscription
- Abonnement Azure
Alias d’entrée : ConnectedServiceName
. string
. Nécessaire lorsque ConnectionType = AzureRM
.
Spécifiez l’abonnement Azure Resource Manager pour le déploiement.
PublishProfilePath
- Chemin d’accès du profil de publication
string
. Nécessaire lorsque ConnectionType = PublishProfile
. Valeur par défaut : $(System.DefaultWorkingDirectory)/**/*.pubxml
.
Chemin du profil de publication créé à partir de Visual Studio.
PublishProfilePassword
- Publier le mot de passe du profil
string
. Nécessaire lorsque ConnectionType = PublishProfile
.
Il est recommandé de stocker un mot de passe dans une variable secrète et d’utiliser cette variable ici, $(Password)
par exemple .
appType
- App Service type
Alias d’entrée : WebAppKind
. string
. Nécessaire lorsque ConnectionType = AzureRM
. Valeurs autorisées : webApp
(Application web sur Windows), webAppLinux
(Application web sur Linux), webAppContainer
(Application web pour conteneurs (Linux)), webAppHyperVContainer
(Application web pour conteneurs (Windows)), functionApp
(Application de fonction sur Windows (Non recommandé, Utiliser Azure Functions tâche)), functionAppLinux
(Application de fonction sur Linux (non recommandé, utiliser Azure Functions tâche)), (Application de fonction pour conteneurs (Linux) (Non recommandé, utiliser une tâche de Azure Functions)), functionAppContainer
(Application de fonction pour conteneurs (Linux) (Non recommandé, utiliser une tâche Azure Functions pour container Task)), apiApp
(APPLICATION API), mobileApp
(Application mobile). Valeur par défaut : webApp
.
Choisissez l’application web sur Windows, l’application web sur Linux, l’application web pour conteneurs, l’application de fonction, l’application de fonction sur Linux, l’application de fonction pour les conteneurs et l’application mobile.
appType
- App Service type
Alias d’entrée : WebAppKind
. string
. Nécessaire lorsque ConnectionType = AzureRM
. Valeurs autorisées : webApp
(Application web sur Windows), webAppLinux
(Application web sur Linux), webAppContainer
(Application web pour conteneurs (Linux)), functionApp
(Application de fonction sur Windows), functionAppLinux
(Application de fonction sur Linux), functionAppContainer
(Application de fonction pour conteneurs (Linux)), apiApp
(Application API), mobileApp
(Application mobile). Valeur par défaut : webApp
.
Choisissez l’application web sur Windows, l’application web sur Linux, l’application web pour conteneurs, l’application de fonction, l’application de fonction sur Linux, l’application de fonction pour les conteneurs et l’application mobile.
WebAppName
- App Service nom
string
. Nécessaire lorsque ConnectionType = AzureRM
.
Spécifiez le nom d’un Azure App Service existant. Les services d’application basés sur le type d’application sélectionné ne sont répertoriés que lors de l’utilisation de l’assistant de tâche.
deployToSlotOrASE
- Déployer sur un emplacement ou un App Service Environment
Alias d’entrée : DeployToSlotOrASEFlag
. boolean
. facultatif. Utilisez quand ConnectionType = AzureRM && WebAppKind != ""
. Valeur par défaut : false
.
Spécifiez l’option de déploiement sur un emplacement de déploiement ou un environnement Azure App Service existant. Pour les deux cibles, la tâche nécessite un nom de groupe de ressources.
Si la cible de déploiement est un emplacement, par défaut, le déploiement est sur l’emplacement de production . Vous pouvez fournir n’importe quel nom d’emplacement existant.
Si la cible de déploiement est un environnement Azure App Service, conservez le nom de l’emplacement et Production
spécifiez uniquement le nom du groupe de ressources.
ResourceGroupName
- Groupe de ressources
string
. Nécessaire lorsque DeployToSlotOrASEFlag = true
.
Le nom du groupe de ressources est requis lorsque la cible de déploiement est un emplacement de déploiement ou un App Service Environment.
Spécifiez le groupe de ressources Azure qui contient le Azure App Service spécifié ci-dessus.
SlotName
- Fente
string
. Nécessaire lorsque DeployToSlotOrASEFlag = true
. Valeur par défaut : production
.
Spécifiez un emplacement existant autre que l’emplacement de production.
DockerNamespace
- Registre ou espace de noms
string
. Nécessaire lorsque WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppKind = webAppHyperVContainer
.
Nom de domaine de premier niveau global unique pour votre registre ou espace de noms spécifique. Remarque : le nom complet de l’image sera au format : {registry or namespace}/{repository}:{tag}
. Par exemple : myregistry.azurecr.io/nginx:latest
.
DockerNamespace
- Registre ou espace de noms
string
. Nécessaire lorsque WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppkind = webAppHyperVContainer
.
Nom de domaine de premier niveau global unique pour votre registre ou espace de noms spécifique. Remarque : le nom complet de l’image sera au format : {registry or namespace}/{repository}:{tag}
. Par exemple : myregistry.azurecr.io/nginx:latest
.
DockerNamespace
- Registre ou espace de noms
string
. Nécessaire lorsque WebAppKind = webAppContainer || WebAppkind = functionAppContainer
.
Nom de domaine de premier niveau global unique pour votre registre ou espace de noms spécifique. Remarque : le nom complet de l’image sera au format : {registry or namespace}/{repository}:{tag}
. Par exemple : myregistry.azurecr.io/nginx:latest
.
DockerRepository
- Image
string
. Nécessaire lorsque WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppKind = webAppHyperVContainer
.
Nom du dépôt dans lequel les images conteneur sont stockées. Remarque : le nom complet de l’image sera au format : {registry or namespace}/{repository}:{tag}
. Par exemple : myregistry.azurecr.io/nginx:latest
.
DockerRepository
- Image
string
. Nécessaire lorsque WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppkind = webAppHyperVContainer
.
Nom du dépôt dans lequel les images conteneur sont stockées. Remarque : le nom complet de l’image sera au format : {registry or namespace}/{repository}:{tag}
. Par exemple : myregistry.azurecr.io/nginx:latest
.
DockerRepository
- Image
string
. Nécessaire lorsque WebAppKind = webAppContainer || WebAppkind = functionAppContainer
.
Nom du dépôt dans lequel les images conteneur sont stockées. Remarque : le nom complet de l’image sera au format : {registry or namespace}/{repository}:{tag}
. Par exemple : myregistry.azurecr.io/nginx:latest
.
DockerImageTag
- Étiquette
string
. facultatif. Utilisez quand WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppKind = webAppHyperVContainer
.
Les balises sont le mécanisme utilisé par les registres pour appliquer les informations de version aux images Docker. Remarque : le nom complet de l’image sera au format : {registry or namespace}/{repository}:{tag}
. Par exemple : myregistry.azurecr.io/nginx:latest
.
DockerImageTag
- Étiquette
string
. facultatif. Utilisez quand WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppkind = webAppHyperVContainer
.
Les balises sont le mécanisme utilisé par les registres pour appliquer des informations de version aux images Docker. Remarque : Le nom complet de l’image sera au format : {registry or namespace}/{repository}:{tag}
. Par exemple : myregistry.azurecr.io/nginx:latest
.
DockerImageTag
- Étiquette
string
. facultatif. Utilisez quand WebAppKind = webAppContainer || WebAppkind = functionAppContainer
.
Les balises sont le mécanisme utilisé par les registres pour appliquer des informations de version aux images Docker. Remarque : Le nom complet de l’image sera au format : {registry or namespace}/{repository}:{tag}
. Par exemple : myregistry.azurecr.io/nginx:latest
.
VirtualApplication
- Application virtuelle
string
. facultatif. Utilisez quand WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && WebAppKind != functionApp && webAppKind != functionAppLinux && WebAppKind != ""
.
Spécifiez le nom de l’application virtuelle qui a été configurée dans le Portail Azure. Cette option n’est pas obligatoire pour les déploiements à la racine du site web. L’application virtuelle doit avoir été configurée avant le déploiement du projet web.
VirtualApplication
- Application virtuelle
string
. facultatif. Utilisez quand WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != functionApp && webAppKind != functionAppLinux && WebAppKind != ""
.
Spécifiez le nom de l’application virtuelle qui a été configurée dans le Portail Azure. Cette option n’est pas obligatoire pour les déploiements à la racine du site web. L’application virtuelle doit avoir été configurée avant le déploiement du projet web.
packageForLinux
- Package ou dossier
Alias d’entrée : Package
. string
. Nécessaire lorsque ConnectionType = PublishProfile || WebAppKind = webApp || WebAppKind = apiApp || WebAppKind = functionApp || WebAppKind = mobileApp || WebAppKind = webAppLinux || webAppKind = functionAppLinux
. Valeur par défaut : $(System.DefaultWorkingDirectory)/**/*.zip
.
Chemin d’accès au package ou à un dossier contenant le contenu du service d’application généré par MSBuild ou un fichier zip ou war compressé.
Les variables sont Build et Release. Les caractères génériques sont pris en charge.
Par exemple, $(System.DefaultWorkingDirectory)/\*\*/\*.zip
ou $(System.DefaultWorkingDirectory)/\*\*/\*.war
.
RuntimeStack
- Pile d’exécution
string
. facultatif. Utilisez quand WebAppKind = webAppLinux
.
Spécifiez l’infrastructure et la version pour Function App sur Linux.
RuntimeStackFunction
- Pile d’exécution
string
. facultatif. Utilisez quand WebAppKind = functionAppLinux
. Valeurs autorisées : DOTNET|2.2
(DOTNET|2.2 (functionapp v2)), DOTNET|3.1
(DOTNET|3.1 (functionapp v3)), JAVA|8
(JAVA|8 (functionapp v2/v3)), JAVA|11
(JAVA|11 (functionapp v3)), (NODE|8 (functionapp v2)), (NODE|10 (functionapp v3)), NODE|8
NODE|10
(NODE|10 (functionapp v2/v3)), NODE|12
(NODE|12 (functionapp v3)), NODE|14
(NODE|14 (functionapp v3)), PYTHON|3.6
(PYTHON|3.6 (functionapp v2/v3)), PYTHON|3.7
(PYTHON|3.7 (functionapp v2/v3)), PYTHON|3.8
(PYTHON|3.8 (functionapp v3)).
Spécifiez le framework et la version. Reportez-vous à la vue d’ensemble des versions du runtime Azure Functions pour connaître les versions du runtime prises en charge. Les anciennes valeurs telles que DOCKER|microsoft/azure-functions-*
sont déconseillées. Utilisez les nouvelles valeurs de la liste déroulante.
RuntimeStackFunction
- Pile d’exécution
string
. facultatif. Utilisez quand WebAppKind = functionAppLinux
. Valeurs autorisées : DOCKER|microsoft/azure-functions-dotnet-core2.0:2.0
(.NET), DOCKER|microsoft/azure-functions-node8:2.0
(JavaScript).
Spécifiez le framework et la version.
StartupCommand
- Commande de démarrage
string
. facultatif. Utilisez quand WebAppKind = webAppLinux || WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppKind = functionAppLinux || WebAppKind = webAppHyperVContainer
.
Spécifiez la commande Startup. Par exemple :
dotnet exec filename.dll
dotnet filename.dll
.
StartupCommand
- Commande de démarrage
string
. facultatif. Utilisez quand WebAppKind = webAppLinux || WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppKind = functionAppLinux || WebAppkind = webAppHyperVContainer
.
Spécifiez la commande Startup. Par exemple :
dotnet exec filename.dll
dotnet filename.dll
.
StartupCommand
- Commande de démarrage
string
. facultatif. Utilisez quand WebAppKind = webAppLinux || WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppKind = functionAppLinux
.
Spécifiez la commande Startup. Par exemple :
dotnet exec filename.dll
dotnet filename.dll
.
StartupCommand
- Commande de démarrage
string
. facultatif. Utilisez quand WebAppKind = webAppLinux || WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppKind = functionAppLinux
.
Spécifiez la commande Startup. Par exemple, dotnet run
dotnet filename.dll
.
StartupCommand
- Commande de démarrage
string
. facultatif. Utilisez quand WebAppKind = webAppLinux || WebAppKind = webAppContainer || WebAppkind = functionAppContainer
.
Spécifiez la commande Startup.
ScriptType
- Type de script de déploiement
string
. facultatif. Utilisez quand ConnectionType = AzureRM && WebAppKind != "" && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer
. Valeurs autorisées : Inline Script
, File Path
(Chemin du fichier de script).
Personnalise le déploiement en fournissant un script qui s’exécute sur le Azure App Service après le déploiement réussi. Choisissez le script de déploiement inline, ou le chemin et le nom d’un fichier de script. En savoir plus sur le déploiement Azure App Service.
ScriptType
- Type de script de déploiement
string
. facultatif. Utilisez quand ConnectionType = AzureRM && WebAppKind != "" && WebAppKind != webAppContainer && WebAppkind != functionAppContainer
. Valeurs autorisées : Inline Script
, File Path
(Chemin du fichier de script).
Personnalise le déploiement en fournissant un script qui s’exécute sur le Azure App Service après le déploiement réussi. Choisissez le script de déploiement inline, ou le chemin et le nom d’un fichier de script. En savoir plus sur le déploiement Azure App Service.
InlineScript
- Inline Script
string
. Nécessaire lorsque ScriptType == Inline Script && ConnectionType = AzureRM && WebAppKind != "" && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer
. Valeur par défaut : :: You can provide your deployment commands here. One command per line.
.
Script à exécuter. Vous pouvez fournir vos commandes de déploiement ici, une commande par ligne. Consultez l’exemple qui suit.
InlineScript
- Inline Script
string
. Nécessaire lorsque ScriptType == Inline Script && ConnectionType = AzureRM && WebAppKind != "" && WebAppKind != webAppContainer && WebAppkind != functionAppContainer
. Valeur par défaut : :: You can provide your deployment commands here. One command per line.
.
Script à exécuter. Vous pouvez fournir vos commandes de déploiement ici, une commande par ligne. Consultez l’exemple qui suit.
ScriptPath
- Chemin du script de déploiement
string
. Nécessaire lorsque ScriptType == File Path && ConnectionType = AzureRM && WebAppKind != "" && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer
.
Chemin et nom du script à exécuter.
ScriptPath
- Chemin du script de déploiement
string
. Nécessaire lorsque ScriptType == File Path && ConnectionType = AzureRM && WebAppKind != "" && WebAppKind != webAppContainer && WebAppkind != functionAppContainer
.
Chemin et nom du script à exécuter.
WebConfigParameters
- Générer des paramètres web.config pour les applications Python, Node.js, Go et Java
string
. facultatif. Utilisez quand WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war
.
Une norme Web.config
est générée et déployée sur Azure App Service si l’application n’en a pas. Les valeurs dans web.config
peuvent être modifiées et varier en fonction de l’infrastructure de l’application. Par exemple, pour node.js
les applications, web.config
aura un fichier de démarrage et iis_node valeurs de module. Cette fonctionnalité de modification concerne uniquement le généré web.config
. En savoir plus sur le déploiement Azure App Service.
WebConfigParameters
- Générer des paramètres web.config pour les applications Python, Node.js, Go et Java
string
. facultatif. Utilisez quand WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war
.
Une norme Web.config
est générée et déployée sur Azure App Service si l’application n’en a pas. Les valeurs dans web.config
peuvent être modifiées et varier en fonction de l’infrastructure de l’application. Par exemple, pour node.js
les applications, web.config
aura un fichier de démarrage et iis_node valeurs de module. Cette fonctionnalité de modification concerne uniquement le généré web.config
. En savoir plus sur le déploiement Azure App Service.
AppSettings
- Paramètres de l’application
string
. facultatif. Utilisez quand ConnectionType = AzureRM
.
Modifie les paramètres de l’application web à l’aide de la syntaxe -key value
. Les valeurs contenant des espaces doivent être placées entre guillemets doubles. Exemples : -Port 5000 -RequestTimeout 5000
et -WEBSITE_TIME_ZONE "Eastern Standard Time"
. Pour fournir au moins deux valeurs de clé, les valeurs de clé doivent être séparées par un espace. Exemple : -key1 "Value1" -Key2 "Value2"
.
ConfigurationSettings
- Paramètres de configuration
string
. facultatif. Utilisez quand ConnectionType = AzureRM
.
Modifie les paramètres de configuration de l’application web à l’aide de la syntaxe -key value
. Les valeurs contenant des espaces doivent être placées entre guillemets doubles. Exemple : -phpVersion 5.6 -linuxFxVersion node|6.11
.
enableCustomDeployment
- Sélectionner une méthode de déploiement
Alias d’entrée : UseWebDeploy
. boolean
. facultatif. Utilisez quand ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar
. Valeur par défaut : false
.
Si elle est désactivée ou false, la tâche détecte automatiquement la meilleure méthode de déploiement en fonction du type d’application, du format de package et d’autres paramètres. Cochez cette option dans la tâche assistant pour afficher les méthodes de déploiement prises en charge, puis choisissez-en une pour déployer votre application.
enableCustomDeployment
- Sélectionner une méthode de déploiement
Alias d’entrée : UseWebDeploy
. boolean
. facultatif. Utilisez quand ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar
. Valeur par défaut : false
.
Si elle est désactivée ou false, la tâche détecte automatiquement la meilleure méthode de déploiement en fonction du type d’application, du format de package et d’autres paramètres. Cochez cette option dans la tâche assistant pour afficher les méthodes de déploiement prises en charge, puis choisissez-en une pour déployer votre application.
DeploymentType
- Méthode de déploiement
string
. Nécessaire lorsque UseWebDeploy == true && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar
. Valeurs autorisées : webDeploy
(Web Deploy), zipDeploy
(Zip Deploy), runFromZip
(Exécuter à partir du package). Valeur par défaut : webDeploy
.
Détermine la méthode de déploiement de l’application.
DeploymentType
- Méthode de déploiement
string
. Nécessaire lorsque UseWebDeploy == true && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar
. Valeurs autorisées : webDeploy
(Web Deploy), zipDeploy
(Zip Deploy), runFromZip
(Exécuter à partir du package). Valeur par défaut : webDeploy
.
Détermine la méthode de déploiement de l’application.
TakeAppOfflineFlag
- Mise hors connexion de l’application
boolean
. facultatif. Utilisez quand UseWebDeploy == true && DeploymentType != runFromZip && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar
. Valeur par défaut : true
.
Spécifiez cette option pour mettre le Azure App Service hors connexion en plaçant un app_offline.htm
fichier dans le répertoire racine avant le début de l’opération de synchronisation. Le fichier est supprimé une fois la synchronisation terminée.
TakeAppOfflineFlag
- Mise hors connexion de l’application
boolean
. facultatif. Utilisez quand UseWebDeploy == true && DeploymentType != runFromZip && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar
. Valeur par défaut : true
.
Spécifiez cette option pour mettre le Azure App Service hors connexion en plaçant un app_offline.htm
fichier dans le répertoire racine avant le début de l’opération de synchronisation. Le fichier est supprimé une fois la synchronisation terminée.
SetParametersFile
- Fichier SetParameters
string
. facultatif. Utilisez quand UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar
.
Emplacement du SetParameters.xml
fichier à utiliser.
SetParametersFile
- Fichier SetParameters
string
. facultatif. Utilisez quand UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar
.
Emplacement du SetParameters.xml
fichier à utiliser.
RemoveAdditionalFilesFlag
- Supprimer des fichiers supplémentaires à la destination
boolean
. facultatif. Utilisez quand UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar
. Valeur par défaut : false
.
Spécifiez « true » pour supprimer les fichiers sur le Azure App Service qui n’ont aucun fichier correspondant dans le package ou le dossier App Service. Cela supprime également tous les fichiers liés à n’importe quelle extension installée sur ce Azure App Service. Pour éviter cela, cochez la Exclude files from App_Data folder
case.
RemoveAdditionalFilesFlag
- Supprimer des fichiers supplémentaires à la destination
boolean
. facultatif. Utilisez quand UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar
. Valeur par défaut : false
.
Spécifiez « true » pour supprimer les fichiers sur le Azure App Service qui n’ont aucun fichier correspondant dans le package ou le dossier App Service. Cela supprime également tous les fichiers liés à n’importe quelle extension installée sur ce Azure App Service. Pour éviter cela, cochez la Exclude files from App_Data folder
case.
ExcludeFilesFromAppDataFlag
- Exclure des fichiers du dossier App_Data
boolean
. facultatif. Utilisez quand UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar
. Valeur par défaut : true
.
Spécifiez l’option permettant d’empêcher le App_Data
déploiement/la suppression des fichiers du dossier dans le Azure App Service.
ExcludeFilesFromAppDataFlag
- Exclure des fichiers du dossier App_Data
boolean
. facultatif. Utilisez quand UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar
. Valeur par défaut : true
.
Spécifiez l’option permettant d’empêcher le App_Data
déploiement/la suppression des fichiers du dossier dans le Azure App Service.
AdditionalArguments
- Arguments supplémentaires
string
. facultatif. Utilisez quand UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar
. Valeur par défaut : -retryAttempts:6 -retryInterval:10000
.
Arguments Web Deploy supplémentaires suivant la syntaxe -key:value
. Sont appliqués pendant le déploiement de l’instance Azure App Service. Exemples : -disableLink:AppPoolExtension -disableLink:ContentExtension
. En savoir plus sur les paramètres d’opération web deploy.
AdditionalArguments
- Arguments supplémentaires
string
. facultatif. Utilisez quand UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar
. Valeur par défaut : -retryAttempts:6 -retryInterval:10000
.
Arguments Web Deploy supplémentaires suivant la syntaxe -key:value
. Sont appliqués pendant le déploiement de l’instance Azure App Service. Exemples : -disableLink:AppPoolExtension -disableLink:ContentExtension
. En savoir plus sur les paramètres d’opération web deploy.
RenameFilesFlag
- Renommer les fichiers verrouillés
boolean
. facultatif. Utilisez quand UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar
. Valeur par défaut : true
.
Spécifiez la valeur par défaut pour activer l’indicateur MSDEPLOY_RENAME_LOCKED_FILES=1
msdeploy dans Azure App Service paramètres de l’application. Si elle est définie, l’option permet à msdeploy de renommer les fichiers verrouillés pendant le déploiement de l’application.
RenameFilesFlag
- Renommer les fichiers verrouillés
boolean
. facultatif. Utilisez quand UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar
. Valeur par défaut : true
.
Spécifiez la valeur par défaut pour activer l’indicateur MSDEPLOY_RENAME_LOCKED_FILES=1
msdeploy dans Azure App Service paramètres de l’application. Si elle est définie, l’option permet à msdeploy de renommer les fichiers verrouillés pendant le déploiement de l’application.
enableXmlTransform
- Transformation XML
Alias d’entrée : XmlTransformation
. boolean
. facultatif. Utilisez quand WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war
. Valeur par défaut : false
.
Les transformations de configuration seront exécutées pour *.Release.config
et *.<EnvironmentName>.config
sur le *.config file
. Les transformations de configuration s’exécutent avant le remplacement de variable. Les transformations XML sont prises en charge uniquement pour la plateforme Windows.
enableXmlTransform
- Transformation XML
Alias d’entrée : XmlTransformation
. boolean
. facultatif. Utilisez quand WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war
. Valeur par défaut : false
.
Les transformations de configuration seront exécutées pour *.Release.config
et *.<EnvironmentName>.config
sur le *.config file
. Les transformations de configuration s’exécutent avant le remplacement de variable. Les transformations XML sont prises en charge uniquement pour la plateforme Windows.
enableXmlVariableSubstitution
- Substitution de variable XML
Alias d’entrée : XmlVariableSubstitution
. boolean
. facultatif. Utilisez quand WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war
. Valeur par défaut : false
.
Les variables définies dans le pipeline de build ou de mise en production sont mises en correspondance avec les entrées de clé ou de nom dans les configSections
sections , appSettings
, applicationSettings
et connectionStrings
de tout fichier de configuration et parameters.xml
fichier. Le remplacement de variable s’exécute après les transformations de configuration.
Si les mêmes variables sont définies dans le pipeline de mise en production et dans la phase, les variables de phase remplacent les variables de pipeline de mise en production. En savoir plus sur [substitution de variable XML]](/azure/devops/pipelines/tasks/transforms-variable-substitution#xml-variable-substitution).
enableXmlVariableSubstitution
- Substitution de variable XML
Alias d’entrée : XmlVariableSubstitution
. boolean
. facultatif. Utilisez quand WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war
. Valeur par défaut : false
.
Les variables définies dans le pipeline de build ou de mise en production sont mises en correspondance avec les entrées de clé ou de nom dans les configSections
sections , appSettings
, applicationSettings
et connectionStrings
de tout fichier de configuration et parameters.xml
fichier. Le remplacement de variable s’exécute après les transformations de configuration.
Si les mêmes variables sont définies dans le pipeline de mise en production et dans la phase, les variables de phase remplacent les variables de pipeline de mise en production. En savoir plus sur [substitution de variable XML]](/azure/devops/pipelines/tasks/transforms-variable-substitution#xml-variable-substitution).
JSONFiles
- Substitution de variable JSON
string
. facultatif. Utilisez quand WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war
.
Fournit une liste de fichiers JSON séparés par une nouvelle ligne pour remplacer les valeurs de variable. Les noms de fichiers doivent être relatifs au dossier racine. Pour remplacer des variables JSON imbriquées ou hiérarchiques, spécifiez-les à l’aide d’expressions JSONPath
. Par exemple, pour remplacer la valeur de ConnectionString
dans l’exemple ci-dessous, définissez une variable nommée Data.DefaultConnection.ConnectionString
dans le pipeline de build ou de mise en production (ou phase de pipelines de mise en production).
{
"Data": {
"DefaultConnection": {
"ConnectionString": "Server=(localdb)\SQLEXPRESS;Database=MyDB;Trusted_Connection=True"
}
}
}
Une substitution de variable s’exécute après les transformations de configuration. Remarque : Les variables de pipeline de build et de mise en production sont exclues de la substitution. En savoir plus sur la substitution de variables JSON.
JSONFiles
- Substitution de variable JSON
string
. facultatif. Utilisez quand WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war
.
Fournit une liste de fichiers JSON séparés par une nouvelle ligne pour remplacer les valeurs de variable. Les noms de fichiers doivent être relatifs au dossier racine. Pour remplacer des variables JSON imbriquées ou hiérarchiques, spécifiez-les à l’aide d’expressions JSONPath
. Par exemple, pour remplacer la valeur de ConnectionString
dans l’exemple ci-dessous, définissez une variable nommée Data.DefaultConnection.ConnectionString
dans le pipeline de build ou de mise en production (ou phase de pipelines de mise en production).
{
"Data": {
"DefaultConnection": {
"ConnectionString": "Server=(localdb)\SQLEXPRESS;Database=MyDB;Trusted_Connection=True"
}
}
}
Une substitution de variable s’exécute après les transformations de configuration. Remarque : Les variables de pipeline de build et de mise en production sont exclues de la substitution. En savoir plus sur la substitution de variables JSON.
Options de contrôle de la tâche
Toutes les tâches ont des options de contrôle en plus de leurs entrées de tâches. Pour plus d’informations, consultez Options de contrôle et propriétés de tâche courantes.
Variables de sortie
Cette tâche définit les variables de sortie suivantes, que vous pouvez utiliser dans les étapes, les travaux et les étapes en aval.
AppServiceApplicationUrl
URL de l’application du App Service sélectionné.
Remarques
- Prérequis de la tâche
- Notes d’utilisation
- Méthodes de déploiement
- Dépannage
- Questions fréquentes (FAQ)
Utilisez cette tâche pour déployer des applications sur une plage de services d’application sur Azure. La tâche fonctionne sur des agents multiplateformes exécutant Windows, Linux ou Mac, et utilise plusieurs technologies de déploiement sous-jacentes différentes.
La tâche fonctionne pour les applications web basées sur ASP.NET, ASP.NET Core, PHP, Java, Python, Go et Node.js.
La tâche peut être utilisée pour déployer des applications sur une plage de services d’application Azure de type :
- Applications web sur Windows et Linux
- Web Apps pour les conteneurs
- Applications de fonction sur Windows et Linux
- Applications de fonction pour conteneurs
- WebJobs
- Applications configurées sous des environnements Azure App Service
Prérequis de la tâche
Les prérequis suivants doivent être configurés sur la ou les machines cibles pour que la tâche fonctionne correctement.
Instance App Service. La tâche est utilisée pour déployer un projet d’application web ou de fonction Azure sur une instance Azure App Service existante, qui doit exister avant l’exécution de la tâche. L’instance App Service peut être créée à partir du portail Azure et configurée au même endroit. Vous pouvez également utiliser la tâche Azure PowerShell pour exécuter des scripts PowerShell AzureRM afin de provisionner et configurer l’application web.
Abonnement Azure. Pour déployer sur Azure, un abonnement Azure doit être lié au pipeline. La tâche ne fonctionne pas avec les connexions de service Azure Classic et ne les liste pas dans ses paramètres.
Notes d’utilisation
- La tâche fonctionne uniquement avec les API Azure Resource Manager.
- Pour ignorer les erreurs SSL, définissez une variable nommée
VSTS_ARM_REST_IGNORE_SSL_ERRORS
avec la valeurtrue
dans le pipeline. Si vous effectuez un déploiement sur un emplacement configuré pour l’échange automatique, l’échange échoue, sauf si vous définissezSCM_SKIP_SSL_VALIDATION
ouSCM_SKIP_ASE_SSL_VALIDATION
sur1
dans les paramètres de configuration des services d’application. - Pour les applications .NET ciblant Application web sur Windows, évitez l’échec de déploiement avec l’erreur
ERROR_FILE_IN_USE
en activant les paramètres Renommer les fichiers verrouillés et Mettre l’application hors connexion. Pour un déploiement sans temps d’arrêt, utilisez l’option d’échange d’emplacement. - Quand vous déployez sur une instance App Service qui a Application Insights configuré et que vous avez activé Supprimer les fichiers supplémentaires dans la destination, veillez à activer également Exclure les fichiers du dossier App_Data afin de maintenir l’extension Application insights dans un état sécurisé. Cela est obligatoire, car le travail web Application Insights continu est installé dans le dossier App_Data.
Méthodes de déploiement
Plusieurs méthodes de déploiement sont disponibles dans cette tâche. Web Deploy (msdeploy.exe) est la valeur par défaut. Pour changer l’option de déploiement, développez Options de déploiement supplémentaires et activez Sélectionner la méthode de déploiement pour choisir une des options de déploiement supplémentaires basées sur un package.
Selon le type de l’instance Azure App Service et l’agent, la tâche choisit la technologie de déploiement appropriée. Les différentes technologies de déploiement utilisées par la tâche sont :
- Web Deploy
- API REST Kudu
- Container Registry
- Déploiement zip
- Exécution à partir d’un package
- War Deploy
Par défaut, la tâche tente de sélectionner la technologie de déploiement appropriée en fonction du type du package d’entrée, du type d’instance App Service et du système d’exploitation de l’agent.
Logique de détection automatique
Pour les agents Windows.
Type d’instance App Service | Type de package | Méthode de déploiement |
---|---|---|
Application web sur Linux ou application de fonction sur Linux | Guerre dossier/zip/jar |
Zip Deploy War Deploy |
Application web pour conteneurs (Linux) ou Application de fonction pour conteneurs (Linux) | Mettre à jour les paramètres d’application | N/D |
Application web sur Windows, Application de fonction sur Windows, Application API ou Application mobile | Type de package War Jar MsBuild ou déployer dans un dossier/zip d’application virtuelle |
War Deploy Zip Deploy Web Deploy if postDeploymentScript == true, Zip Deploy else, Run From Package |
Sur les agents non-Windows (pour n’importe quel type App Service), la tâche s’appuie sur les API REST Kudu pour déployer l’application.
Web Deploy
Web Deploy (msdeploy.exe) peut être utilisé pour déployer une application web sur Windows ou une application de fonction sur Azure App Service en utilisant un agent Windows. Web Deploy est riche en fonctionnalités et offre des options de type :
Renommez les fichiers verrouillés : Renommez tout fichier qui est toujours utilisé par le serveur web en activant l’indicateur
MSDEPLOY\_RENAME\_LOCKED\_FILES=1
msdeploy dans les paramètres de Azure App Service. Cette option, si elle est définie, permet à msdeploy de renommer les fichiers verrouillés pendant le déploiement d’application.Supprimer les fichiers supplémentaires dans la destination : supprime les fichiers de l’instance Azure App Service qui n’ont pas de fichier correspondant dans le package ou dossier d’artefacts App Service déployé.
Exclure les fichiers du dossier App_Data : empêche le déploiement des fichiers du dossier App_Data (dans le package/dossier d’artefacts déployé) sur l’instance Azure App Service
Arguments Web Deploy supplémentaires : arguments qui sont appliqués pendant le déploiement de l’instance Azure App Service. Exemple :
-disableLink:AppPoolExtension -disableLink:ContentExtension
. Pour obtenir d’autres exemples de paramètres d’opération Web Deploy, consultez Paramètres d’opération Web Deploy.
Installez Web Deploy sur l’agent à partir de Web Deploy 3.6. Web Deploy 3.5 doit être installé sans la prise en charge SQL incluse. Vous n’avez pas besoin de choisir des paramètres personnalisés pendant l’installation de Web Deploy. Web Deploy est installé sur C:/Program Files (x86)/IIS/Microsoft Web Deploy V3
.
API REST Kudu
Les API REST Kudu fonctionnent à la fois sur les agents Automation Windows et Linux quand la cible est une application web sur Windows, une application web sur Linux (source intégrée) ou une application de fonction. La tâche utilise Kudu pour copier les fichiers dans l’instance Azure App Service.
Container Registry
Fonctionne sur les agents Automation Windows et Linux quand la cible est une application web pour conteneurs. La tâche met à jour l’application en définissant le registre de conteneurs, le dépôt, le nom d’image et les informations d’étiquette appropriés. Vous pouvez également utiliser la tâche pour passer une commande de démarrage pour l’image conteneur.
Zip Deploy
Attend un package de déploiement .zip et déploie le contenu du fichier dans le dossier wwwroot de l’instance App Service ou de l’application de fonction dans Azure. Cette option remplace tout le contenu existant dans le dossier wwwroot. Pour plus d’informations, consultez Déploiement zip pour Azure Functions.
Exécution à partir du package
Attend le même package de déploiement que Zip Deploy. Toutefois, au lieu de déployer des fichiers dans le dossier wwwroot, le package entier est monté par le runtime Functions et les fichiers du dossier wwwroot passent en lecture seule. Pour plus d’informations, consultez l’article Run your Azure Functions from a package file (Exécuter vos fonctions Azure à partir d’un fichier de package).
War Deploy
Attend un package de déploiement .war et déploie le contenu du fichier dans le dossier wwwroot ou webapps de l’instance App Service dans Azure.
Dépannage
Je ne parviens pas à déployer web sur mon Azure App Service à l’aide de l’authentification Microsoft Entra ID à partir de mon agent Windows
La tâche de déploiement Azure App Service prend en charge la connexion à Microsoft Azure avec une connexion de service ARM à l’aide de Microsoft Entra ID, sauf si les trois conditions suivantes sont présentes :
- Vous utilisez le format de package Web Deploy sur un agent Windows
- Votre agent s’exécute avec une version antérieure de msdeploy.exe (par exemple, lors de l’utilisation de l’image de l’agent hébergé windows-2019 )
- L’authentification de base est désactivée pour votre Azure App Service
Si ces trois conditions sont présentes, vous recevrez une erreur telle que 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.
Pour résoudre ce problème, vous pouvez choisir parmi les options suivantes, dans l’ordre de préférence.
- Mettez à jour l’image de l’agent. Si vous utilisez des agents hébergés, passez de windows-2019 à windows-2022 (ou windows-latest). Si vous utilisez des agents auto-hébergés, installez Visual Studio 2022 sur l’agent pour obtenir une version plus récente de msdeploy.exe.
- Si vous dépendez d’une image d’agent plus ancienne et que vous ne pouvez pas mettre à jour l’agent pour votre pipeline, envisagez de fractionner le travail afin que la tâche de déploiement Azure App Service s’exécute sur windows-2022 (ou windows-latest).
- Si aucune de ces options n’est possible, vous pouvez activer l’authentification de base pour votre Azure App Service.
Erreur : impossible de récupérer le jeton d’accès pour Azure. Vérifiez que le principal de service utilisé est valide et n’a pas expiré.
La tâche utilise le principal de service dans la connexion de service pour s’authentifier auprès d’Azure. Si le principal de service a expiré ou n’a pas d’autorisations sur App Service, la tâche échoue avec cette erreur. Vérifiez la validité du principal de service utilisé et s’il est présent dans l’inscription de l’application. Pour plus d’informations, consultez Utiliser le contrôle d’accès en fonction du rôle pour gérer l’accès aux ressources de votre abonnement Azure. Ce billet de blog contient également plus d’informations sur l’utilisation de l’authentification du principal de service.
Erreur SSL
Si vous voulez utiliser un certificat dans App Service, le certificat doit être signé par une autorité de certification approuvée. Si votre application web permet de voir les erreurs de validation de certificat, vous utilisez probablement un certificat auto-signé. Définissez une variable nommée VSTS_ARM_REST_IGNORE_SSL_ERRORS
sur la valeur true
dans le pipeline de build ou de mise en production pour résoudre l’erreur.
Une mise en production se bloque pendant une période prolongée, puis échoue
Ce problème peut être le résultat d’une capacité insuffisante dans votre plan App Service. Pour résoudre le problème, vous pouvez effectuer un scale-up de l’instance App Service afin d’augmenter le processeur, la RAM et l’espace disque disponibles, ou vous pouvez essayer un autre plan App Service.
Codes d’erreur 5xx
Si vous voyez une erreur 5xx, vérifiez l’état de votre service Azure.
La fonction Azure a soudainement cessé de fonctionner
Azure Functions peut cesser de fonctionner soudainement si plus d’un an s’est écoulé depuis le dernier déploiement. Si vous déployez avec « RunFromPackage » dans « deploymentMethod », une sap avec une date d’expiration de 1 an est générée et définie comme valeur « WEBSITE_RUN_FROM_PACKAGE » dans la configuration de l’application. Azure Functions utilise cette sap pour référencer le fichier de package pour l’exécution de la fonction. Par conséquent, si la sap a expiré, la fonction ne sera pas exécutée. Pour résoudre ce problème, déployez à nouveau pour générer une sap dont la date d’expiration est d’un an.
Erreur : package introuvable avec le modèle spécifié
Vérifiez si le package mentionné dans la tâche est publié en tant qu’artefact dans la build ou au cours d’une phase précédente, et s’il est téléchargé dans le travail actuel.
Erreur : La publication avec l’option zip deploy n’est pas prise en charge pour le type de package msBuild
Les packages web créés via la tâche MSBuild (avec les arguments par défaut) ont une structure de dossiers imbriqués qui peut être déployée correctement seulement par Web Deploy. L’option de déploiement publish-to-zip ne peut pas être utilisée pour déployer ces packages. Pour convertir la structure d’empaquetage, effectuez les étapes suivantes :
Dans la tâche Générer la solution, remplacez les arguments MSBuild par
/p:DeployOnBuild=true /p:DeployDefaultTarget=WebPublish /p:WebPublishMethod=FileSystem /p:DeleteExistingFiles=True /p:publishUrl="$(System.DefaultWorkingDirectory)\\WebAppContent"
:Ajoutez une tâche Archive et changez les valeurs de la façon suivante :
Définissez le dossier racine ou fichier à archiver sur
$(System.DefaultWorkingDirectory)\\WebAppContent
.Décochez la case Ajouter le nom du dossier racine au début des chemins d’archive :
Le déploiement de l’application web sur Windows réussit, mais l’application ne fonctionne pas
Le fichier web.config n’est peut-être pas présent dans votre application. Vous pouvez ajouter un fichier web.config à votre source ou en générer un automatiquement en utilisant les options Transformations de fichier et Remplacement de variable de la tâche.
Cliquez sur la tâche et accédez à Générer les paramètres web.config pour les applications Python, Node.js, Go et Java.
Cliquez de nouveau sur le bouton Générer les paramètres web.config pour les applications Python, Node.js, Go et Java afin de modifier les paramètres.
Sélectionnez votre type d’application dans la liste déroulante.
Cliquez sur OK. Cela renseigne les paramètres web.config nécessaires pour générer web.config.
Notes
Cette section est dépréciée et a été remplacée par la tâche Transformation de fichier.
ERROR_FILE_IN_USE
Pendant le déploiement d’applications .NET sur Application web sur Windows, le déploiement peut échouer avec le code d’erreur ERROR_FILE_IN_USE. Pour résoudre l’erreur, vérifiez que les options Renommer les fichiers verrouillés et Mettre l’application hors connexion sont activées dans la tâche. Pour les déploiements sans temps d'arrêt, utilisez l'échange d'emplacement.
Vous pouvez également utiliser la méthode de déploiement Exécuter à partir du package pour éviter le verrouillage des ressources.
Erreur Web Deploy
Si vous utilisez Web Deploy pour déployer votre application, dans certains scénarios d’erreur, Web Deploy génère un code d’erreur dans le journal. Pour résoudre une erreur de déploiement web, consultez Codes d’erreur Web Deploy.
Le déploiement de l’application web sur App Service Environment (ASE) ne fonctionne pas
- Vérifiez que l’agent de build Azure DevOps se trouve sur le même VNet (le sous-réseau peut être différent) que l’équilibreur de charge interne (ILB) de l’environnement ASE. Cela permet à l’agent de tirer le code d’Azure DevOps et de le déployer sur l’environnement ASE.
- Si vous utilisez Azure DevOps, l’agent n’a pas besoin d’être accessible à partir d’Internet, mais a uniquement besoin d’un accès sortant pour se connecter au service Azure DevOps.
- Si vous utilisez TFS/Azure DevOps Server déployé dans un réseau virtuel, l’agent peut être complètement isolé.
- L’agent de build doit être configuré avec la configuration DNS de l’application web sur laquelle il doit être déployé. Comme les ressources privées du réseau virtuel n’ont pas d’entrées dans Azure DNS, elle doit être ajoutée au fichier d’hôtes sur l’ordinateur agent.
- Si un certificat auto-signé est utilisé pour la configuration ASE, l’option
-allowUntrusted
doit être définie dans la tâche de déploiement pour MSDeploy. Il est également recommandé de définir la variableVSTS_ARM_REST_IGNORE_SSL_ERRORS
sur true. Si un certificat d’une autorité de certification est utilisé pour la configuration ASE, ce ne doit pas être nécessaire. Si vous déployez sur un emplacement configuré pour l’échange automatique, l’échange échoue, sauf si vous définissezSCM_SKIP_SSL_VALIDATION
ouSCM_SKIP_ASE_SSL_VALIDATION
1
sur dans les paramètres de configuration des services d’application.
FAQ
Quelle est la différence entre les AzureWebApp
tâches et AzureRmWebAppDeployment
?
La tâche Azure Web App (AzureWebApp
) est le moyen le plus simple de déployer sur une application web Azure. Par défaut, votre déploiement se produit sur l’application racine dans l’application web Azure.
La tâche de déploiement Azure App Service (AzureRmWebAppDeployment
) peut gérer des scénarios plus personnalisés, tels que :
- Modifiez les paramètres de configuration à l’intérieur des packages web et des fichiers de paramètres XML.
- Déployez avec Web Deploy, si vous êtes habitué au processus de déploiement IIS.
- Déployer sur des applications virtuelles.
- Déployez sur d’autres types d’applications, comme les applications conteneur, les applications de fonction, les tâches web ou les applications API et mobiles.
Notes
Les transformations de fichiers et substitutions de variables sont également prises en charge par la tâche Transformation de fichier à utiliser dans Azure Pipelines. Vous pouvez utiliser la tâche Transformation de fichier pour appliquer des transformations de fichiers et substitutions de variables à tout fichier de configuration et de paramètres.
Comment configurer ma connexion de service ?
Cette tâche nécessite une connexion de service Azure Resource Manager.
Comment configurer le déploiement de travaux web avec Application Insights ?
Quand vous déployez sur une instance App Service, si Application Insights est configuré et que vous avez activé Remove additional files at destination
, vous devez également activer Exclude files from the App_Data folder
. L’activation de cette option maintient l’extension Application Insights dans un état sécurisé. Cette étape est obligatoire, car le travail web Application Insights continu est installé dans le dossier App_Data.
Comment configurer mon agent s’il est derrière un proxy pendant le déploiement sur App Service ?
Si votre agent auto-hébergé nécessite un proxy web, vous pouvez indiquer le proxy à l’agent pendant la configuration. Cela permet à votre agent de se connecter à Azure Pipelines ou à Azure DevOps Server avec le proxy. En savoir plus sur l’exécution d’un agent auto-hébergé derrière un proxy web.
Exemples
- Déployer sur un type d’application spécifique
- Déployer sur un conteneur Linux Azure Web App
- Déployer une application web sur un App Service Windows sur plusieurs emplacements de déploiement
- Exemple de script post-déploiement
Déployer sur un type d’application spécifique
Pour déployer sur un type d’application spécifique, définissez appType
sur une des valeurs acceptées suivantes : webApp
(Application web sur Windows), webAppLinux
(Application web sur Linux), webAppContainer
(Application web pour conteneurs - Linux), functionApp
(Application de fonction sur Windows), functionAppLinux
(Application de fonction sur Linux), functionAppContainer
(Application de fonction pour conteneurs - Linux), apiApp
(Application API), mobileApp
(Application mobile). Si le type n’est pas mentionné, webApp
est pris comme valeur par défaut.
Pour activer les options de déploiement avancées, ajoutez le paramètre enableCustomDeployment: true
et incluez les paramètres suivants si nécessaire.
# deploymentMethod: 'runFromPackage' # supports zipDeploy as well
# appOffline: boolean # Not applicable for 'runFromPackage'
# setParametersFile: string
# removeAdditionalFilesFlag: boolean
# additionalArguments: string
Déployer sur un conteneur Linux Azure Web App
L’exemple YAML suivant est déployé sur un conteneur Azure Web App (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)
Déployer une application web sur un App Service Windows sur plusieurs emplacements de déploiement
L’exemple suivant déploie une application web sur un App Service Windows sur plusieurs emplacements de déploiement.
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'
Exemple de script post-déploiement
La tâche fournit une option permettant de personnaliser le déploiement en fournissant un script qui s’exécute sur l’instance Azure App Service dès que les artefacts de l’application ont été copiés dans l’instance App Service. Vous pouvez choisir de fournir un script de déploiement inline, ou le chemin et le nom d’un fichier de script dans votre dossier d’artefacts.
Cela est très utile si vous voulez restaurer vos dépendances d’application directement sur l’instance App Service. La restauration de packages pour les applications Node, PHP et Python permet d’éviter les délais d’expiration lorsque la dépendance de l’application entraîne la copie d’un artefact volumineux de l’agent vers le Azure App Service.
Voici un exemple de script de déploiement :
@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
)
Configuration requise
Condition requise | Description |
---|---|
Types de pipelines | YAML, build classique, version classique |
S’exécute sur | Agent, DeploymentGroup |
Demandes | None |
Capabilities | Cette tâche ne répond à aucune demande pour les tâches suivantes dans le travail. |
Restrictions de commandes | Quelconque |
Variables settables | Quelconque |
Version de l’agent | 2.104.1 ou version ultérieure |
Catégorie de la tâche | Déployer |
Voir aussi
- Cette tâche est en open source sur GitHub. Les commentaires et les contributions sont les bienvenus.