Udostępnij za pośrednictwem


AzureRmWebAppDeployment@4 — zadanie wdrażania usługi Azure App Service w wersji 4

To zadanie służy do wdrażania w usłudze Azure App Service aplikacji internetowej, mobilnej lub interfejsu API przy użyciu platformy Docker, Java, .NET, .NET Core, Node.js, PHP, Python lub Ruby.

Nuta

Użyj AzureFunctionApp@1, aby wdrożyć aplikacje usługi Azure Functions.

Zaktualizuj usługi Azure App Services w systemie Windows, Aplikację internetową w systemie Linux przy użyciu wbudowanych obrazów lub kontenerów platformy Docker, ASP.NET, .NET Core, PHP, Python lub Node.js opartych na aplikacjach internetowych, aplikacjach funkcji w systemie Windows lub Linux za pomocą kontenerów platformy Docker, aplikacji mobilnych, aplikacji interfejsu API i zadań Web Jobs przy użyciu interfejsów API REST usługi Web Deploy/Kudu.

Składnia

# 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.

Wejścia

ConnectionType - typ połączenia
string. Wymagane. Dozwolone wartości: AzureRM (Azure Resource Manager), PublishProfile (profil publikowania). Wartość domyślna: AzureRM.

Określ typ połączenia usługi, który ma być używany do wdrożenia aplikacji internetowej.

Określ Publish Profile na potrzeby używania utworzonych profilów publikowania programu Visual Studio.


ConnectionType - typ połączenia
string. Wymagane. Dozwolone wartości: AzureRM (Azure Resource Manager), PublishProfile (profil publikowania). Wartość domyślna: AzureRM.

Określ typ połączenia usługi, który ma być używany do wdrożenia aplikacji internetowej.


subskrypcji platformy Azure
Alias wejściowy: ConnectedServiceName. string. Wymagane, gdy ConnectionType = AzureRM.

Określ subskrypcję usługi Azure Resource Manager dla wdrożenia.


PublishProfilePath - ścieżka profilu publikowania
string. Wymagane, gdy ConnectionType = PublishProfile. Wartość domyślna: $(System.DefaultWorkingDirectory)/**/*.pubxml.

Ścieżka profilu publikowania utworzona na podstawie programu Visual Studio.


PublishProfilePassword - publikowanie hasła profilu
string. Wymagane, gdy ConnectionType = PublishProfile.

Zaleca się przechowywanie hasła w zmiennej tajnej i używanie tej zmiennej w tym miejscu, np. $(Password).


appType - typ usługi App Service
Alias wejściowy: WebAppKind. string. Wymagane, gdy ConnectionType = AzureRM. Dozwolone wartości: webApp (aplikacja internetowa w systemie Windows), webAppLinux (aplikacja internetowa w systemie Linux), webAppContainer (Web App for Containers (Linux)), webAppHyperVContainer (Web App for Containers (Windows)), functionApp (Aplikacja funkcji w systemie Windows ) (niezalecane, Użyj zadania usługi Azure Functions)), functionAppLinux (aplikacja funkcji w systemie Linux (niezalecane, korzystanie z zadania usługi Azure Functions)), functionAppContainer (aplikacja funkcji dla kontenerów (Linux) (niezalecane, używanie usługi Azure Functions dla zadania kontenera)) apiApp (aplikacja interfejsu API), mobileApp (aplikacja mobilna). Wartość domyślna: webApp.

Wybierz jedną z opcji Aplikacja internetowa w systemie Windows, Aplikacja internetowa w systemie Linux, aplikacja internetowa dla kontenerów, aplikacja funkcji, aplikacja funkcji w systemie Linux, aplikacja funkcji dla kontenerów i aplikacja mobilna.


appType - typ usługi App Service
Alias wejściowy: WebAppKind. string. Wymagane, gdy ConnectionType = AzureRM. Dozwolone wartości: webApp (aplikacja internetowa w systemie Windows), webAppLinux (aplikacja internetowa w systemie Linux), webAppContainer (Web App for Containers (Linux)), functionApp (aplikacja funkcji w systemie Windows), functionAppLinux (aplikacja funkcji w systemie Linux), functionAppContainer (aplikacja funkcji dla kontenerów (Linux)), apiApp (aplikacja interfejsu API), mobileApp (aplikacja mobilna). Wartość domyślna: webApp.

Wybierz jedną z opcji Aplikacja internetowa w systemie Windows, Aplikacja internetowa w systemie Linux, aplikacja internetowa dla kontenerów, aplikacja funkcji, aplikacja funkcji w systemie Linux, aplikacja funkcji dla kontenerów i aplikacja mobilna.


WebAppName - nazwa usługi App Service
string. Wymagane, gdy ConnectionType = AzureRM.

Określ nazwę istniejącej usługi Azure App Service. Usługi App Services oparte na wybranym typie aplikacji będą wyświetlane tylko w przypadku korzystania z asystenta zadań.


deployToSlotOrASE - wdrażanie w miejscu lub środowisku App Service Environment
Alias wejściowy: DeployToSlotOrASEFlag. boolean. Fakultatywny. Użyj polecenia , gdy ConnectionType = AzureRM && WebAppKind != "". Wartość domyślna: false.

Określ opcję wdrożenia w istniejącym miejscu wdrożenia lub środowisku usługi Azure App Service. W przypadku obu obiektów docelowych zadanie wymaga nazwy grupy zasobów. Jeśli celem wdrożenia jest miejsce docelowe, domyślnie wdrożenie jest do miejsca produkcyjnego. Można podać dowolną inną istniejącą nazwę miejsca. Jeśli celem wdrożenia jest środowisko usługi Azure App Service, pozostaw nazwę miejsca jako Production i określ tylko nazwę grupy zasobów.


grupy zasobów
string. Wymagane, gdy DeployToSlotOrASEFlag = true.

Nazwa grupy zasobów jest wymagana, gdy celem wdrożenia jest miejsce wdrożenia lub środowisko App Service Environment.

Określ grupę zasobów platformy Azure zawierającą usługę Azure App Service określoną powyżej.


miejsca
string. Wymagane, gdy DeployToSlotOrASEFlag = true. Wartość domyślna: production.

Określ istniejące miejsce inne niż miejsce produkcyjne.


DockerNamespace - rejestru lub przestrzeni nazw
string. Wymagane, gdy WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppKind = webAppHyperVContainer.

Globalnie unikatowa nazwa domeny najwyższego poziomu dla określonego rejestru lub przestrzeni nazw. Uwaga: w pełni kwalifikowana nazwa obrazu będzie mieć format: {registry or namespace}/{repository}:{tag}. Na przykład myregistry.azurecr.io/nginx:latest.


DockerNamespace - rejestru lub przestrzeni nazw
string. Wymagane, gdy WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppkind = webAppHyperVContainer.

Globalnie unikatowa nazwa domeny najwyższego poziomu dla określonego rejestru lub przestrzeni nazw. Uwaga: w pełni kwalifikowana nazwa obrazu będzie mieć format: {registry or namespace}/{repository}:{tag}. Na przykład myregistry.azurecr.io/nginx:latest.


DockerNamespace - rejestru lub przestrzeni nazw
string. Wymagane, gdy WebAppKind = webAppContainer || WebAppkind = functionAppContainer.

Globalnie unikatowa nazwa domeny najwyższego poziomu dla określonego rejestru lub przestrzeni nazw. Uwaga: w pełni kwalifikowana nazwa obrazu będzie mieć format: {registry or namespace}/{repository}:{tag}. Na przykład myregistry.azurecr.io/nginx:latest.


DockerRepository - image
string. Wymagane, gdy WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppKind = webAppHyperVContainer.

Nazwa repozytorium, w którym są przechowywane obrazy kontenerów. Uwaga: w pełni kwalifikowana nazwa obrazu będzie mieć format: {registry or namespace}/{repository}:{tag}. Na przykład myregistry.azurecr.io/nginx:latest.


DockerRepository - image
string. Wymagane, gdy WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppkind = webAppHyperVContainer.

Nazwa repozytorium, w którym są przechowywane obrazy kontenerów. Uwaga: w pełni kwalifikowana nazwa obrazu będzie mieć format: {registry or namespace}/{repository}:{tag}. Na przykład myregistry.azurecr.io/nginx:latest.


DockerRepository - image
string. Wymagane, gdy WebAppKind = webAppContainer || WebAppkind = functionAppContainer.

Nazwa repozytorium, w którym są przechowywane obrazy kontenerów. Uwaga: w pełni kwalifikowana nazwa obrazu będzie mieć format: {registry or namespace}/{repository}:{tag}. Na przykład myregistry.azurecr.io/nginx:latest.


tagów
string. Fakultatywny. Użyj polecenia , gdy WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppKind = webAppHyperVContainer.

Tagi to mechanizm używany przez rejestry do stosowania informacji o wersji do obrazów platformy Docker. Uwaga: w pełni kwalifikowana nazwa obrazu będzie mieć format: {registry or namespace}/{repository}:{tag}. Na przykład myregistry.azurecr.io/nginx:latest.


tagów
string. Fakultatywny. Użyj polecenia , gdy WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppkind = webAppHyperVContainer.

Tagi to mechanizm używany przez rejestry do stosowania informacji o wersji do obrazów platformy Docker. Uwaga: w pełni kwalifikowana nazwa obrazu będzie mieć format: {registry or namespace}/{repository}:{tag}. Na przykład myregistry.azurecr.io/nginx:latest.


tagów
string. Fakultatywny. Użyj polecenia , gdy WebAppKind = webAppContainer || WebAppkind = functionAppContainer.

Tagi to mechanizm używany przez rejestry do stosowania informacji o wersji do obrazów platformy Docker. Uwaga: w pełni kwalifikowana nazwa obrazu będzie mieć format: {registry or namespace}/{repository}:{tag}. Na przykład myregistry.azurecr.io/nginx:latest.


VirtualApplication - aplikacji wirtualnej
string. Fakultatywny. Użyj polecenia , gdy WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && WebAppKind != functionApp && webAppKind != functionAppLinux && WebAppKind != "".

Określ nazwę aplikacji wirtualnej, która została skonfigurowana w witrynie Azure Portal. Ta opcja nie jest wymagana w przypadku wdrożeń w katalogu głównym witryny internetowej. Aplikacja wirtualna musi zostać skonfigurowana przed wdrożeniem projektu internetowego.


VirtualApplication - aplikacji wirtualnej
string. Fakultatywny. Użyj polecenia , gdy WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != functionApp && webAppKind != functionAppLinux && WebAppKind != "".

Określ nazwę aplikacji wirtualnej, która została skonfigurowana w witrynie Azure Portal. Ta opcja nie jest wymagana w przypadku wdrożeń w katalogu głównym witryny internetowej. Aplikacja wirtualna musi zostać skonfigurowana przed wdrożeniem projektu internetowego.


packageForLinux - pakietu lub folderu
Alias wejściowy: Package. string. Wymagane, gdy ConnectionType = PublishProfile || WebAppKind = webApp || WebAppKind = apiApp || WebAppKind = functionApp || WebAppKind = mobileApp || WebAppKind = webAppLinux || webAppKind = functionAppLinux. Wartość domyślna: $(System.DefaultWorkingDirectory)/**/*.zip.

Ścieżka pliku do pakietu lub do folderu zawierającego zawartość usługi App Service wygenerowaną przez program MSBuild lub skompresowany plik zip lub war.

Zmienne to build i Release. wieloznaczne są obsługiwane.

Na przykład $(System.DefaultWorkingDirectory)/\*\*/\*.zip lub $(System.DefaultWorkingDirectory)/\*\*/\*.war.


RuntimeStack - stosu środowiska uruchomieniowego
string. Fakultatywny. Użyj polecenia , gdy WebAppKind = webAppLinux.

Określ strukturę i wersję.


RuntimeStackFunction - stosu środowiska uruchomieniowego
string. Fakultatywny. Użyj polecenia , gdy WebAppKind = functionAppLinux. Dozwolone wartości: 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 (aplikacja funkcji w wersji 3)).

Określ strukturę i wersję. Zapoznaj się z omówieniem wersji środowiska uruchomieniowego usługi Azure Functions obsługiwanych wersji środowiska uruchomieniowego. Stare wartości, takie jak DOCKER|microsoft/azure-functions-*, są przestarzałe. Użyj nowych wartości z listy rozwijanej.


RuntimeStackFunction - stosu środowiska uruchomieniowego
string. Fakultatywny. Użyj polecenia , gdy WebAppKind = functionAppLinux. Dozwolone wartości: DOCKER|microsoft/azure-functions-dotnet-core2.0:2.0 (.NET), DOCKER|microsoft/azure-functions-node8:2.0 (JavaScript).

Określ strukturę i wersję.


polecenia uruchamiania
string. Fakultatywny. Użyj polecenia , gdy WebAppKind = webAppLinux || WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppKind = functionAppLinux || WebAppKind = webAppHyperVContainer.

Określ polecenie Uruchamiania. Na przykład:

dotnet exec filename.dll

dotnet filename.dll.


polecenia uruchamiania
string. Fakultatywny. Użyj polecenia , gdy WebAppKind = webAppLinux || WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppKind = functionAppLinux || WebAppkind = webAppHyperVContainer.

Określ polecenie Uruchamiania. Na przykład:

dotnet exec filename.dll

dotnet filename.dll.


polecenia uruchamiania
string. Fakultatywny. Użyj polecenia , gdy WebAppKind = webAppLinux || WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppKind = functionAppLinux.

Określ polecenie Uruchamiania. Na przykład:

dotnet exec filename.dll

dotnet filename.dll.


polecenia uruchamiania
string. Fakultatywny. Użyj polecenia , gdy WebAppKind = webAppLinux || WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppKind = functionAppLinux.

Określ polecenie Uruchamiania. Na przykład dotnet rundotnet filename.dll.


polecenia uruchamiania
string. Fakultatywny. Użyj polecenia , gdy WebAppKind = webAppLinux || WebAppKind = webAppContainer || WebAppkind = functionAppContainer.

Określ polecenie Uruchamiania.


ScriptType - typ skryptu wdrożenia
string. Fakultatywny. Użyj polecenia , gdy ConnectionType = AzureRM && WebAppKind != "" && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer. Dozwolone wartości: Inline Script, File Path (ścieżka pliku skryptu).

Dostosowuje wdrożenie, udostępniając skrypt uruchamiany w usłudze Azure App Service po pomyślnym wdrożeniu. Wybierz wbudowany skrypt wdrażania lub ścieżkę i nazwę pliku skryptu. Dowiedz się więcej o wdrażania usługi Azure App Service.


ScriptType - typ skryptu wdrożenia
string. Fakultatywny. Użyj polecenia , gdy ConnectionType = AzureRM && WebAppKind != "" && WebAppKind != webAppContainer && WebAppkind != functionAppContainer. Dozwolone wartości: Inline Script, File Path (ścieżka pliku skryptu).

Dostosowuje wdrożenie, udostępniając skrypt uruchamiany w usłudze Azure App Service po pomyślnym wdrożeniu. Wybierz wbudowany skrypt wdrażania lub ścieżkę i nazwę pliku skryptu. Dowiedz się więcej o wdrażania usługi Azure App Service.


skryptu wbudowanego
string. Wymagane, gdy ScriptType == Inline Script && ConnectionType = AzureRM && WebAppKind != "" && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer. Wartość domyślna: :: You can provide your deployment commands here. One command per line..

Skrypt do wykonania. W tym miejscu możesz podać polecenia wdrożenia— jedno polecenie na wiersz. Zobacz poniższy przykład.


skryptu wbudowanego
string. Wymagane, gdy ScriptType == Inline Script && ConnectionType = AzureRM && WebAppKind != "" && WebAppKind != webAppContainer && WebAppkind != functionAppContainer. Wartość domyślna: :: You can provide your deployment commands here. One command per line..

Skrypt do wykonania. W tym miejscu możesz podać polecenia wdrożenia— jedno polecenie na wiersz. Zobacz poniższy przykład.


ScriptPath - ścieżka skryptu wdrażania
string. Wymagane, gdy ScriptType == File Path && ConnectionType = AzureRM && WebAppKind != "" && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer.

Ścieżka i nazwa skryptu do wykonania.


ScriptPath - ścieżka skryptu wdrażania
string. Wymagane, gdy ScriptType == File Path && ConnectionType = AzureRM && WebAppKind != "" && WebAppKind != webAppContainer && WebAppkind != functionAppContainer.

Ścieżka i nazwa skryptu do wykonania.


WebConfigParameters - Generowanie parametrów web.config dla języka Python, Node.js, Go i Java apps
string. Fakultatywny. Użyj polecenia , gdy WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war.

Standardowa Web.config zostanie wygenerowana i wdrożona w usłudze Azure App Service, jeśli aplikacja jej nie ma. Wartości w web.config można edytować i różnić w zależności od struktury aplikacji. Na przykład w przypadku aplikacji node.jsweb.config będą miały plik startowy i wartości modułu iis_node. Ta funkcja edycji dotyczy tylko wygenerowanego web.config. Dowiedz się więcej o wdrażania usługi Azure App Service.


WebConfigParameters - Generowanie parametrów web.config dla języka Python, Node.js, Go i Java apps
string. Fakultatywny. Użyj polecenia , gdy WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war.

Standardowa Web.config zostanie wygenerowana i wdrożona w usłudze Azure App Service, jeśli aplikacja jej nie ma. Wartości w web.config można edytować i różnić w zależności od struktury aplikacji. Na przykład w przypadku aplikacji node.jsweb.config będą miały plik startowy i wartości modułu iis_node. Ta funkcja edycji dotyczy tylko wygenerowanego web.config. Dowiedz się więcej o wdrażania usługi Azure App Service.


ustawienia aplikacji AppSettings -
string. Fakultatywny. Użyj polecenia , gdy ConnectionType = AzureRM.

Edytuje ustawienia aplikacji internetowej przy użyciu składni -key value. Wartości zawierające spacje muszą być ujęte w cudzysłowy. Przykłady: -Port 5000 -RequestTimeout 5000 i -WEBSITE_TIME_ZONE "Eastern Standard Time". Aby podać co najmniej dwie wartości klucza, wartości klucza muszą być oddzielone spacją. Przykład: -key1 "Value1" -Key2 "Value2".


ConfigurationSettings - Ustawienia konfiguracji
string. Fakultatywny. Użyj polecenia , gdy ConnectionType = AzureRM.

Edytuje ustawienia konfiguracji aplikacji internetowej przy użyciu składni -key value. Wartości zawierające spacje muszą być ujęte w cudzysłowy. Przykład: -phpVersion 5.6 -linuxFxVersion node|6.11.


enableCustomDeployment - Wybierz metodę wdrażania
Alias wejściowy: UseWebDeploy. boolean. Fakultatywny. Użyj polecenia , gdy ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Wartość domyślna: false.

W przypadku niezaznaczonego lub fałszywego zadanie automatycznie wykrywa najlepszą metodę wdrażania na podstawie typu aplikacji, formatu pakietu i innych parametrów. Zaznacz tę opcję w asystencie zadań, aby wyświetlić obsługiwane metody wdrażania, a następnie wybierz jedną z nich do wdrożenia aplikacji.


enableCustomDeployment - Wybierz metodę wdrażania
Alias wejściowy: UseWebDeploy. boolean. Fakultatywny. Użyj polecenia , gdy ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Wartość domyślna: false.

W przypadku niezaznaczonego lub fałszywego zadanie automatycznie wykrywa najlepszą metodę wdrażania na podstawie typu aplikacji, formatu pakietu i innych parametrów. Zaznacz tę opcję w asystencie zadań, aby wyświetlić obsługiwane metody wdrażania, a następnie wybierz jedną z nich do wdrożenia aplikacji.


metody wdrażania
string. Wymagane, gdy UseWebDeploy == true && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Dozwolone wartości: webDeploy (Web Deploy), zipDeploy (Zip Deploy), runFromZip (Uruchom z pakietu). Wartość domyślna: webDeploy.

Określa metodę wdrażania aplikacji.


metody wdrażania
string. Wymagane, gdy UseWebDeploy == true && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Dozwolone wartości: webDeploy (Web Deploy), zipDeploy (Zip Deploy), runFromZip (Uruchom z pakietu). Wartość domyślna: webDeploy.

Określa metodę wdrażania aplikacji.


TakeAppOfflineFlag - przełącz aplikację w tryb offline
boolean. Fakultatywny. Użyj polecenia , gdy UseWebDeploy == true && DeploymentType != runFromZip && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Wartość domyślna: true.

Określ tę opcję, aby przełączyć usługę Azure App Service w tryb offline, umieszczając plik app_offline.htm w katalogu głównym przed rozpoczęciem operacji synchronizacji. Plik zostanie usunięty po pomyślnym zakończeniu synchronizacji.


TakeAppOfflineFlag - przełącz aplikację w tryb offline
boolean. Fakultatywny. Użyj polecenia , gdy UseWebDeploy == true && DeploymentType != runFromZip && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Wartość domyślna: true.

Określ tę opcję, aby przełączyć usługę Azure App Service w tryb offline, umieszczając plik app_offline.htm w katalogu głównym przed rozpoczęciem operacji synchronizacji. Plik zostanie usunięty po pomyślnym zakończeniu synchronizacji.


pliku SetParameters
string. Fakultatywny. Użyj polecenia , gdy UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar.

Lokalizacja pliku SetParameters.xml do użycia.


pliku SetParameters
string. Fakultatywny. Użyj polecenia , gdy UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar.

Lokalizacja pliku SetParameters.xml do użycia.


RemoveAdditionalFilesFlag - Usuwanie dodatkowych plików w docelowej
boolean. Fakultatywny. Użyj polecenia , gdy UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Wartość domyślna: false.

Określ wartość "true", aby usunąć pliki w usłudze Azure App Service, które nie mają pasujących plików w pakiecie lub folderze usługi App Service. Spowoduje to również usunięcie wszystkich plików związanych z dowolnym rozszerzeniem zainstalowanym w tej usłudze Azure App Service. Aby temu zapobiec, zaznacz pole wyboru Exclude files from App_Data folder.


RemoveAdditionalFilesFlag - Usuwanie dodatkowych plików w docelowej
boolean. Fakultatywny. Użyj polecenia , gdy UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Wartość domyślna: false.

Określ wartość "true", aby usunąć pliki w usłudze Azure App Service, które nie mają pasujących plików w pakiecie lub folderze usługi App Service. Spowoduje to również usunięcie wszystkich plików związanych z dowolnym rozszerzeniem zainstalowanym w tej usłudze Azure App Service. Aby temu zapobiec, zaznacz pole wyboru Exclude files from App_Data folder.


ExcludeFilesFromAppDataFlag - Wykluczanie plików z folderu App_Data
boolean. Fakultatywny. Użyj polecenia , gdy UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Wartość domyślna: true.

Określ opcję, aby zapobiec wdrażaniu plików w folderze App_Data w usłudze Azure App Service i usuwaniu ich z usługi Azure App Service.


ExcludeFilesFromAppDataFlag - Wykluczanie plików z folderu App_Data
boolean. Fakultatywny. Użyj polecenia , gdy UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Wartość domyślna: true.

Określ opcję, aby zapobiec wdrażaniu plików w folderze App_Data w usłudze Azure App Service i usuwaniu ich z usługi Azure App Service.


AdditionalArguments - dodatkowych argumentów
string. Fakultatywny. Użyj polecenia , gdy UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Wartość domyślna: -retryAttempts:6 -retryInterval:10000.

Dodatkowe argumenty narzędzia Web Deploy zgodnie ze składnią -key:value. Zostaną one zastosowane podczas wdrażania usługi Azure App Service. Przykłady: -disableLink:AppPoolExtension -disableLink:ContentExtension. Dowiedz się więcej o ustawieniach operacji Web Deploy.


AdditionalArguments - dodatkowych argumentów
string. Fakultatywny. Użyj polecenia , gdy UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Wartość domyślna: -retryAttempts:6 -retryInterval:10000.

Dodatkowe argumenty narzędzia Web Deploy zgodnie ze składnią -key:value. Zostaną one zastosowane podczas wdrażania usługi Azure App Service. Przykłady: -disableLink:AppPoolExtension -disableLink:ContentExtension. Dowiedz się więcej o ustawieniach operacji Web Deploy.


RenameFilesFlag - zmień nazwę zablokowanych plików
boolean. Fakultatywny. Użyj polecenia , gdy UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Wartość domyślna: true.

Określ wartość domyślną, aby włączyć flagę msdeploy MSDEPLOY_RENAME_LOCKED_FILES=1 w ustawieniach aplikacji usługi Azure App Service. W przypadku ustawienia opcja umożliwia msdeploy zmianę nazw plików, które są zablokowane podczas wdrażania aplikacji.


RenameFilesFlag - zmień nazwę zablokowanych plików
boolean. Fakultatywny. Użyj polecenia , gdy UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Wartość domyślna: true.

Określ wartość domyślną, aby włączyć flagę msdeploy MSDEPLOY_RENAME_LOCKED_FILES=1 w ustawieniach aplikacji usługi Azure App Service. W przypadku ustawienia opcja umożliwia msdeploy zmianę nazw plików, które są zablokowane podczas wdrażania aplikacji.


enableXmlTransform - przekształcenia XML
Alias wejściowy: XmlTransformation. boolean. Fakultatywny. Użyj polecenia , gdy WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war. Wartość domyślna: false.

Przekształcenia konfiguracji zostaną uruchomione dla *.Release.config i *.<EnvironmentName>.config w *.config file. Przekształcenia konfiguracji są uruchamiane przed podstawieniem zmiennych. przekształcenia XML są obsługiwane tylko dla platformy Windows.


enableXmlTransform - przekształcenia XML
Alias wejściowy: XmlTransformation. boolean. Fakultatywny. Użyj polecenia , gdy WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war. Wartość domyślna: false.

Przekształcenia konfiguracji zostaną uruchomione dla *.Release.config i *.<EnvironmentName>.config w *.config file. Przekształcenia konfiguracji są uruchamiane przed podstawieniem zmiennych. przekształcenia XML są obsługiwane tylko dla platformy Windows.


enableXmlVariableSubstitution - podstawienia zmiennej XML
Alias wejściowy: XmlVariableSubstitution. boolean. Fakultatywny. Użyj polecenia , gdy WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war. Wartość domyślna: false.

Zmienne zdefiniowane w potoku kompilacji lub wydania będą dopasowywane do wpisów klucza lub nazwy w configSections, appSettings, applicationSettingsi connectionStrings sekcjach dowolnego pliku konfiguracji i pliku parameters.xml. Podstawianie zmiennych jest uruchamiane po przekształceniach konfiguracji.

Jeśli te same zmienne są zdefiniowane w potoku wydania i na etapie, zmienne etapu zastąpią zmienne potoku wydania. Dowiedz się więcej o [podstawieniu zmiennych XML]](/azure/devops/pipelines/tasks/transforms-variable-substitution#xml-variable-substitution).


enableXmlVariableSubstitution - podstawienia zmiennej XML
Alias wejściowy: XmlVariableSubstitution. boolean. Fakultatywny. Użyj polecenia , gdy WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war. Wartość domyślna: false.

Zmienne zdefiniowane w potoku kompilacji lub wydania będą dopasowywane do wpisów klucza lub nazwy w configSections, appSettings, applicationSettingsi connectionStrings sekcjach dowolnego pliku konfiguracji i pliku parameters.xml. Podstawianie zmiennych jest uruchamiane po przekształceniach konfiguracji.

Jeśli te same zmienne są zdefiniowane w potoku wydania i na etapie, zmienne etapu zastąpią zmienne potoku wydania. Dowiedz się więcej o [podstawieniu zmiennych XML]](/azure/devops/pipelines/tasks/transforms-variable-substitution#xml-variable-substitution).


JSONFiles - podstawienia zmiennych JSON
string. Fakultatywny. Użyj polecenia , gdy WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war.

Udostępnia listę plików JSON rozdzielanych nową linią, aby zastąpić wartości zmiennych. Nazwy plików muszą być względne względem folderu głównego. Aby zastąpić zmienne JSON, które są zagnieżdżone lub hierarchiczne, określ je przy użyciu wyrażeń JSONPath. Aby na przykład zastąpić wartość ConnectionString w poniższym przykładzie, zdefiniuj zmienną o nazwie Data.DefaultConnection.ConnectionString w potoku kompilacji lub wydania (lub potoki wydania).

{
  "Data": {
    "DefaultConnection": {
      "ConnectionString": "Server=(localdb)\SQLEXPRESS;Database=MyDB;Trusted_Connection=True"
    }
  }
}

Podstawianie zmiennej jest uruchamiane po przekształceniach konfiguracji. Uwaga: zmienne potoku kompilacji i wydania są wykluczone z podstawienia. Dowiedz się więcej na temat podstawiania zmiennych JSON .


JSONFiles - podstawienia zmiennych JSON
string. Fakultatywny. Użyj polecenia , gdy WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war.

Udostępnia listę plików JSON rozdzielanych nową linią, aby zastąpić wartości zmiennych. Nazwy plików muszą być względne względem folderu głównego. Aby zastąpić zmienne JSON, które są zagnieżdżone lub hierarchiczne, określ je przy użyciu wyrażeń JSONPath. Aby na przykład zastąpić wartość ConnectionString w poniższym przykładzie, zdefiniuj zmienną o nazwie Data.DefaultConnection.ConnectionString w potoku kompilacji lub wydania (lub potoki wydania).

{
  "Data": {
    "DefaultConnection": {
      "ConnectionString": "Server=(localdb)\SQLEXPRESS;Database=MyDB;Trusted_Connection=True"
    }
  }
}

Podstawianie zmiennej jest uruchamiane po przekształceniach konfiguracji. Uwaga: zmienne potoku kompilacji i wydania są wykluczone z podstawienia. Dowiedz się więcej na temat podstawiania zmiennych JSON .


Opcje sterowania zadaniami

Wszystkie zadania mają opcje sterowania oprócz danych wejściowych zadań podrzędnych. Aby uzyskać więcej informacji, zobacz opcje kontroli i typowe właściwości zadań.

Zmienne wyjściowe

To zadanie definiuje następujące zmienne wyjściowe , które można używać w krokach podrzędnych, zadaniach i etapach.

AppServiceApplicationUrl
adres URL aplikacji wybranej usługi App Service.

Uwagi

To zadanie służy do wdrażania w wielu usługach App Services na platformie Azure. Zadanie działa na agentach międzyplatformowych z systemem Windows, Linux lub Mac i używa kilku różnych podstawowych technologii wdrażania.

Zadanie działa dla ASP.NET, ASP.NET Core, PHP, Java, Python, Goi Node.js opartych na aplikacjach internetowych.

Zadanie może służyć do wdrażania w wielu usługach Azure App Services, takich jak:

Wymagania wstępne dotyczące zadania

Aby zadanie działało prawidłowo, należy skonfigurować następujące wymagania wstępne na maszynach docelowych.

  • wystąpienie usługi App Service. Zadanie służy do wdrażania projektu aplikacji internetowej lub projektu funkcji platformy Azure w istniejącym wystąpieniu usługi Azure App Service, które musi istnieć przed uruchomieniem zadania. Wystąpienie usługi App Service można utworzyć na podstawie witryny Azure Portal i skonfigurowanych. Alternatywnie można użyć zadania programu Azure PowerShell do uruchamiania skryptów programu Azure PowerShell aprowizacji i konfigurowania aplikacji internetowej.

  • subskrypcji platformy Azure. Aby można było wdrożyć na platformie Azure, subskrypcja platformy Azure musi być połączona z potokiem. Zadanie nie działa z klasycznym połączeniem usługi platformy Azure i nie wyświetli listy tych połączeń w ustawieniach zadania.

Uwagi dotyczące użycia

  • Zadanie współpracuje tylko z interfejsami API usługi Azure Resource Manager .
  • Aby zignorować błędy protokołu SSL, zdefiniuj zmienną o nazwie VSTS_ARM_REST_IGNORE_SSL_ERRORS z wartością true w potoku. Jeśli wdrażasz w miejscu skonfigurowanym do zamiany automatycznej, zamiana zakończy się niepowodzeniem, chyba że ustawiono SCM_SKIP_SSL_VALIDATION lub SCM_SKIP_ASE_SSL_VALIDATION na 1 w ustawieniach konfiguracji usług App Services.
  • W przypadku aplikacji platformy .NET przeznaczonych dla aplikacji internetowej w systemie Windows należy unikać niepowodzenia wdrażania z powodu błędu ERROR_FILE_IN_USE, upewniając się, że zmień nazwy zablokowanych plików i ustawienia Przełącz aplikację w tryb offline są włączone. W przypadku wdrożenia bez przestojów użyj opcji zamiany miejsca.
  • Podczas wdrażania w usłudze App Service, która ma skonfigurowaną usługę Application Insights i włączono Usuwanie dodatkowych plików w lokalizacji docelowej, upewnij się, że włączono również Wykluczanie plików z folderu App_Data w celu zachowania rozszerzenia usługi Application Insights w bezpiecznym stanie. Jest to wymagane, ponieważ ciągłe zadanie sieci Web usługi Application Insights jest instalowane w folderze App_Data.

Metody wdrażania

W tym zadaniu jest dostępnych kilka metod wdrażania. Web Deploy (msdeploy.exe) jest wartością domyślną. Aby zmienić opcję wdrożenia, rozwiń dodatkowe opcje wdrażania i włącz Wybierz metodę wdrażania wybrać spośród dodatkowych opcji wdrażania opartych na pakietach.

Na podstawie typu usługi Azure App Service i agenta zadanie wybiera odpowiednią technologię wdrażania. Różne technologie wdrażania używane przez zadanie to:

Domyślnie zadanie próbuje wybrać odpowiednią technologię wdrażania na podstawie typu pakietu wejściowego, typu usługi App Service i systemu operacyjnego agenta.

Automatycznie wykrywaj logikę

W przypadku agentów opartych na systemie Windows.

Typ usługi App Service Typ pakietu Metoda wdrażania
Aplikacja internetowa w systemie Linux lub aplikacja funkcji w systemie Linux Folder/Zip/jar
War
Zip Deploy
War Deploy
WebApp for Containers (Linux) lub Aplikacja funkcji dla kontenerów (Linux) Aktualizowanie ustawień aplikacji NIE
Aplikacja internetowa w systemie Windows, aplikacja funkcji w systemie Windows, aplikacja interfejsu API lub aplikacja mobilna War
Jar
typ pakietu MsBuild lub wdróż go w aplikacji wirtualnej


Folder/Zip
Program War Deploy
Zip Deploy
Web Deploy

if postDeploymentScript == true, Zip Deploy
else, Run From Package

W przypadku agentów innych niż Windows (dla dowolnego typu usługi App Service) zadanie opiera się na interfejsów API REST Kudu w celu wdrożenia aplikacji.

Web Deploy

web deploy (msdeploy.exe) można użyć do wdrożenia aplikacji internetowej w systemie Windows lub aplikacji funkcji w usłudze Azure App Service przy użyciu agenta systemu Windows. Usługa Web Deploy jest bogata w funkcje i oferuje opcje, takie jak:

  • Zmień nazwę zablokowanych plików: Zmień nazwę dowolnego pliku, który jest nadal używany przez serwer internetowy, włączając flagę msdeploy MSDEPLOY\_RENAME\_LOCKED\_FILES=1 w ustawieniach usługi Azure App Service. Ta opcja, jeśli jest ustawiona, umożliwia msdeploy zmianę nazw plików, które są zablokowane podczas wdrażania aplikacji.

  • Usuń dodatkowe pliki w miejscu docelowym: Usuwa pliki w usłudze Azure App Service, które nie mają pasujących plików w wdrażanym pakiecie artefaktu usługi App Service lub folderze.

  • Wykluczanie plików z folderu App_Data: Zapobiegaj plikom w folderze App_Data (w wdrażanym pakiecie/folderze artefaktu) wdrażanym w usłudze Azure App Service

  • dodatkowych argumentów web deploy: argumenty, które zostaną zastosowane podczas wdrażania usługi Azure App Service. Przykład: -disableLink:AppPoolExtension -disableLink:ContentExtension. Aby uzyskać więcej przykładów ustawień operacji web deploy, zobacz Web Deploy Operation Settings.

Zainstaluj narzędzie Web Deploy na agencie z Web Deploy 3.6. Narzędzie Web Deploy 3.5 musi być zainstalowane bez obsługi pakietu SQL. Podczas instalowania narzędzia Web Deploy nie trzeba wybierać żadnych ustawień niestandardowych. Narzędzie Web Deploy jest instalowane w C:/Program Files (x86)/IIS/Microsoft Web Deploy V3.

Interfejsy API REST kudu

interfejsy API REST kudu działają zarówno na agentach automatyzacji systemu Windows, jak i Linux, gdy elementem docelowym jest aplikacja internetowa w systemie Windows, aplikacja internetowa w systemie Linux (wbudowane źródło) lub aplikacja funkcji. Zadanie używa narzędzia Kudu do kopiowania plików do usługi Azure App Service.

Container Registry

Działa zarówno na agentach automatyzacji systemu Windows, jak i Linux, gdy elementem docelowym jest aplikacja internetowa dla kontenerów. Zadanie aktualizuje aplikację, ustawiając odpowiedni rejestr kontenerów, repozytorium, nazwę obrazu i informacje o tagu. Możesz również użyć zadania , aby przekazać polecenie uruchamiania obrazu kontenera.

Wdrażanie zip

Oczekuje pakietu .zip wdrożenia i wdraża zawartość pliku w folderze wwwroot usługi App Service lub aplikacji funkcji na platformie Azure. Ta opcja zastępuje całą istniejącą zawartość w folderze wwwroot. Aby uzyskać więcej informacji, zobacz Wdrażanie zip dla usługi Azure Functions.

Uruchamianie z pakietu

Oczekuje tego samego pakietu wdrożeniowego co zip deploy. Jednak zamiast wdrażać pliki w folderze wwwroot, cały pakiet jest instalowany przez środowisko uruchomieniowe usługi Functions i pliki w folderze wwwroot stają się tylko do odczytu. Aby uzyskać więcej informacji, zobacz Uruchamianie usługi Azure Functions z pliku pakietu.

Wdrażanie wojny

Oczekuje pakietu wdrożeniowego war i wdraża zawartość pliku w folderze wwwroot lub aplikacji internetowych w usłudze App Service na platformie Azure.

Rozwiązywanie problemów

Nie mogę wdrożyć w sieci Web w usłudze Azure App Service przy użyciu uwierzytelniania identyfikatora Entra firmy Microsoft z poziomu agenta systemu Windows

Zadanie wdrażania usługi Azure App Service obsługuje nawiązywanie połączenia z platformą Microsoft Azure przy użyciu połączenia usługi ARM przy użyciu identyfikatora Firmy Microsoft Entra, chyba że istnieją następujące trzy warunki:

  • Używasz formatu pakietu Web Deploy w agencie systemu Windows
  • Agent jest uruchomiony ze starszą wersją msdeploy.exe (na przykład w przypadku korzystania z obrazu windows-2019 hostowanego agenta)
  • Uwierzytelnianie podstawowe jest wyłączone dla usługi Azure App Service

Jeśli te trzy warunki są obecne, zostanie wyświetlony błąd, taki jak 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.

Aby rozwiązać ten problem, możesz wybrać jedną z następujących opcji w kolejności preferencji.

  1. Zaktualizuj obraz agenta. Jeśli używasz hostowanych agentów, przejdź z windows-2019 do windows-2022 (lub windows-latest). Jeśli używasz własnych agentów, zainstaluj program Visual Studio 2022 na agencie, aby uzyskać nowszą wersję msdeploy.exe.
  2. Jeśli zależysz od starszego obrazu agenta i nie możesz zaktualizować agenta dla potoku, rozważ podzielenie zadania, tak aby zadanie wdrażania usługi Azure App Service było uruchamiane na windows-2022 (lub najnowszej wersji systemu Windows).
  3. Jeśli żadna z tych opcji nie jest możliwa, możesz włączyć uwierzytelnianie podstawowe dla usługi Azure App Service.

Błąd: Nie można pobrać tokenu dostępu dla platformy Azure. Sprawdź, czy użyta jednostka usługi jest prawidłowa i nie wygasła.

Zadanie używa jednostki usługi w połączeniu z usługą do uwierzytelniania za pomocą platformy Azure. Jeśli jednostka usługi wygasła lub nie ma uprawnień do usługi App Service, zadanie kończy się niepowodzeniem z powodu tego błędu. Sprawdź poprawność używanej jednostki usługi i czy jest ona obecna w rejestracji aplikacji. Aby uzyskać więcej informacji, zobacz Use role-based access control to manage access to your Azure subscription resources. Ten wpis w blogu zawiera również więcej informacji na temat korzystania z uwierzytelniania jednostki usługi.

Błąd SSL

Jeśli chcesz użyć certyfikatu w usłudze App Service, certyfikat musi być podpisany przez zaufany urząd certyfikacji. Jeśli aplikacja internetowa daje błędy weryfikacji certyfikatu, prawdopodobnie używasz certyfikatu z podpisem własnym. Ustaw zmienną o nazwie VSTS_ARM_REST_IGNORE_SSL_ERRORS na wartość true w potoku kompilacji lub wydania w celu rozwiązania błędu.

Wydanie zawiesza się przez długi czas, a następnie kończy się niepowodzeniem

Ten problem może być wynikiem niewystarczającej pojemności w planie usługi App Service. Aby rozwiązać ten problem, możesz skalować wystąpienie usługi App Service w górę w celu zwiększenia dostępnego procesora CPU, pamięci RAM i miejsca na dysku lub spróbować użyć innego planu usługi App Service.

5xx kody błędów

Jeśli widzisz błąd 5xx, sprawdzić stan usługi platformy Azure.

Funkcja platformy Azure nagle przestała działać

Usługa Azure Functions może nagle przestać działać, jeśli od ostatniego wdrożenia minęło więcej niż jeden rok. W przypadku wdrożenia za pomocą polecenia "RunFromPackage" w obszarze "deploymentMethod" zostanie wygenerowana sygnatura dostępu współdzielonego z datą wygaśnięcia 1 roku i ustawiona jako wartość "WEBSITE_RUN_FROM_PACKAGE" w konfiguracji aplikacji. Usługa Azure Functions używa tej sygnatury dostępu współdzielonego do odwołowania się do pliku pakietu na potrzeby wykonywania funkcji, więc jeśli sygnatura dostępu współdzielonego wygasła, funkcja nie zostanie wykonana. Aby rozwiązać ten problem, wdróż ponownie, aby wygenerować sygnaturę dostępu współdzielonego z datą wygaśnięcia jednego roku.

Błąd: Nie znaleziono pakietu z określonym wzorcem

Sprawdź, czy pakiet wymieniony w zadaniu został opublikowany jako artefakt w kompilacji lub poprzednim etapie i pobrany w bieżącym zadaniu.

Błąd: Opcja publikowania przy użyciu narzędzia zip deploy nie jest obsługiwana dla typu pakietu msBuild

Pakiety sieci Web utworzone za pośrednictwem zadania MSBuild (z domyślnymi argumentami) mają zagnieżdżonych struktury folderów, które można wdrożyć poprawnie tylko za pomocą narzędzia Web Deploy. Nie można użyć opcji wdrażania publikowania w pliku zip do wdrożenia tych pakietów. Aby przekonwertować strukturę pakowania, wykonaj następujące kroki:

  1. W zadaniu Kompilowanie rozwiązania zmień argumenty MSBuild na /p:DeployOnBuild=true /p:DeployDefaultTarget=WebPublish /p:WebPublishMethod=FileSystem /p:DeleteExistingFiles=True /p:publishUrl="$(System.DefaultWorkingDirectory)\\WebAppContent":

    Zrzut ekranu przedstawiający wartości rozwiązania kompilacji.

  2. Dodaj zadanie Archiwum i zmień wartości w następujący sposób:

    1. Zmień folder główny lub plik na archiwum na $(System.DefaultWorkingDirectory)\\WebAppContent.

    2. Wyczyść prepend nazwy folderu głównego do ścieżek archiwum pole wyboru:

      Zrzut ekranu przedstawiający wartości Archiwum.

Wdrażanie aplikacji internetowej w systemie Windows zakończyło się pomyślnie, ale aplikacja nie działa

Może to być spowodowane tym, że web.config nie jest obecny w aplikacji. Plik web.config można dodać do źródła lub wygenerować automatycznie przy użyciu opcji przekształcania plików i podstawiania zmiennych zadania.

  • Kliknij zadanie i przejdź do pozycji Generuj parametry web.config dla języka Python, Node.js, Go i Java.

    zrzut ekranu przedstawiający okno dialogowe Generowanie parametrów web.config.

  • Kliknij web.config przycisk Więcej, aby edytować parametry języka Python, Node.js, Go i Java.

    zrzut ekranu przedstawiający listę rozwijaną Platformy aplikacji.

  • Wybierz typ aplikacji z listy rozwijanej.

  • Kliknij przycisk OK. Spowoduje to wypełnienie parametrów web.config wymaganych do wygenerowania web.config.

Nuta

Ta sekcja jest przestarzała i została zastąpiona zadaniem Przekształcanie plików.

ERROR_FILE_IN_USE

Podczas wdrażania aplikacji .NET w aplikacji internetowej w systemie Windows wdrożenie może zakończyć się niepowodzeniem z kodem błędu ERROR_FILE_IN_USE. Aby rozwiązać ten problem, upewnij się, że zmień nazwę zablokowanych plików i opcje Przełącz aplikację w tryb offline są włączone w zadaniu. W przypadku wdrożeń bez przestojów użyj zamiany miejsca.

Możesz również użyć metody Uruchom z wdrożenia pakietu, aby uniknąć blokowania zasobów.

Błąd narzędzia Web Deploy

Jeśli używasz narzędzia Web Deploy do wdrażania aplikacji, w niektórych scenariuszach błędów narzędzie Web Deploy wyświetli kod błędu w dzienniku. Aby rozwiązać problem z błędem wdrażania w sieci Web, zobacz kody błędów narzędzia Web Deploy.

Wdrażanie aplikacji internetowej w środowisku App Service Environment (ASE) nie działa

  • Upewnij się, że agent kompilacji usługi Azure DevOps znajduje się w tej samej sieci wirtualnej (podsieć może być inna), co wewnętrzny moduł równoważenia obciążenia (ILB) środowiska ASE. Umożliwi to agentowi ściąganie kodu z usługi Azure DevOps i wdrażanie w środowisku ASE.
  • Jeśli używasz usługi Azure DevOps, agent nie musi być dostępny z Internetu, ale wymaga tylko dostępu wychodzącego w celu nawiązania połączenia z usługą Azure DevOps Service.
  • Jeśli używasz serwera TFS/Azure DevOps Server wdrożonego w sieci wirtualnej, agent może być całkowicie odizolowany.
  • Agent kompilacji musi być skonfigurowany przy użyciu konfiguracji DNS aplikacji internetowej, do których musi zostać wdrożona. Ponieważ zasoby prywatne w sieci wirtualnej nie mają wpisów w usłudze Azure DNS, należy dodać je do pliku hostów na maszynie agenta.
  • Jeśli dla konfiguracji środowiska ASE jest używany certyfikat z podpisem własnym, należy ustawić opcję -allowUntrusted w zadaniu wdrażania dla narzędzia MSDeploy. Zaleca się również ustawienie zmiennej VSTS_ARM_REST_IGNORE_SSL_ERRORS na wartość true. Jeśli certyfikat z urzędu certyfikacji jest używany do konfiguracji środowiska ASE, nie powinno to być konieczne. Jeśli wdrażasz w miejscu skonfigurowanym do zamiany automatycznej, zamiana zakończy się niepowodzeniem, chyba że ustawiono SCM_SKIP_SSL_VALIDATION lub SCM_SKIP_ASE_SSL_VALIDATION na 1 w ustawieniach konfiguracji usług App Services.

Często zadawane pytania

Jaka jest różnica między zadaniami AzureWebApp i AzureRmWebAppDeployment?

Zadanie Azure Web App (AzureWebApp) to najprostszy sposób wdrażania w aplikacji internetowej platformy Azure. Domyślnie wdrożenie odbywa się z aplikacją główną w aplikacji internetowej platformy Azure.

Zadanie Wdrażanie usługi Azure App Service (AzureRmWebAppDeployment) może obsługiwać więcej scenariuszy niestandardowych, takich jak:

Nuta

Przekształcenia plików i podstawienie zmiennych są również obsługiwane przez oddzielne zadanie Przekształcanie plików do użycia w usłudze Azure Pipelines. Za pomocą zadania Przekształcanie plików można zastosować przekształcenia plików i podstawienia zmiennych w dowolnych plikach konfiguracji i parametrów.

Jak skonfigurować połączenie z usługą?

To zadanie wymaga połączenia usługi Azure Resource Manager.

Jak skonfigurować wdrażanie zadań internetowych za pomocą usługi Application Insights?

Jeśli wdrażasz w usłudze App Service, jeśli skonfigurowano Application Insights i włączono Remove additional files at destination, należy również włączyć Exclude files from the App_Data folder. Włączenie tej opcji powoduje zachowanie rozszerzenia usługi Application Insights w bezpiecznym stanie. Ten krok jest wymagany, ponieważ ciągłe zadanie WebJob usługi Application Insights jest instalowane w folderze App_Data.

Jak skonfigurować agenta, jeśli znajduje się on za serwerem proxy podczas wdrażania w usłudze App Service?

Jeśli własny agent wymaga internetowego serwera proxy, możesz poinformować agenta o serwerze proxy podczas konfiguracji. Dzięki temu agent może nawiązać połączenie z usługą Azure Pipelines lub usługą Azure DevOps Server za pośrednictwem serwera proxy. Dowiedz się więcej na temat uruchamiania własnego agenta za internetowym serwerem proxy.

Przykłady

Wdrażanie w określonym typie aplikacji

Aby wdrożyć w określonym typie aplikacji, ustaw appType na dowolną z następujących akceptowanych wartości: webApp (aplikacja internetowa w systemie Windows), webAppLinux (aplikacja internetowa w systemie Linux), webAppContainer (Web App for Containers — Linux), functionApp (aplikacja funkcji w systemie Windows), functionAppLinux (aplikacja funkcji w systemie Linux), functionAppContainer (Aplikacja funkcji dla kontenerów — Linux), apiApp (aplikacja interfejsu API), mobileApp (aplikacja mobilna). Jeśli nie wspomniano, webApp jest traktowana jako wartość domyślna.

Aby włączyć wszystkie zaawansowane opcje wdrażania, dodaj parametr enableCustomDeployment: true i uwzględnij następujące parametry zgodnie z potrzebami.

# deploymentMethod: 'runFromPackage' # supports zipDeploy as well
    # appOffline: boolean    # Not applicable for 'runFromPackage'
    # setParametersFile: string
    # removeAdditionalFilesFlag: boolean
    # additionalArguments: string

Wdrażanie w kontenerze aplikacji internetowej platformy Azure dla systemu Linux

Poniższy przykład YAML jest wdrażany w kontenerze aplikacji internetowej platformy Azure (Linux).

pool:
  vmImage: ubuntu-latest

variables:
  azureSubscriptionEndpoint: Contoso
  DockerNamespace: contoso.azurecr.io
  DockerRepository: aspnetcore
  WebAppName: containersdemoapp

steps:

- task: AzureRMWebAppDeployment@4
  displayName: Azure App Service Deploy
  inputs:
    appType: webAppContainer
    ConnectedServiceName: $(azureSubscriptionEndpoint)
    WebAppName: $(WebAppName)
    DockerNamespace: $(DockerNamespace)
    DockerRepository: $(DockerRepository)
    DockerImageTag: $(Build.BuildId)

Wdrażanie aplikacji internetowej w usłudze Windows App Service w miejscach wdrożenia

W poniższym przykładzie aplikacja internetowa jest wdrażana w usłudze Windows App Service w miejscach wdrożenia.

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'

Przykładowy skrypt po wdrożeniu

Zadanie zapewnia opcję dostosowania wdrożenia przez udostępnienie skryptu uruchamianego w usłudze Azure App Service po pomyślnym skopiowaniu artefaktów aplikacji do usługi App Service. Możesz podać wbudowany skrypt wdrożenia lub ścieżkę i nazwę pliku skryptu w folderze artefaktu.

Jest to bardzo przydatne, gdy chcesz przywrócić zależności aplikacji bezpośrednio w usłudze App Service. Przywracanie pakietów dla aplikacji Node, PHP i Python pomaga uniknąć przekroczenia limitu czasu, gdy zależność aplikacji powoduje skopiowanie dużego artefaktu z agenta do usługi Azure App Service.

Przykładem skryptu wdrożenia jest:

@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
)

Wymagania

Wymaganie Opis
Typy potoków YAML, klasyczna kompilacja, wersja klasyczna
Działa na Agent, DeploymentGroup
Wymagania Żaden
możliwości To zadanie nie spełnia żadnych wymagań dotyczących kolejnych zadań w zadaniu.
ograniczenia poleceń Jakikolwiek
zmienne ustawiane Jakikolwiek
Wersja agenta 2.104.1 lub nowsza
Kategoria zadań Wdrożyć

Zobacz też