Partager via


AzureRmWebAppDeployment@4 - Tâche de déploiement d’Azure App Service 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.

Note

Utilisez AzureFunctionApp@1 pour déployer des applications Azure Functions.

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 Node.js applications web basées sur Windows ou Linux avec des conteneurs Docker, des applications mobiles, des applications API et des travaux web à l’aide d’API Web Deploy/API REST Kudu.

Syntaxe

# 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 pour utiliser visual Studio créé profils de publication.


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. Obligatoire lorsque ConnectionType = AzureRM.

Spécifiez l’abonnement Azure Resource Manager pour le déploiement.


PublishProfilePath - publier le chemin d’accès au profil
string. Obligatoire lorsque ConnectionType = PublishProfile. Valeur par défaut : $(System.DefaultWorkingDirectory)/**/*.pubxml.

Chemin d’accès du profil de publication créé à partir de Visual Studio.


PublishProfilePassword - Publier le mot de passe du profil
string. Obligatoire lorsque ConnectionType = PublishProfile.

Il est recommandé de stocker un mot de passe dans une variable secrète et d’utiliser cette variable ici, par exemple $(Password).


appType - type App Service
Alias d’entrée : WebAppKind. string. Obligatoire 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 la tâche Azure Functions)), functionAppLinux (Application de fonction sur Linux (non recommandé, Utiliser une tâche Azure Functions)), functionAppContainer (Application de fonction pour conteneurs (Linux) (Non recommandé, Utiliser Azure Functions pour la tâche de conteneur)) 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 conteneurs et l’application mobile.


appType - type App Service
Alias d’entrée : WebAppKind. string. Obligatoire 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 conteneurs et l’application mobile.


WebAppName - nom App Service
string. Obligatoire lorsque ConnectionType = AzureRM.

Spécifiez le nom d’un service Azure App Service existant. Les services d’application basés sur le type d’application sélectionné sont répertoriés uniquement lors de l’utilisation de l’Assistant Tâche.


deployToSlotOrASE - déployer sur un emplacement ou un environnement App Service
Alias d’entrée : DeployToSlotOrASEFlag. boolean. Optionnel. Utilisez quand ConnectionType = AzureRM && WebAppKind != "". Valeur par défaut : false.

Spécifiez l’option de déploiement sur un emplacement de déploiement existant ou dans un environnement Azure App Service. 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 à l’emplacement Production. Tout autre nom d’emplacement existant peut être fourni. Si la cible de déploiement est un environnement Azure App Service, laissez le nom de l’emplacement comme Production et spécifiez simplement le nom du groupe de ressources.


ResourceGroupName - groupe de ressources
string. Obligatoire 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 environnement App Service.

Spécifiez le groupe de ressources Azure qui contient azure App Service spécifié ci-dessus.


SlotName - emplacement
string. Obligatoire 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. Obligatoire lorsque WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppKind = webAppHyperVContainer.

Nom de domaine de niveau supérieur 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. Obligatoire lorsque WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppkind = webAppHyperVContainer.

Nom de domaine de niveau supérieur 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. Obligatoire lorsque WebAppKind = webAppContainer || WebAppkind = functionAppContainer.

Nom de domaine de niveau supérieur 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. Obligatoire lorsque WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppKind = webAppHyperVContainer.

Nom du référentiel 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. Obligatoire lorsque WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppkind = webAppHyperVContainer.

Nom du référentiel 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. Obligatoire lorsque WebAppKind = webAppContainer || WebAppkind = functionAppContainer.

Nom du référentiel 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 - balise
string. Optionnel. Utilisez quand WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppKind = webAppHyperVContainer.

Les balises sont le mécanisme que les registres utilisent 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 - balise
string. Optionnel. Utilisez quand WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppkind = webAppHyperVContainer.

Les balises sont le mécanisme que les registres utilisent 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 - balise
string. Optionnel. Utilisez quand WebAppKind = webAppContainer || WebAppkind = functionAppContainer.

Les balises sont le mécanisme que les registres utilisent 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. Optionnel. Utilisez quand WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && WebAppKind != functionApp && webAppKind != functionAppLinux && WebAppKind != "".

Spécifiez le nom de l’application virtuelle configurée dans le portail Azure. Cette option n’est pas nécessaire pour les déploiements vers la racine du site web. L’application virtuelle doit avoir été configurée avant le déploiement du projet web.


VirtualApplication - application virtuelle
string. Optionnel. Utilisez quand WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != functionApp && webAppKind != functionAppLinux && WebAppKind != "".

Spécifiez le nom de l’application virtuelle configurée dans le portail Azure. Cette option n’est pas nécessaire pour les déploiements vers 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. Obligatoire 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 fichier 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 version. les caractères génériques sont pris en charge.

Par exemple, $(System.DefaultWorkingDirectory)/\*\*/\*.zip ou $(System.DefaultWorkingDirectory)/\*\*/\*.war.


RuntimeStack - pile runtime
string. Optionnel. Utilisez quand WebAppKind = webAppLinux.

Spécifiez l’infrastructure et la version.


RuntimeStackFunction - pile runtime
string. Optionnel. 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 (NODE|8 (functionapp v2)), NODE|10 (NODE|10 (functionapp v2/v3)), NODE|12 (NODE|12 (functionapp v3)), NODE|14 (NODE|14 (functionapp v3)), PYTHON|3.6 (PYTHON|3.6 (functionapp v2/v3)), PYTHON|3.7 (PYTHON|3.7 (functionapp v2/v3)), PYTHON|3.8 (PYTHON|3.8 (functionapp v3)).

Spécifiez l’infrastructure et la version. Reportez-vous à la vue d’ensemble des versions du runtime Azure Functions pour les versions d’exécution prises en charge. Les anciennes valeurs comme DOCKER|microsoft/azure-functions-* sont déconseillées. Utilisez les nouvelles valeurs de la liste déroulante.


RuntimeStackFunction - pile runtime
string. Optionnel. 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 l’infrastructure et la version.


StartupCommand - commande de démarrage
string. Optionnel. Utilisez quand WebAppKind = webAppLinux || WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppKind = functionAppLinux || WebAppKind = webAppHyperVContainer.

Spécifiez la commande De démarrage. Par exemple:

dotnet exec filename.dll

dotnet filename.dll.


StartupCommand - commande de démarrage
string. Optionnel. Utilisez quand WebAppKind = webAppLinux || WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppKind = functionAppLinux || WebAppkind = webAppHyperVContainer.

Spécifiez la commande De démarrage. Par exemple:

dotnet exec filename.dll

dotnet filename.dll.


StartupCommand - commande de démarrage
string. Optionnel. Utilisez quand WebAppKind = webAppLinux || WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppKind = functionAppLinux.

Spécifiez la commande De démarrage. Par exemple:

dotnet exec filename.dll

dotnet filename.dll.


StartupCommand - commande de démarrage
string. Optionnel. Utilisez quand WebAppKind = webAppLinux || WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppKind = functionAppLinux.

Spécifiez la commande De démarrage. Par exemple, dotnet rundotnet filename.dll.


StartupCommand - commande de démarrage
string. Optionnel. Utilisez quand WebAppKind = webAppLinux || WebAppKind = webAppContainer || WebAppkind = functionAppContainer.

Spécifiez la commande De démarrage.


ScriptType - type de script de déploiement
string. Optionnel. 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 Azure App Service après le déploiement réussi. Choisissez le script de déploiement inline ou le chemin d’accès et le nom d’un fichier de script. En savoir plus sur de déploiement Azure App Service .


ScriptType - type de script de déploiement
string. Optionnel. 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 Azure App Service après le déploiement réussi. Choisissez le script de déploiement inline ou le chemin d’accès et le nom d’un fichier de script. En savoir plus sur de déploiement Azure App Service .


InlineScript - script inline
string. Obligatoire 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 suivant.


InlineScript - script inline
string. Obligatoire 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 suivant.


ScriptPath - chemin d’accès du script de déploiement
string. Obligatoire lorsque ScriptType == File Path && ConnectionType = AzureRM && WebAppKind != "" && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer.

Chemin d’accès et nom du script à exécuter.


ScriptPath - chemin d’accès du script de déploiement
string. Obligatoire lorsque ScriptType == File Path && ConnectionType = AzureRM && WebAppKind != "" && WebAppKind != webAppContainer && WebAppkind != functionAppContainer.

Chemin d’accès et nom du script à exécuter.


WebConfigParameters - Générer des paramètres de web.config pour Python, Node.js, Go et les applications Java
string. Optionnel. Utilisez quand WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war.

Une Web.config standard sera générée et déployée sur Azure App Service si l’application n’en a pas. Les valeurs de web.config peuvent être modifiées et varient en fonction de l’infrastructure d’application. Par exemple, pour node.js applications, web.config a un fichier de démarrage et des valeurs de module iis_node. Cette fonctionnalité de modification concerne uniquement les web.configgénérées. En savoir plus sur de déploiement Azure App Service .


WebConfigParameters - Générer des paramètres de web.config pour Python, Node.js, Go et les applications Java
string. Optionnel. Utilisez quand WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war.

Une Web.config standard sera générée et déployée sur Azure App Service si l’application n’en a pas. Les valeurs de web.config peuvent être modifiées et varient en fonction de l’infrastructure d’application. Par exemple, pour node.js applications, web.config a un fichier de démarrage et des valeurs de module iis_node. Cette fonctionnalité de modification concerne uniquement les web.configgénérées. En savoir plus sur de déploiement Azure App Service .


paramètres d’application AppSettings -
string. Optionnel. Utilisez quand ConnectionType = AzureRM.

Modifie les paramètres d’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 deux valeurs de clé ou plus, les valeurs de clé doivent être séparées par un espace. Exemple : -key1 "Value1" -Key2 "Value2".


paramètres de configuration ConfigurationSettings -
string. Optionnel. Utilisez quand ConnectionType = AzureRM.

Modifie les paramètres de configuration d’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 la méthode de déploiement
Alias d’entrée : UseWebDeploy. boolean. Optionnel. 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 l’Assistant Tâche pour afficher les méthodes de déploiement prises en charge, puis choisissez-en une pour le déploiement de votre application.


enableCustomDeployment - Sélectionner la méthode de déploiement
Alias d’entrée : UseWebDeploy. boolean. Optionnel. 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 l’Assistant Tâche pour afficher les méthodes de déploiement prises en charge, puis choisissez-en une pour le déploiement de votre application.


DeploymentType - méthode Deployment
string. Obligatoire 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 Deployment
string. Obligatoire 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 - mettre l’application hors connexion
boolean. Optionnel. 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 azure App Service hors connexion en plaçant un fichier app_offline.htm dans le répertoire racine avant le début de l’opération de synchronisation. Le fichier sera supprimé une fois la synchronisation terminée.


TakeAppOfflineFlag - mettre l’application hors connexion
boolean. Optionnel. 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 azure App Service hors connexion en plaçant un fichier app_offline.htm dans le répertoire racine avant le début de l’opération de synchronisation. Le fichier sera supprimé une fois la synchronisation terminée.


SetParametersFile - fichier SetParameters
string. Optionnel. 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 fichier SetParameters.xml à utiliser.


SetParametersFile - fichier SetParameters
string. Optionnel. 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 fichier SetParameters.xml à utiliser.


RemoveAdditionalFilesFlag - Supprimer des fichiers supplémentaires au de destination
boolean. Optionnel. 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 des fichiers sur 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 cet Azure App Service. Pour éviter cela, cochez la case Exclude files from App_Data folder.


RemoveAdditionalFilesFlag - Supprimer des fichiers supplémentaires au de destination
boolean. Optionnel. 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 des fichiers sur 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 cet Azure App Service. Pour éviter cela, cochez la case Exclude files from App_Data folder.


ExcludeFilesFromAppDataFlag - Exclure des fichiers du dossier App_Data
boolean. Optionnel. 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 déploiement de fichiers dans le dossier App_Data vers/supprimé d’Azure App Service.


ExcludeFilesFromAppDataFlag - Exclure des fichiers du dossier App_Data
boolean. Optionnel. 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 déploiement de fichiers dans le dossier App_Data vers/supprimé d’Azure App Service.


AdditionalArguments - arguments supplémentaires
string. Optionnel. 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. Celles-ci sont appliquées lors du déploiement d’Azure App Service. Exemples : -disableLink:AppPoolExtension -disableLink:ContentExtension. En savoir plus sur paramètres d’opération de déploiement web.


AdditionalArguments - arguments supplémentaires
string. Optionnel. 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. Celles-ci sont appliquées lors du déploiement d’Azure App Service. Exemples : -disableLink:AppPoolExtension -disableLink:ContentExtension. En savoir plus sur paramètres d’opération de déploiement web.


RenameFilesFlag - Renommer les fichiers verrouillés
boolean. Optionnel. 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 MSDEPLOY_RENAME_LOCKED_FILES=1 dans les paramètres de l’application Azure App Service. 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. Optionnel. 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 MSDEPLOY_RENAME_LOCKED_FILES=1 dans les paramètres de l’application Azure App Service. 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. Optionnel. Utilisez quand WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war. Valeur par défaut : false.

Les transformations de configuration sont exécutées pour *.Release.config et *.<EnvironmentName>.config sur le *.config file. Les transformations de configuration s’exécutent avant la substitution de variable. transformations XML sont prises en charge uniquement pour la plateforme Windows.


enableXmlTransform - transformation XML
Alias d’entrée : XmlTransformation. boolean. Optionnel. Utilisez quand WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war. Valeur par défaut : false.

Les transformations de configuration sont exécutées pour *.Release.config et *.<EnvironmentName>.config sur le *.config file. Les transformations de configuration s’exécutent avant la substitution de variable. transformations XML sont prises en charge uniquement pour la plateforme Windows.


enableXmlVariableSubstitution - de substitution de variable XML
Alias d’entrée : XmlVariableSubstitution. boolean. Optionnel. 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 l'configSections, appSettings, applicationSettingset connectionStrings sections de n’importe quel fichier de configuration et fichier parameters.xml. La substitution 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 à l’étape, les variables intermédiaires 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 - de substitution de variable XML
Alias d’entrée : XmlVariableSubstitution. boolean. Optionnel. 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 l'configSections, appSettings, applicationSettingset connectionStrings sections de n’importe quel fichier de configuration et fichier parameters.xml. La substitution 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 à l’étape, les variables intermédiaires 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. Optionnel. 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 les 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 substitution de variable JSON.


JSONFiles - substitution de variable JSON
string. Optionnel. 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 les 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 substitution de variable JSON.


Options de contrôle de tâche

Toutes les tâches ont des options de contrôle en plus de leurs entrées de tâche. 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 en aval, les travaux et les étapes.

AppServiceApplicationUrl
URL d’application de l’App Service sélectionné.

Remarques

Utilisez cette tâche pour effectuer un déploiement sur une plage d’App Services 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 .

La tâche fonctionne pour ASP.NET, ASP.NET Core, PHP, Java, Python, Goet les applications web basées sur Node.js.

La tâche peut être utilisée pour effectuer un déploiement sur une plage d’Azure App Services, telles que :

Conditions préalables pour 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 un projet 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 là. Vous pouvez également utiliser tâche Azure PowerShell pour exécuter scripts Azure PowerShell pour approvisionner et configurer l’application web.

  • abonnement Azure. Pour effectuer un déploiement sur Azure, un abonnement Azure doit être lié au pipeline. La tâche ne fonctionne pas avec la connexion de service Azure Classic et ne répertorie pas ces connexions dans les paramètres de la tâche.

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 valeur true dans le pipeline. Si vous effectuez un déploiement sur un emplacement configuré pour l’échange automatique, l’échange échoue, sauf si vous définissez SCM_SKIP_SSL_VALIDATION ou SCM_SKIP_ASE_SSL_VALIDATION sur 1 dans les paramètres de configuration des services d’application.
  • Pour les applications .NET ciblant l’application web sur Windows, évitez les échecs de déploiement avec l’erreur ERROR_FILE_IN_USE en veillant à ce que renommer les fichiers verrouillés et paramètres de mettre hors connexion l’application sont activés. Pour un déploiement sans temps d’arrêt, utilisez l’option d’échange d’emplacement.
  • Lorsque vous effectuez un déploiement sur app Service sur lequel Application Insights est configuré et que vous avez activé Supprimer des fichiers supplémentaires aude destination, veillez également à activer Exclure les fichiers du dossier App_Data afin de maintenir l’extension Application Insights dans un état sûr. Cela est nécessaire, car le travail web continu Application Insights 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 modifier l’option de déploiement, développez options de déploiement supplémentaires et activez Sélectionner la méthode de déploiement choisir parmi d’autres options de déploiement basées sur des packages.

En fonction du type d’Azure App Service et de l’agent, la tâche choisit une technologie de déploiement appropriée. Les différentes technologies de déploiement utilisées par la tâche sont les suivantes :

Par défaut, la tâche tente de sélectionner la technologie de déploiement appropriée en fonction du type de package d’entrée, du type App Service et du système d’exploitation de l’agent.

Détection automatique de la logique

Pour les agents windows.

Type App Service Type de package Méthode de déploiement
WebApp sur Linux ou Application de fonction sur Linux Dossier/Zip/jar
War
Zip Deploy
War Deploy
WebApp pour conteneurs (Linux) ou Function App pour conteneurs (Linux) Mettre à jour les paramètres de l’application NA
WebApp sur Windows, Application de fonction sur Windows, Application API ou Application mobile War
Jar
type de package MsBuild ou déployer sur une application virtuelle


Dossier/Zip
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 API REST Kudu pour déployer l’application.

Déploiement web

Web Deploy (msdeploy.exe) peut être utilisé pour déployer une application web sur Windows ou une application de fonction sur Azure App Service à l’aide d’un agent Windows. Web Deploy est riche en fonctionnalités et offre des options telles que :

  • Renommer les fichiers verrouillés : renommer un fichier qui est toujours utilisé par le serveur web en activant l’indicateur msdeploy MSDEPLOY\_RENAME\_LOCKED\_FILES=1 dans les paramètres Azure App Service. Cette option, si elle est définie, permet à msdeploy de renommer les fichiers verrouillés pendant le déploiement de l’application.

  • Supprimer des fichiers supplémentaires à la destination : Supprime les fichiers dans Azure App Service qui n’ont pas de fichiers correspondants dans le package ou le dossier d’artefact App Service en cours de déploiement.

  • Exclure des fichiers du dossier App_Data : Empêcher les fichiers du dossier App_Data (dans le package/dossier d’artefact en cours de déploiement) déployés sur Azure App Service

  • arguments de déploiement web supplémentaires : arguments qui seront appliqués lors du déploiement d’Azure App Service. Exemple : -disableLink:AppPoolExtension -disableLink:ContentExtension. Pour plus d’exemples de paramètres d’opération Web Deploy, consultez Paramètres d’opération de déploiement web.

Installez Web Deploy sur l’agent à partir de Web Deploy 3.6. Web Deploy 3.5 doit être installé sans prise en charge de SQL groupée. Il n’est pas nécessaire de choisir des paramètres personnalisés lors de l’installation du déploiement web. Web Deploy est installé sur C:/Program Files (x86)/IIS/Microsoft Web Deploy V3.

API REST Kudu

API REST Kudu travailler sur des agents d’automatisation Windows et Linux lorsque 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 des fichiers dans Azure App Service.

Registre de conteneurs

Fonctionne sur les agents d’automatisation Windows et Linux lorsque la cible est une application web pour conteneurs. La tâche met à jour l’application en définissant le registre de conteneurs, le référentiel, le nom de l’image et les informations de balise appropriées. 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’application App Service ou Function App 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écuter à 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, l’ensemble du package est monté par le runtime Functions et les fichiers dans le dossier wwwroot deviennent en lecture seule. Pour plus d’informations, consultez 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 dossier webapps du service App Service dans Azure.

Dépannage

Je ne parviens pas à déployer web sur mon service 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 l’ID Microsoft Entra, 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 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.

  1. 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.
  2. Si vous êtes dépendant 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).
  3. Si aucune de ces options n’est possible, vous pouvez activer l’authentification de base pour votre Azure App Service.

Erreur : Impossible d’extraire le jeton d’accès pour Azure. Vérifiez si 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 qu’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 à vos ressources d’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 souhaitez utiliser un certificat dans App Service, le certificat doit être signé par une autorité de certification approuvée. Si votre application web vous fournit des 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 génération ou de mise en production pour résoudre l’erreur.

Une mise en production se bloque pendant longtemps, puis échoue

Ce problème peut être le résultat d’une capacité insuffisante dans votre plan App Service. Pour résoudre ce problème, vous pouvez effectuer un scale-up de l’instance App Service pour augmenter l’espace processeur, ram et disque disponible ou essayer avec un autre plan App Service.

5 codes d’erreurxx

Si vous voyez une erreur 5xx, vérifiez l’état de votre service Azure.

Azure Function a soudainement cessé de fonctionner

Azure Functions peut soudainement cesser de fonctionner si plusieurs années sont passées 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 de « 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 avec une date d’expiration d’un an.

Erreur : Aucun package trouvé 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 une étape précédente et téléchargé dans le travail actuel.

Erreur : La publication à l’aide de 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 des arguments par défaut) ont une structure de dossiers imbriquée qui peut être déployée correctement uniquement 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, procédez comme suit :

  1. Dans la tâche générer la solution, remplacez les des arguments MSBuild par :

    Capture d’écran montrant les valeurs de la solution Générer.

  2. Ajoutez une tâche Archive et modifiez les valeurs comme suit :

    1. Modifiez dossier racine ou fichier pour archiver en $(System.DefaultWorkingDirectory)\\WebAppContent.

    2. Désactivez le nom du dossier racine prépend pour archiver les chemins d’accès case à cocher :

      Capture d’écran montrant les valeurs Archive.

Le déploiement d’applications web sur Windows réussit, mais l’application ne fonctionne pas

Cela peut être dû au fait que web.config n’est pas présent dans votre application. Vous pouvez ajouter un fichier web.config à votre source ou en générer automatiquement un à l’aide des transformations de fichiers et des options de substitution de variables de la tâche.

  • Cliquez sur la tâche et accédez à Générer des paramètres de web.config pour Python, Node.js, Go et Java.

    Capture d’écran de la boîte de dialogue Générer des paramètres de web.config.

  • Cliquez sur le bouton Générer web.config paramètres pour Python, Node.js, Go et les applications Java pour modifier les paramètres.

    capture d’écran de la liste déroulante Application Framework.

  • Sélectionnez votre type d’application dans la liste déroulante.

  • Cliquez sur OK. Cela remplira web.config paramètres nécessaires pour générer web.config.

Note

Cette section est déconseillée et a été remplacée par la tâche Transformation de fichier.

ERROR_FILE_IN_USE

Lors du déploiement d’applications .NET sur Web App sur Windows, le déploiement peut échouer avec le code d’erreur ERROR_FILE_IN_USE. Pour résoudre l’erreur, vérifiez que renommer les fichiers verrouillés et options 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’emplacements.

Vous pouvez également utiliser méthode d’exécution de package pour éviter le verrouillage des ressources.

Erreur de déploiement web

Si vous utilisez le déploiement web pour déployer votre application, dans certains scénarios d’erreur, Web Deploy affiche un code d’erreur dans le journal. Pour résoudre les problèmes d’erreur de déploiement web, consultez codes d’erreur Web Deploy.

Le déploiement d’applications web sur App Service Environment (ASE) ne fonctionne pas

  • Vérifiez que l’agent de build Azure DevOps se trouve sur le même réseau virtuel (sous-réseau peut être différent) que l’équilibreur de charge interne (ILB) d’ASE. Cela permet à l’agent d’extraire du code à partir d’Azure DevOps et de le déployer sur 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 à Azure DevOps Service.
  • 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é. Étant donné que les ressources privées du réseau virtuel n’ont pas d’entrées dans Azure DNS, cela doit être ajouté au fichier hosts 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 variable VSTS_ARM_REST_IGNORE_SSL_ERRORS sur true. Si un certificat d’une autorité de certification est utilisé pour la configuration ASE, cela ne doit pas être nécessaire. Si vous effectuez un déploiement sur un emplacement configuré pour l’échange automatique, l’échange échoue, sauf si vous définissez SCM_SKIP_SSL_VALIDATION ou SCM_SKIP_ASE_SSL_VALIDATION sur 1 dans les paramètres de configuration des services d’application.

Questions fréquentes (FAQ)

Quelle est la différence entre les tâches AzureWebApp 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 à l’application racine dans l’application web Azure.

La tâche Azure App Service Deploy (AzureRmWebAppDeployment) peut gérer des scénarios plus personnalisés, tels que :

Note

Les transformations de fichiers et la substitution de variables sont également prises en charge par la tâche de transformation de fichier distincte à utiliser dans Azure Pipelines. Vous pouvez utiliser la tâche Transformation de fichier pour appliquer des transformations de fichiers et des substitutions de variables sur tous les fichiers 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 ?

Lorsque vous effectuez un déploiement sur app Service, si vous avez Application Insights 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 conserve l’extension Application Insights dans un état sûr. Cette étape est requise, car la tâche web continue Application Insights est installée dans le dossier App_Data.

Comment configurer mon agent s’il se trouve derrière un proxy pendant le déploiement sur App Service ?

Si votre agent auto-hébergé nécessite un proxy web, vous pouvez informer l’agent sur le proxy pendant la configuration. Cela permet à votre agent de se connecter à Azure Pipelines ou à Azure DevOps Server via 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

Pour effectuer un déploiement sur un type d’application spécifique, définissez appType sur l’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). S’il n’est pas mentionné, webApp est pris comme valeur par défaut.

Pour activer toutes les options de déploiement avancées, ajoutez le paramètre enableCustomDeployment: true et incluez les paramètres suivants en fonction des besoins.

# 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 se déploie 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 Service d’application Windows entre les emplacements de déploiement

L’exemple suivant déploie une application web sur un Service d’application Windows entre les 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écutera sur Azure App Service une fois que les artefacts de l’application ont été correctement copiés dans App Service. Vous pouvez choisir de fournir un script de déploiement inline ou le chemin d’accès et le nom d’un fichier de script dans votre dossier d’artefacts.

Cela est très utile lorsque vous souhaitez restaurer vos dépendances d’application directement sur 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 une copie d’un artefact volumineux de l’agent vers 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
)

Exigences

Exigence Description
Types de pipelines YAML, Build Classique, Version Classique
Exécutions sur Agent, DeploymentGroup
demandes Aucun
fonctionnalités de Cette tâche ne répond à aucune demande de tâches ultérieures dans le travail.
restrictions de commande Quelconque
variables settables Quelconque
Version de l’agent 2.104.1 ou version ultérieure
Catégorie de tâche Déployer

Voir aussi