AzureRmWebAppDeployment@4 - v4 タスクのデプロイAzure App Service

このタスクを使用して、Docker、Java、.NET、.NET Core、Node.js、PHP、Python、または Ruby を使用して Web、モバイル、または API アプリをAzure App Serviceするためにデプロイします。

注意

AzureFunctionApp@1を使用して、Azure Functions アプリをデプロイします。

Windows 上の Azure アプリ Services、Linux 上の Web App を組み込みのイメージまたは Docker コンテナー、ASP.NET、.NET Core、PHP、Python、または Node.js ベースの Web アプリケーション、Windows または Linux 上の Function Apps と Docker コンテナー、モバイル アプリ、API アプリケーション、Web ジョブを Web Deploy/Kudu REST API を使用して更新します。

構文

# Azure App Service deploy v4
# Deploy to Azure App Service a web, mobile, or API app using Docker, Java, .NET, .NET Core, Node.js, PHP, Python, or Ruby.
- task: AzureRmWebAppDeployment@4
  inputs:
    ConnectionType: 'AzureRM' # 'AzureRM' | 'PublishProfile'. Required. Connection type. Default: AzureRM.
    azureSubscription: # string. Alias: ConnectedServiceName. Required when ConnectionType = AzureRM. Azure subscription. 
    #PublishProfilePath: '$(System.DefaultWorkingDirectory)/**/*.pubxml' # string. Required when ConnectionType = PublishProfile. Publish profile path. Default: $(System.DefaultWorkingDirectory)/**/*.pubxml.
    #PublishProfilePassword: # string. Required when ConnectionType = PublishProfile. Publish profile password. 
    appType: 'webApp' # 'webApp' | 'webAppLinux' | 'webAppContainer' | 'webAppHyperVContainer' | 'functionApp' | 'functionAppLinux' | 'functionAppContainer' | 'apiApp' | 'mobileApp'. Alias: WebAppKind. Required when ConnectionType = AzureRM. App Service type. Default: webApp.
    WebAppName: # string. Required when ConnectionType = AzureRM. App Service name. 
    #deployToSlotOrASE: false # boolean. Alias: DeployToSlotOrASEFlag. Optional. Use when ConnectionType = AzureRM && WebAppKind != "". Deploy to Slot or App Service Environment. Default: false.
    #ResourceGroupName: # string. Required when DeployToSlotOrASEFlag = true. Resource group. 
    #SlotName: 'production' # string. Required when DeployToSlotOrASEFlag = true. Slot. Default: production.
    #DockerNamespace: # string. Required when WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppKind = webAppHyperVContainer. Registry or Namespace. 
    #DockerRepository: # string. Required when WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppKind = webAppHyperVContainer. Image. 
    #DockerImageTag: # string. Optional. Use when WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppKind = webAppHyperVContainer. Tag. 
    #VirtualApplication: # string. Optional. Use when WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && WebAppKind != functionApp && webAppKind != functionAppLinux && WebAppKind != "". Virtual application. 
    #packageForLinux: '$(System.DefaultWorkingDirectory)/**/*.zip' # string. Alias: Package. Required when ConnectionType = PublishProfile || WebAppKind = webApp || WebAppKind = apiApp || WebAppKind = functionApp || WebAppKind = mobileApp || WebAppKind = webAppLinux || webAppKind = functionAppLinux. Package or folder. Default: $(System.DefaultWorkingDirectory)/**/*.zip.
    #RuntimeStack: # string. Optional. Use when WebAppKind = webAppLinux. Runtime Stack. 
    #RuntimeStackFunction: # 'DOTNET|2.2' | 'DOTNET|3.1' | 'JAVA|8' | 'JAVA|11' | 'NODE|8' | 'NODE|10' | 'NODE|12' | 'NODE|14' | 'PYTHON|3.6' | 'PYTHON|3.7' | 'PYTHON|3.8'. Optional. Use when WebAppKind = functionAppLinux. Runtime Stack. 
    #StartupCommand: # string. Optional. Use when WebAppKind = webAppLinux || WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppKind = functionAppLinux || WebAppKind = webAppHyperVContainer. Startup command. 
  # Post Deployment Action
    #ScriptType: # 'Inline Script' | 'File Path'. Optional. Use when ConnectionType = AzureRM && WebAppKind != "" && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer. Deployment script type. 
    #InlineScript: ':: You can provide your deployment commands here. One command per line.' # string. Required when ScriptType == Inline Script && ConnectionType = AzureRM && WebAppKind != "" && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer. Inline Script. Default: :: You can provide your deployment commands here. One command per line..
    #ScriptPath: # string. Required when ScriptType == File Path && ConnectionType = AzureRM && WebAppKind != "" && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer. Deployment script path. 
  # File Transforms & Variable Substitution Options
    #WebConfigParameters: # string. Optional. Use when WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war. Generate web.config parameters for Python, Node.js, Go and Java apps. 
    #enableXmlTransform: false # boolean. Alias: XmlTransformation. Optional. Use when WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war. XML transformation. Default: false.
    #enableXmlVariableSubstitution: false # boolean. Alias: XmlVariableSubstitution. Optional. Use when WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war. XML variable substitution. Default: false.
    #JSONFiles: # string. Optional. Use when WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war. JSON variable substitution. 
  # Application and Configuration Settings
    #AppSettings: # string. Optional. Use when ConnectionType = AzureRM. App settings. 
    #ConfigurationSettings: # string. Optional. Use when ConnectionType = AzureRM. Configuration settings. 
  # Additional Deployment Options
    #enableCustomDeployment: false # boolean. Alias: UseWebDeploy. Optional. Use when ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Select deployment method. Default: false.
    #DeploymentType: 'webDeploy' # 'webDeploy' | 'zipDeploy' | 'runFromZip'. Required when UseWebDeploy == true && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Deployment method. Default: webDeploy.
    #TakeAppOfflineFlag: true # boolean. Optional. Use when UseWebDeploy == true && DeploymentType != runFromZip && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Take App Offline. Default: true.
    #SetParametersFile: # string. Optional. Use when UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. SetParameters file. 
    #RemoveAdditionalFilesFlag: false # boolean. Optional. Use when UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Remove additional files at destination. Default: false.
    #ExcludeFilesFromAppDataFlag: true # boolean. Optional. Use when UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Exclude files from the App_Data folder. Default: true.
    #AdditionalArguments: '-retryAttempts:6 -retryInterval:10000' # string. Optional. Use when UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Additional arguments. Default: -retryAttempts:6 -retryInterval:10000.
    #RenameFilesFlag: true # boolean. Optional. Use when UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Rename locked files. Default: true.
# Azure App Service deploy v4
# Deploy to Azure App Service a web, mobile, or API app using Docker, Java, .NET, .NET Core, Node.js, PHP, Python, or Ruby.
- task: AzureRmWebAppDeployment@4
  inputs:
    ConnectionType: 'AzureRM' # 'AzureRM' | 'PublishProfile'. Required. Connection type. Default: AzureRM.
    azureSubscription: # string. Alias: ConnectedServiceName. Required when ConnectionType = AzureRM. Azure subscription. 
    #PublishProfilePath: '$(System.DefaultWorkingDirectory)/**/*.pubxml' # string. Required when ConnectionType = PublishProfile. Publish profile path. Default: $(System.DefaultWorkingDirectory)/**/*.pubxml.
    #PublishProfilePassword: # string. Required when ConnectionType = PublishProfile. Publish profile password. 
    appType: 'webApp' # 'webApp' | 'webAppLinux' | 'webAppContainer' | 'webAppHyperVContainer' | 'functionApp' | 'functionAppLinux' | 'functionAppContainer' | 'apiApp' | 'mobileApp'. Alias: WebAppKind. Required when ConnectionType = AzureRM. App Service type. Default: webApp.
    WebAppName: # string. Required when ConnectionType = AzureRM. App Service name. 
    #deployToSlotOrASE: false # boolean. Alias: DeployToSlotOrASEFlag. Optional. Use when ConnectionType = AzureRM && WebAppKind != "". Deploy to Slot or App Service Environment. Default: false.
    #ResourceGroupName: # string. Required when DeployToSlotOrASEFlag = true. Resource group. 
    #SlotName: 'production' # string. Required when DeployToSlotOrASEFlag = true. Slot. Default: production.
    #DockerNamespace: # string. Required when WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppkind = webAppHyperVContainer. Registry or Namespace. 
    #DockerRepository: # string. Required when WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppkind = webAppHyperVContainer. Image. 
    #DockerImageTag: # string. Optional. Use when WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppkind = webAppHyperVContainer. Tag. 
    #VirtualApplication: # string. Optional. Use when WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != functionApp && webAppKind != functionAppLinux && WebAppKind != "". Virtual application. 
    #packageForLinux: '$(System.DefaultWorkingDirectory)/**/*.zip' # string. Alias: Package. Required when ConnectionType = PublishProfile || WebAppKind = webApp || WebAppKind = apiApp || WebAppKind = functionApp || WebAppKind = mobileApp || WebAppKind = webAppLinux || webAppKind = functionAppLinux. Package or folder. Default: $(System.DefaultWorkingDirectory)/**/*.zip.
    #RuntimeStack: # string. Optional. Use when WebAppKind = webAppLinux. Runtime Stack. 
    #RuntimeStackFunction: # 'DOTNET|2.2' | 'DOTNET|3.1' | 'JAVA|8' | 'JAVA|11' | 'NODE|8' | 'NODE|10' | 'NODE|12' | 'NODE|14' | 'PYTHON|3.6' | 'PYTHON|3.7' | 'PYTHON|3.8'. Optional. Use when WebAppKind = functionAppLinux. Runtime Stack. 
    #StartupCommand: # string. Optional. Use when WebAppKind = webAppLinux || WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppKind = functionAppLinux || WebAppkind = webAppHyperVContainer. Startup command. 
  # Post Deployment Action
    #ScriptType: # 'Inline Script' | 'File Path'. Optional. Use when ConnectionType = AzureRM && WebAppKind != "" && WebAppKind != webAppContainer && WebAppkind != functionAppContainer. Deployment script type. 
    #InlineScript: ':: You can provide your deployment commands here. One command per line.' # string. Required when ScriptType == Inline Script && ConnectionType = AzureRM && WebAppKind != "" && WebAppKind != webAppContainer && WebAppkind != functionAppContainer. Inline Script. Default: :: You can provide your deployment commands here. One command per line..
    #ScriptPath: # string. Required when ScriptType == File Path && ConnectionType = AzureRM && WebAppKind != "" && WebAppKind != webAppContainer && WebAppkind != functionAppContainer. Deployment script path. 
  # File Transforms & Variable Substitution Options
    #WebConfigParameters: # string. Optional. Use when WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war. Generate web.config parameters for Python, Node.js, Go and Java apps. 
    #enableXmlTransform: false # boolean. Alias: XmlTransformation. Optional. Use when WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war. XML transformation. Default: false.
    #enableXmlVariableSubstitution: false # boolean. Alias: XmlVariableSubstitution. Optional. Use when WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war. XML variable substitution. Default: false.
    #JSONFiles: # string. Optional. Use when WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war. JSON variable substitution. 
  # Application and Configuration Settings
    #AppSettings: # string. Optional. Use when ConnectionType = AzureRM. App settings. 
    #ConfigurationSettings: # string. Optional. Use when ConnectionType = AzureRM. Configuration settings. 
  # Additional Deployment Options
    #enableCustomDeployment: false # boolean. Alias: UseWebDeploy. Optional. Use when ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Select deployment method. Default: false.
    #DeploymentType: 'webDeploy' # 'webDeploy' | 'zipDeploy' | 'runFromZip'. Required when UseWebDeploy == true && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Deployment method. Default: webDeploy.
    #TakeAppOfflineFlag: true # boolean. Optional. Use when UseWebDeploy == true && DeploymentType != runFromZip && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Take App Offline. Default: true.
    #SetParametersFile: # string. Optional. Use when UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. SetParameters file. 
    #RemoveAdditionalFilesFlag: false # boolean. Optional. Use when UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Remove additional files at destination. Default: false.
    #ExcludeFilesFromAppDataFlag: true # boolean. Optional. Use when UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Exclude files from the App_Data folder. Default: true.
    #AdditionalArguments: '-retryAttempts:6 -retryInterval:10000' # string. Optional. Use when UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Additional arguments. Default: -retryAttempts:6 -retryInterval:10000.
    #RenameFilesFlag: true # boolean. Optional. Use when UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Rename locked files. Default: true.
# Azure App Service deploy v4
# Deploy to Azure App Service a web, mobile, or API app using Docker, Java, .NET, .NET Core, Node.js, PHP, Python, or Ruby.
- task: AzureRmWebAppDeployment@4
  inputs:
    ConnectionType: 'AzureRM' # 'AzureRM' | 'PublishProfile'. Required. Connection type. Default: AzureRM.
    azureSubscription: # string. Alias: ConnectedServiceName. Required when ConnectionType = AzureRM. Azure subscription. 
    #PublishProfilePath: '$(System.DefaultWorkingDirectory)/**/*.pubxml' # string. Required when ConnectionType = PublishProfile. Publish profile path. Default: $(System.DefaultWorkingDirectory)/**/*.pubxml.
    #PublishProfilePassword: # string. Required when ConnectionType = PublishProfile. Publish profile password. 
    appType: 'webApp' # 'webApp' | 'webAppLinux' | 'webAppContainer' | 'functionApp' | 'functionAppLinux' | 'functionAppContainer' | 'apiApp' | 'mobileApp'. Alias: WebAppKind. Required when ConnectionType = AzureRM. App Service type. Default: webApp.
    WebAppName: # string. Required when ConnectionType = AzureRM. App Service name. 
    #deployToSlotOrASE: false # boolean. Alias: DeployToSlotOrASEFlag. Optional. Use when ConnectionType = AzureRM && WebAppKind != "". Deploy to Slot or App Service Environment. Default: false.
    #ResourceGroupName: # string. Required when DeployToSlotOrASEFlag = true. Resource group. 
    #SlotName: 'production' # string. Required when DeployToSlotOrASEFlag = true. Slot. Default: production.
    #DockerNamespace: # string. Required when WebAppKind = webAppContainer || WebAppkind = functionAppContainer. Registry or Namespace. 
    #DockerRepository: # string. Required when WebAppKind = webAppContainer || WebAppkind = functionAppContainer. Image. 
    #DockerImageTag: # string. Optional. Use when WebAppKind = webAppContainer || WebAppkind = functionAppContainer. Tag. 
    #VirtualApplication: # string. Optional. Use when WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != functionApp && webAppKind != functionAppLinux && WebAppKind != "". Virtual application. 
    #packageForLinux: '$(System.DefaultWorkingDirectory)/**/*.zip' # string. Alias: Package. Required when ConnectionType = PublishProfile || WebAppKind = webApp || WebAppKind = apiApp || WebAppKind = functionApp || WebAppKind = mobileApp || WebAppKind = webAppLinux || webAppKind = functionAppLinux. Package or folder. Default: $(System.DefaultWorkingDirectory)/**/*.zip.
    #RuntimeStack: # string. Optional. Use when WebAppKind = webAppLinux. Runtime Stack. 
    #RuntimeStackFunction: # 'DOTNET|2.2' | 'DOTNET|3.1' | 'JAVA|8' | 'JAVA|11' | 'NODE|8' | 'NODE|10' | 'NODE|12' | 'NODE|14' | 'PYTHON|3.6' | 'PYTHON|3.7' | 'PYTHON|3.8'. Optional. Use when WebAppKind = functionAppLinux. Runtime Stack. 
    #StartupCommand: # string. Optional. Use when WebAppKind = webAppLinux || WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppKind = functionAppLinux. Startup command. 
  # Post Deployment Action
    #ScriptType: # 'Inline Script' | 'File Path'. Optional. Use when ConnectionType = AzureRM && WebAppKind != "" && WebAppKind != webAppContainer && WebAppkind != functionAppContainer. Deployment script type. 
    #InlineScript: ':: You can provide your deployment commands here. One command per line.' # string. Required when ScriptType == Inline Script && ConnectionType = AzureRM && WebAppKind != "" && WebAppKind != webAppContainer && WebAppkind != functionAppContainer. Inline Script. Default: :: You can provide your deployment commands here. One command per line..
    #ScriptPath: # string. Required when ScriptType == File Path && ConnectionType = AzureRM && WebAppKind != "" && WebAppKind != webAppContainer && WebAppkind != functionAppContainer. Deployment script path. 
  # File Transforms & Variable Substitution Options
    #WebConfigParameters: # string. Optional. Use when WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war. Generate web.config parameters for Python, Node.js, Go and Java apps. 
    #enableXmlTransform: false # boolean. Alias: XmlTransformation. Optional. Use when WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war. XML transformation. Default: false.
    #enableXmlVariableSubstitution: false # boolean. Alias: XmlVariableSubstitution. Optional. Use when WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war. XML variable substitution. Default: false.
    #JSONFiles: # string. Optional. Use when WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war. JSON variable substitution. 
  # Application and Configuration Settings
    #AppSettings: # string. Optional. Use when ConnectionType = AzureRM. App settings. 
    #ConfigurationSettings: # string. Optional. Use when ConnectionType = AzureRM. Configuration settings. 
  # Additional Deployment Options
    #enableCustomDeployment: false # boolean. Alias: UseWebDeploy. Optional. Use when ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Select deployment method. Default: false.
    #DeploymentType: 'webDeploy' # 'webDeploy' | 'zipDeploy' | 'runFromZip'. Required when UseWebDeploy == true && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Deployment method. Default: webDeploy.
    #TakeAppOfflineFlag: true # boolean. Optional. Use when UseWebDeploy == true && DeploymentType != runFromZip && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Take App Offline. Default: true.
    #SetParametersFile: # string. Optional. Use when UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. SetParameters file. 
    #RemoveAdditionalFilesFlag: false # boolean. Optional. Use when UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Remove additional files at destination. Default: false.
    #ExcludeFilesFromAppDataFlag: true # boolean. Optional. Use when UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Exclude files from the App_Data folder. Default: true.
    #AdditionalArguments: '-retryAttempts:6 -retryInterval:10000' # string. Optional. Use when UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Additional arguments. Default: -retryAttempts:6 -retryInterval:10000.
    #RenameFilesFlag: true # boolean. Optional. Use when UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Rename locked files. Default: true.
# Azure App Service deploy v4
# Deploy to Azure App Service a web, mobile, or API app using Docker, Java, .NET, .NET Core, Node.js, PHP, Python, or Ruby.
- task: AzureRmWebAppDeployment@4
  inputs:
    ConnectionType: 'AzureRM' # 'AzureRM' | 'PublishProfile'. Required. Connection type. Default: AzureRM.
    azureSubscription: # string. Alias: ConnectedServiceName. Required when ConnectionType = AzureRM. Azure subscription. 
    #PublishProfilePath: '$(System.DefaultWorkingDirectory)/**/*.pubxml' # string. Required when ConnectionType = PublishProfile. Publish profile path. Default: $(System.DefaultWorkingDirectory)/**/*.pubxml.
    #PublishProfilePassword: # string. Required when ConnectionType = PublishProfile. Publish profile password. 
    appType: 'webApp' # 'webApp' | 'webAppLinux' | 'webAppContainer' | 'functionApp' | 'functionAppLinux' | 'functionAppContainer' | 'apiApp' | 'mobileApp'. Alias: WebAppKind. Required when ConnectionType = AzureRM. App Service type. Default: webApp.
    WebAppName: # string. Required when ConnectionType = AzureRM. App Service name. 
    #deployToSlotOrASE: false # boolean. Alias: DeployToSlotOrASEFlag. Optional. Use when ConnectionType = AzureRM && WebAppKind != "". Deploy to Slot or App Service Environment. Default: false.
    #ResourceGroupName: # string. Required when DeployToSlotOrASEFlag = true. Resource group. 
    #SlotName: 'production' # string. Required when DeployToSlotOrASEFlag = true. Slot. Default: production.
    #DockerNamespace: # string. Required when WebAppKind = webAppContainer || WebAppkind = functionAppContainer. Registry or Namespace. 
    #DockerRepository: # string. Required when WebAppKind = webAppContainer || WebAppkind = functionAppContainer. Image. 
    #DockerImageTag: # string. Optional. Use when WebAppKind = webAppContainer || WebAppkind = functionAppContainer. Tag. 
    #VirtualApplication: # string. Optional. Use when WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != functionApp && webAppKind != functionAppLinux && WebAppKind != "". Virtual application. 
    #packageForLinux: '$(System.DefaultWorkingDirectory)/**/*.zip' # string. Alias: Package. Required when ConnectionType = PublishProfile || WebAppKind = webApp || WebAppKind = apiApp || WebAppKind = functionApp || WebAppKind = mobileApp || WebAppKind = webAppLinux || webAppKind = functionAppLinux. Package or folder. Default: $(System.DefaultWorkingDirectory)/**/*.zip.
    #RuntimeStack: # string. Optional. Use when WebAppKind = webAppLinux. Runtime Stack. 
    #RuntimeStackFunction: # 'DOCKER|microsoft/azure-functions-dotnet-core2.0:2.0' | 'DOCKER|microsoft/azure-functions-node8:2.0'. Optional. Use when WebAppKind = functionAppLinux. Runtime Stack. 
    #StartupCommand: # string. Optional. Use when WebAppKind = webAppLinux || WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppKind = functionAppLinux. Startup command. 
  # Post Deployment Action
    #ScriptType: # 'Inline Script' | 'File Path'. Optional. Use when ConnectionType = AzureRM && WebAppKind != "" && WebAppKind != webAppContainer && WebAppkind != functionAppContainer. Deployment script type. 
    #InlineScript: ':: You can provide your deployment commands here. One command per line.' # string. Required when ScriptType == Inline Script && ConnectionType = AzureRM && WebAppKind != "" && WebAppKind != webAppContainer && WebAppkind != functionAppContainer. Inline Script. Default: :: You can provide your deployment commands here. One command per line..
    #ScriptPath: # string. Required when ScriptType == File Path && ConnectionType = AzureRM && WebAppKind != "" && WebAppKind != webAppContainer && WebAppkind != functionAppContainer. Deployment script path. 
  # File Transforms & Variable Substitution Options
    #WebConfigParameters: # string. Optional. Use when WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war. Generate web.config parameters for Python, Node.js, Go and Java apps. 
    #enableXmlTransform: false # boolean. Alias: XmlTransformation. Optional. Use when WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war. XML transformation. Default: false.
    #enableXmlVariableSubstitution: false # boolean. Alias: XmlVariableSubstitution. Optional. Use when WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war. XML variable substitution. Default: false.
    #JSONFiles: # string. Optional. Use when WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war. JSON variable substitution. 
  # Application and Configuration Settings
    #AppSettings: # string. Optional. Use when ConnectionType = AzureRM. App settings. 
    #ConfigurationSettings: # string. Optional. Use when ConnectionType = AzureRM. Configuration settings. 
  # Additional Deployment Options
    #enableCustomDeployment: false # boolean. Alias: UseWebDeploy. Optional. Use when ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Select deployment method. Default: false.
    #DeploymentType: 'webDeploy' # 'webDeploy' | 'zipDeploy' | 'runFromZip'. Required when UseWebDeploy == true && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Deployment method. Default: webDeploy.
    #TakeAppOfflineFlag: true # boolean. Optional. Use when UseWebDeploy == true && DeploymentType != runFromZip && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Take App Offline. Default: true.
    #SetParametersFile: # string. Optional. Use when UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. SetParameters file. 
    #RemoveAdditionalFilesFlag: false # boolean. Optional. Use when UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Remove additional files at destination. Default: false.
    #ExcludeFilesFromAppDataFlag: true # boolean. Optional. Use when UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Exclude files from the App_Data folder. Default: true.
    #AdditionalArguments: '-retryAttempts:6 -retryInterval:10000' # string. Optional. Use when UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Additional arguments. Default: -retryAttempts:6 -retryInterval:10000.
    #RenameFilesFlag: true # boolean. Optional. Use when UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Rename locked files. Default: true.
# Azure App Service Deploy v4
# Update Azure App Services on Windows, Web App on Linux with built-in images or Docker containers, ASP.NET, .NET Core, PHP, Python or Node.js based Web applications, Function Apps on Windows or Linux with Docker Containers, Mobile Apps, API applications, Web Jobs using Web Deploy / Kudu REST APIs.
- task: AzureRmWebAppDeployment@4
  inputs:
    ConnectionType: 'AzureRM' # 'AzureRM' | 'PublishProfile'. Required. Connection type. Default: AzureRM.
    azureSubscription: # string. Alias: ConnectedServiceName. Required when ConnectionType = AzureRM. Azure subscription. 
    #PublishProfilePath: '$(System.DefaultWorkingDirectory)/**/*.pubxml' # string. Required when ConnectionType = PublishProfile. Publish profile path. Default: $(System.DefaultWorkingDirectory)/**/*.pubxml.
    #PublishProfilePassword: # string. Required when ConnectionType = PublishProfile. Publish profile password. 
    appType: 'webApp' # 'webApp' | 'webAppLinux' | 'webAppContainer' | 'functionApp' | 'functionAppLinux' | 'functionAppContainer' | 'apiApp' | 'mobileApp'. Alias: WebAppKind. Required when ConnectionType = AzureRM. App Service type. Default: webApp.
    WebAppName: # string. Required when ConnectionType = AzureRM. App Service name. 
    #deployToSlotOrASE: false # boolean. Alias: DeployToSlotOrASEFlag. Optional. Use when ConnectionType = AzureRM && WebAppKind != "". Deploy to Slot or App Service Environment. Default: false.
    #ResourceGroupName: # string. Required when DeployToSlotOrASEFlag = true. Resource group. 
    #SlotName: 'production' # string. Required when DeployToSlotOrASEFlag = true. Slot. Default: production.
    #DockerNamespace: # string. Required when WebAppKind = webAppContainer || WebAppkind = functionAppContainer. Registry or Namespace. 
    #DockerRepository: # string. Required when WebAppKind = webAppContainer || WebAppkind = functionAppContainer. Image. 
    #DockerImageTag: # string. Optional. Use when WebAppKind = webAppContainer || WebAppkind = functionAppContainer. Tag. 
    #VirtualApplication: # string. Optional. Use when WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != functionApp && webAppKind != functionAppLinux && WebAppKind != "". Virtual application. 
    #packageForLinux: '$(System.DefaultWorkingDirectory)/**/*.zip' # string. Alias: Package. Required when ConnectionType = PublishProfile || WebAppKind = webApp || WebAppKind = apiApp || WebAppKind = functionApp || WebAppKind = mobileApp || WebAppKind = webAppLinux || webAppKind = functionAppLinux. Package or folder. Default: $(System.DefaultWorkingDirectory)/**/*.zip.
    #RuntimeStack: # string. Optional. Use when WebAppKind = webAppLinux. Runtime Stack. 
    #RuntimeStackFunction: # 'DOCKER|microsoft/azure-functions-dotnet-core2.0:2.0' | 'DOCKER|microsoft/azure-functions-node8:2.0'. Optional. Use when WebAppKind = functionAppLinux. Runtime Stack. 
    #StartupCommand: # string. Optional. Use when WebAppKind = webAppLinux || WebAppKind = webAppContainer || WebAppkind = functionAppContainer. Startup command. 
  # Post Deployment Action
    #ScriptType: # 'Inline Script' | 'File Path'. Optional. Use when ConnectionType = AzureRM && WebAppKind != "" && WebAppKind != webAppContainer && WebAppkind != functionAppContainer. Deployment script type. 
    #InlineScript: ':: You can provide your deployment commands here. One command per line.' # string. Required when ScriptType == Inline Script && ConnectionType = AzureRM && WebAppKind != "" && WebAppKind != webAppContainer && WebAppkind != functionAppContainer. Inline Script. Default: :: You can provide your deployment commands here. One command per line..
    #ScriptPath: # string. Required when ScriptType == File Path && ConnectionType = AzureRM && WebAppKind != "" && WebAppKind != webAppContainer && WebAppkind != functionAppContainer. Deployment script path. 
  # File Transforms & Variable Substitution Options
    #WebConfigParameters: # string. Optional. Use when WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war. Generate web.config parameters for Python, Node.js, Go and Java apps. 
    #enableXmlTransform: false # boolean. Alias: XmlTransformation. Optional. Use when WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war. XML transformation. Default: false.
    #enableXmlVariableSubstitution: false # boolean. Alias: XmlVariableSubstitution. Optional. Use when WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war. XML variable substitution. Default: false.
    #JSONFiles: # string. Optional. Use when WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war. JSON variable substitution. 
  # Application and Configuration Settings
    #AppSettings: # string. Optional. Use when ConnectionType = AzureRM. App settings. 
    #ConfigurationSettings: # string. Optional. Use when ConnectionType = AzureRM. Configuration settings. 
  # Additional Deployment Options
    #enableCustomDeployment: false # boolean. Alias: UseWebDeploy. Optional. Use when ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Select deployment method. Default: false.
    #DeploymentType: 'webDeploy' # 'webDeploy' | 'zipDeploy' | 'runFromZip'. Required when UseWebDeploy == true && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Deployment method. Default: webDeploy.
    #TakeAppOfflineFlag: true # boolean. Optional. Use when UseWebDeploy == true && DeploymentType != runFromZip && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Take App Offline. Default: true.
    #SetParametersFile: # string. Optional. Use when UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. SetParameters file. 
    #RemoveAdditionalFilesFlag: false # boolean. Optional. Use when UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Remove additional files at destination. Default: false.
    #ExcludeFilesFromAppDataFlag: true # boolean. Optional. Use when UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Exclude files from the App_Data folder. Default: true.
    #AdditionalArguments: '-retryAttempts:6 -retryInterval:10000' # string. Optional. Use when UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Additional arguments. Default: -retryAttempts:6 -retryInterval:10000.
    #RenameFilesFlag: true # boolean. Optional. Use when UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar. Rename locked files. Default: true.

入力

ConnectionType - 接続の種類
string. 必須です。 使用できる値: AzureRM (Azure Resource Manager)、 PublishProfile (発行プロファイル)。 既定値: AzureRM

Web アプリのデプロイに使用するサービス接続の種類を指定します。

Visual Studio で作成された発行プロファイルを使用するために を指定Publish Profileします。


ConnectionType - 接続の種類
string. 必須です。 使用できる値: AzureRM (Azure Resource Manager)、 PublishProfile (発行プロファイル)。 既定値: AzureRM

Web アプリのデプロイに使用するサービス接続の種類を指定します。


azureSubscription - Azure サブスクリプション
入力エイリアス: ConnectedServiceNamestring. ConnectionType = AzureRM の場合に必要です。

デプロイの Azure Resource Manager サブスクリプションを指定します。


PublishProfilePath - プロファイル パスを発行する
string. ConnectionType = PublishProfile の場合に必要です。 既定値: $(System.DefaultWorkingDirectory)/**/*.pubxml

Visual Studio から作成された 発行プロファイル のパス。


PublishProfilePassword - プロファイル パスワードを発行する
string. ConnectionType = PublishProfile の場合に必要です。

シークレット変数にパスワードを格納し、ここでその変数 (例: ) を使用することをお勧めします。 $(Password)


appType - App Serviceの種類
入力エイリアス: WebAppKindstring. ConnectionType = AzureRM の場合に必要です。 使用できる値: webApp (Windows 上の Web アプリ) webAppLinux 、(Linux 上の Web アプリ)、 webAppContainer (Web App for Containers (Linux))、 webAppHyperVContainer (Web App for Containers (Windows))、 functionApp (Windows 上の関数アプリ (推奨されない、Azure Functions タスクを使用する) functionAppLinux )、(Linux 上の Function App (推奨なし、Azure Functions タスクの使用)) functionAppContainer 、(Function App for Containers (Linux) (推奨なし、使用)コンテナー タスクのAzure Functions)、 apiApp (API アプリ)、 mobileApp (モバイル アプリ)。 既定値: webApp

[Windows 上の Web アプリ]、[Linux 上の Web アプリ]、[コンテナー用 Web アプリ]、[関数アプリ]、[Linux 上の関数アプリ]、[コンテナー用関数アプリ]、[モバイル アプリ] から選択します。


appType - App Serviceの種類
入力エイリアス: WebAppKindstring. ConnectionType = AzureRM の場合に必要です。 使用できる値: webApp (Windows 上の Web アプリ) webAppLinux 、(Linux 上の Web アプリ)、 webAppContainer (Web App for Containers (Linux))、 functionApp (Windows 上の関数アプリ) functionAppLinux 、(Linux 上の関数アプリ) functionAppContainer 、(Function App for Containers (Linux))、 apiApp (API App)、 mobileApp (モバイル アプリ)。 既定値: webApp

[Windows 上の Web アプリ]、[Linux 上の Web アプリ]、[コンテナー用 Web アプリ]、[関数アプリ]、[Linux 上の関数アプリ]、[コンテナー用関数アプリ]、[モバイル アプリ] から選択します。


WebAppName - App Service名
string. ConnectionType = AzureRM の場合に必要です。

既存のAzure App Serviceの名前を指定します。 選択したアプリの種類に基づくアプリ サービスは、タスク アシスタントを使用している場合にのみ一覧表示されます。


deployToSlotOrASE - スロットまたはApp Service Environmentにデプロイする
入力エイリアス: DeployToSlotOrASEFlagboolean. 省略可能。 の場合は ConnectionType = AzureRM && WebAppKind != ""を使用します。 既定値: false

既存のデプロイ スロットまたはAzure App Service環境にデプロイするオプションを指定します。 どちらのターゲットでも、タスクにはリソース グループ名が必要です。 デプロイ ターゲットがスロットの場合、既定ではデプロイは 運用 スロットになります。 その他の既存のスロット名を指定できます。 デプロイ ターゲットがAzure App Service環境の場合は、スロット名をそのままProductionにして、リソース グループ名のみを指定します。


ResourceGroupName - リソース グループ
string. DeployToSlotOrASEFlag = true の場合に必要です。

デプロイ ターゲットがデプロイ スロットまたはApp Service Environmentである場合は、リソース グループ名が必要です。

上記で指定したAzure App Serviceを含む Azure リソース グループを指定します。


SlotName - スロット
string. DeployToSlotOrASEFlag = true の場合に必要です。 既定値: production

運用スロット以外の既存のスロットを指定します。


DockerNamespace - レジストリまたは名前空間
string. WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppKind = webAppHyperVContainer の場合に必要です。

特定のレジストリまたは名前空間のグローバルに一意のトップレベル ドメイン名。 注: 完全修飾イメージ名は、 という形式 {registry or namespace}/{repository}:{tag}になります。 たとえば、「 myregistry.azurecr.io/nginx:latest 」のように入力します。


DockerNamespace - レジストリまたは名前空間
string. WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppkind = webAppHyperVContainer の場合に必要です。

特定のレジストリまたは名前空間のグローバルに一意のトップレベル ドメイン名。 注: 完全修飾イメージ名は、 という形式 {registry or namespace}/{repository}:{tag}になります。 たとえば、「 myregistry.azurecr.io/nginx:latest 」のように入力します。


DockerNamespace - レジストリまたは名前空間
string. WebAppKind = webAppContainer || WebAppkind = functionAppContainer の場合に必要です。

特定のレジストリまたは名前空間のグローバルに一意のトップレベル ドメイン名。 注: 完全修飾イメージ名は、 という形式 {registry or namespace}/{repository}:{tag}になります。 たとえば、「 myregistry.azurecr.io/nginx:latest 」のように入力します。


DockerRepository - イメージ
string. WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppKind = webAppHyperVContainer の場合に必要です。

コンテナー イメージが格納されているリポジトリの名前。 注: 完全修飾イメージ名は、 という形式 {registry or namespace}/{repository}:{tag}になります。 たとえば、「 myregistry.azurecr.io/nginx:latest 」のように入力します。


DockerRepository - イメージ
string. WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppkind = webAppHyperVContainer の場合に必要です。

コンテナー イメージが格納されているリポジトリの名前。 注: 完全修飾イメージ名は、 という形式 {registry or namespace}/{repository}:{tag}になります。 たとえば、「 myregistry.azurecr.io/nginx:latest 」のように入力します。


DockerRepository - イメージ
string. WebAppKind = webAppContainer || WebAppkind = functionAppContainer の場合に必要です。

コンテナー イメージが格納されているリポジトリの名前。 注: 完全修飾イメージ名は、 という形式 {registry or namespace}/{repository}:{tag}になります。 たとえば、「 myregistry.azurecr.io/nginx:latest 」のように入力します。


DockerImageTag - タグ
string. 省略可能。 の場合は WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppKind = webAppHyperVContainerを使用します。

タグは、レジストリがバージョン情報を Docker イメージに適用するために使用するメカニズムです。 注: 完全修飾イメージ名は、 という形式 {registry or namespace}/{repository}:{tag}になります。 たとえば、「 myregistry.azurecr.io/nginx:latest 」のように入力します。


DockerImageTag - タグ
string. 省略可能。 の場合は WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppkind = webAppHyperVContainerを使用します。

タグは、レジストリがバージョン情報を Docker イメージに適用するために使用するメカニズムです。 注: 完全修飾イメージ名は、 という形式 {registry or namespace}/{repository}:{tag}になります。 たとえば、「 myregistry.azurecr.io/nginx:latest 」のように入力します。


DockerImageTag - タグ
string. 省略可能。 の場合は WebAppKind = webAppContainer || WebAppkind = functionAppContainerを使用します。

タグは、レジストリがバージョン情報を Docker イメージに適用するために使用するメカニズムです。 注: 完全修飾イメージ名は、 という形式 {registry or namespace}/{repository}:{tag}になります。 たとえば、「 myregistry.azurecr.io/nginx:latest 」のように入力します。


VirtualApplication - 仮想アプリケーション
string. 省略可能。 の場合は WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && WebAppKind != functionApp && webAppKind != functionAppLinux && WebAppKind != ""を使用します。

Azure portalで構成されている仮想アプリケーションの名前を指定します。 このオプションは、Web サイト ルートへのデプロイには必要ありません。 Web プロジェクトをデプロイする前に、仮想アプリケーションが 構成 されている必要があります。


VirtualApplication - 仮想アプリケーション
string. 省略可能。 の場合は WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != functionApp && webAppKind != functionAppLinux && WebAppKind != ""を使用します。

Azure portalで構成されている仮想アプリケーションの名前を指定します。 このオプションは、Web サイト ルートへのデプロイには必要ありません。 Web プロジェクトをデプロイする前に、仮想アプリケーションが 構成 されている必要があります。


packageForLinux - パッケージまたはフォルダー
入力エイリアス: Packagestring. ConnectionType = PublishProfile || WebAppKind = webApp || WebAppKind = apiApp || WebAppKind = functionApp || WebAppKind = mobileApp || WebAppKind = webAppLinux || webAppKind = functionAppLinux の場合に必要です。 既定値: $(System.DefaultWorkingDirectory)/**/*.zip

パッケージへのファイル パス、または MSBuild によって生成された App Service コンテンツを含むフォルダー、または圧縮された zip ファイルまたは war ファイルへのファイル パス。

変数は ビルドリリースですワイルドカードが サポートされています。

たとえば、$(System.DefaultWorkingDirectory)/\*\*/\*.zip または $(System.DefaultWorkingDirectory)/\*\*/\*.war です。


RuntimeStack - ランタイム スタック
string. 省略可能。 の場合は WebAppKind = webAppLinuxを使用します。

Linux 上の関数アプリのフレームワークとバージョンを指定します。


RuntimeStackFunction - ランタイム スタック
string. 省略可能。 の場合は WebAppKind = functionAppLinuxを使用します。 使用できる値: DOTNET|2.2 (DOTNET|2.2 (functionapp v2))、 DOTNET|3.1 (DOTNET|3.1 (functionapp 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 v 2/v3))、 NODE|12 (NODE|12 (functionapp v3))、 NODE|14 (NODE|14 (functionapp v3))、 PYTHON|3.6 (PYTHON|3.6 (functionapp v2/v3)) PYTHON|3.7 、(PYTHON|3.7 (functionapp v2/v3))、 PYTHON|3.8 (PYTHON|3.8 (functionapp v3))

フレームワークとバージョンを指定します。 サポートされているランタイム バージョンについては、Azure Functionsランタイム バージョンの概要に関するページを参照してください。 などの DOCKER|microsoft/azure-functions-* 古い値は非推奨です。 ドロップダウンから新しい値を使用してください。


RuntimeStackFunction - ランタイム スタック
string. 省略可能。 の場合は WebAppKind = functionAppLinuxを使用します。 使用できる値: DOCKER|microsoft/azure-functions-dotnet-core2.0:2.0 (.NET)、 DOCKER|microsoft/azure-functions-node8:2.0 (JavaScript)。

フレームワークとバージョンを指定します。


StartupCommand - スタートアップ コマンド
string. 省略可能。 の場合は WebAppKind = webAppLinux || WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppKind = functionAppLinux || WebAppKind = webAppHyperVContainerを使用します。

[スタートアップ] コマンドを指定します。 例:

dotnet exec filename.dll

dotnet filename.dll.


StartupCommand - スタートアップ コマンド
string. 省略可能。 の場合は WebAppKind = webAppLinux || WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppKind = functionAppLinux || WebAppkind = webAppHyperVContainerを使用します。

[スタートアップ] コマンドを指定します。 例:

dotnet exec filename.dll

dotnet filename.dll.


StartupCommand - スタートアップ コマンド
string. 省略可能。 の場合は WebAppKind = webAppLinux || WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppKind = functionAppLinuxを使用します。

[スタートアップ] コマンドを指定します。 例:

dotnet exec filename.dll

dotnet filename.dll.


StartupCommand - スタートアップ コマンド
string. 省略可能。 の場合は WebAppKind = webAppLinux || WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppKind = functionAppLinuxを使用します。

[スタートアップ] コマンドを指定します。 たとえば、 dotnet rundotnet filename.dllです。


StartupCommand - スタートアップ コマンド
string. 省略可能。 の場合は WebAppKind = webAppLinux || WebAppKind = webAppContainer || WebAppkind = functionAppContainerを使用します。

[スタートアップ] コマンドを指定します。


ScriptType - デプロイ スクリプトの種類
string. 省略可能。 の場合は ConnectionType = AzureRM && WebAppKind != "" && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainerを使用します。 使用できる値: Inline ScriptFile Path (スクリプト ファイル パス)。

デプロイが成功した後にAzure App Serviceで実行されるスクリプトを提供して、デプロイをカスタマイズします。 インライン展開スクリプト、またはスクリプト ファイルのパスと名前を選択します。 Azure App Serviceデプロイの詳細については、こちらを参照してください。


ScriptType - デプロイ スクリプトの種類
string. 省略可能。 の場合は ConnectionType = AzureRM && WebAppKind != "" && WebAppKind != webAppContainer && WebAppkind != functionAppContainerを使用します。 使用できる値: Inline ScriptFile Path (スクリプト ファイル パス)。

デプロイが成功した後にAzure App Serviceで実行されるスクリプトを提供して、デプロイをカスタマイズします。 インライン展開スクリプト、またはスクリプト ファイルのパスと名前を選択します。 Azure App Serviceデプロイの詳細については、こちらを参照してください。


InlineScript - インライン スクリプト
string. ScriptType == Inline Script && ConnectionType = AzureRM && WebAppKind != "" && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer の場合に必要です。 既定値: :: You can provide your deployment commands here. One command per line.

実行するスクリプトです。 ここでデプロイ コマンドを行ごとに 1 つ指定できます。 次の例を参照してください。


InlineScript - インライン スクリプト
string. ScriptType == Inline Script && ConnectionType = AzureRM && WebAppKind != "" && WebAppKind != webAppContainer && WebAppkind != functionAppContainer の場合に必要です。 既定値: :: You can provide your deployment commands here. One command per line.

実行するスクリプトです。 ここでデプロイ コマンドを行ごとに 1 つ指定できます。 次の例を参照してください。


ScriptPath - デプロイ スクリプトのパス
string. ScriptType == File Path && ConnectionType = AzureRM && WebAppKind != "" && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer の場合に必要です。

実行するスクリプトのパスと名前。


ScriptPath - デプロイ スクリプトのパス
string. ScriptType == File Path && ConnectionType = AzureRM && WebAppKind != "" && WebAppKind != webAppContainer && WebAppkind != functionAppContainer の場合に必要です。

実行するスクリプトのパスと名前。


WebConfigParameters - Python、Node.js、Go、Java アプリの web.config パラメーターを生成する
string. 省略可能。 の場合は WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .warを使用します。

標準Web.configが生成され、アプリケーションに存在しない場合はAzure App Serviceにデプロイされます。 の web.config 値は編集でき、アプリケーション フレームワークによって異なります。 たとえば、アプリケーションの場合 node.jsweb.config にはスタートアップ ファイルと iis_node モジュール値があります。 この編集機能は、生成された に対してのみ使用されます web.configAzure App Serviceデプロイの詳細については、こちらを参照してください。


WebConfigParameters - Python、Node.js、Go、Java アプリの web.config パラメーターを生成する
string. 省略可能。 の場合は WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .warを使用します。

標準Web.configが生成され、アプリケーションに存在しない場合はAzure App Serviceにデプロイされます。 の web.config 値は編集でき、アプリケーション フレームワークによって異なります。 たとえば、アプリケーションの場合 node.jsweb.config にはスタートアップ ファイルと iis_node モジュール値があります。 この編集機能は、生成された に対してのみ使用されます web.configAzure App Serviceデプロイの詳細については、こちらを参照してください。


AppSettings - アプリの設定
string. 省略可能。 の場合は ConnectionType = AzureRMを使用します。

構文 -key valueを使用して Web アプリ アプリケーションの設定を編集します。 値に空白が含まれる場合は、二重引用符で囲む必要があります。 例: -Port 5000 -RequestTimeout 5000 および -WEBSITE_TIME_ZONE "Eastern Standard Time"。 2 つ以上のキー値を指定するには、キー値をスペースで区切る必要があります。 例: -key1 "Value1" -Key2 "Value2".


ConfigurationSettings - 構成設定
string. 省略可能。 の場合は ConnectionType = AzureRMを使用します。

構文 -key valueを使用して Web アプリの構成設定を編集します。 値に空白が含まれる場合は、二重引用符で囲む必要があります。 例: -phpVersion 5.6 -linuxFxVersion node|6.11.


enableCustomDeployment - デプロイ方法の選択
入力エイリアス: UseWebDeployboolean. 省略可能。 の場合は ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jarを使用します。 既定値: false

オフまたは false の場合、タスクはアプリの種類、パッケージ形式、およびその他のパラメーターに基づいて最適なデプロイ方法を自動検出します。 タスク アシスタントでこのオプションをオンにして、サポートされているデプロイ方法を表示し、アプリのデプロイ用に 1 つ選択します。


enableCustomDeployment - デプロイ方法の選択
入力エイリアス: UseWebDeployboolean. 省略可能。 の場合は ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jarを使用します。 既定値: false

オフまたは false の場合、タスクはアプリの種類、パッケージ形式、およびその他のパラメーターに基づいて最適なデプロイ方法を自動検出します。 タスク アシスタントでこのオプションをオンにして、サポートされているデプロイ方法を表示し、アプリのデプロイ用に 1 つ選択します。


DeploymentType - デプロイ方法
string. UseWebDeploy == true && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar の場合に必要です。 使用できる値: webDeploy (Web 配置)、 zipDeploy (Zip 配置)、 runFromZip (パッケージから実行)。 既定値: webDeploy

アプリのデプロイ方法を決定します。


DeploymentType - デプロイ方法
string. UseWebDeploy == true && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar の場合に必要です。 使用できる値: webDeploy (Web 配置)、 zipDeploy (Zip 配置)、 runFromZip (パッケージから実行)。 既定値: webDeploy

アプリのデプロイ方法を決定します。


TakeAppOfflineFlag - アプリをオフラインにする
boolean. 省略可能。 の場合は UseWebDeploy == true && DeploymentType != runFromZip && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jarを使用します。 既定値: true

同期操作を開始する前にルート ディレクトリにファイルをapp_offline.htm配置して、Azure App Serviceをオフラインにするには、このオプションを指定します。 同期が正常に完了すると、ファイルは削除されます。


TakeAppOfflineFlag - アプリをオフラインにする
boolean. 省略可能。 の場合は UseWebDeploy == true && DeploymentType != runFromZip && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jarを使用します。 既定値: true

同期操作を開始する前にルート ディレクトリにファイルをapp_offline.htm配置して、Azure App Serviceをオフラインにするには、このオプションを指定します。 同期が正常に完了すると、ファイルは削除されます。


SetParametersFile - SetParameters ファイル
string. 省略可能。 の場合は UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jarを使用します。

使用するファイルの SetParameters.xml 場所。


SetParametersFile - SetParameters ファイル
string. 省略可能。 の場合は UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jarを使用します。

使用するファイルの SetParameters.xml 場所。


RemoveAdditionalFilesFlag - コピー先で追加のファイルを削除する
boolean. 省略可能。 の場合は UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jarを使用します。 既定値: false

App Service パッケージまたはフォルダーに一致するファイルがないAzure App Service上のファイルを削除するには、'true' を指定します。 これにより、このAzure App Serviceにインストールされているすべての拡張子に関連するすべてのファイルも削除されます。 これを防ぐには、チェック ボックスを Exclude files from App_Data folder オンにします。


RemoveAdditionalFilesFlag - コピー先で追加のファイルを削除する
boolean. 省略可能。 の場合は UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jarを使用します。 既定値: false

App Service パッケージまたはフォルダーに一致するファイルがないAzure App Service上のファイルを削除するには、'true' を指定します。 これにより、このAzure App Serviceにインストールされているすべての拡張子に関連するすべてのファイルも削除されます。 これを防ぐには、チェック ボックスを Exclude files from App_Data folder オンにします。


ExcludeFilesFromAppDataFlag - App_Data フォルダーからファイルを除外する
boolean. 省略可能。 の場合は UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jarを使用します。 既定値: true

フォルダー内のファイルがApp_DataAzure App Serviceに対して展開または削除されないようにするオプションを指定します。


ExcludeFilesFromAppDataFlag - App_Data フォルダーからファイルを除外する
boolean. 省略可能。 の場合は UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jarを使用します。 既定値: true

フォルダー内のファイルがApp_DataAzure App Serviceに対して展開または削除されないようにするオプションを指定します。


AdditionalArguments - その他の引数
string. 省略可能。 の場合は UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jarを使用します。 既定値: -retryAttempts:6 -retryInterval:10000

構文 -key:valueに続く追加の Web 配置引数。 これらは、Azure App Service をデプロイするときに適用されます。 例: -disableLink:AppPoolExtension -disableLink:ContentExtension。 詳細については、「 Web 配置操作の設定」を参照してください


AdditionalArguments - その他の引数
string. 省略可能。 の場合は UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jarを使用します。 既定値: -retryAttempts:6 -retryInterval:10000

構文 -key:valueに続く追加の Web 配置引数。 これらは、Azure App Service をデプロイするときに適用されます。 例: -disableLink:AppPoolExtension -disableLink:ContentExtension。 詳細については、「 Web 配置操作の設定」を参照してください


RenameFilesFlag - ロックされたファイルの名前を変更する
boolean. 省略可能。 の場合は UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jarを使用します。 既定値: true

アプリケーション設定で msdeploy フラグMSDEPLOY_RENAME_LOCKED_FILES=1を有効にするには、既定値Azure App Service指定します。 このオプションを設定すると、msdeploy でアプリのデプロイ中にロックされているファイルの名前を変更できます。


RenameFilesFlag - ロックされたファイルの名前を変更する
boolean. 省略可能。 の場合は UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jarを使用します。 既定値: true

アプリケーション設定で msdeploy フラグMSDEPLOY_RENAME_LOCKED_FILES=1を有効にするには、既定値Azure App Service指定します。 このオプションを設定すると、msdeploy でアプリのデプロイ中にロックされているファイルの名前を変更できます。


enableXmlTransform - XML 変換
入力エイリアス: XmlTransformationboolean. 省略可能。 の場合は WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .warを使用します。 既定値: false

構成変換は、 と に対して *.Release.config*.<EnvironmentName>.config*.config file実行されます。 構成変換は、変数置換の前に実行されます。 XML 変換 は、Windows プラットフォームでのみサポートされます。


enableXmlTransform - XML 変換
入力エイリアス: XmlTransformationboolean. 省略可能。 の場合は WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .warを使用します。 既定値: false

構成変換は、 と に対して *.Release.config*.<EnvironmentName>.config*.config file実行されます。 構成変換は、変数置換の前に実行されます。 XML 変換 は、Windows プラットフォームでのみサポートされます。


enableXmlVariableSubstitution - XML 変数の置換
入力エイリアス: XmlVariableSubstitutionboolean. 省略可能。 の場合は WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .warを使用します。 既定値: false

ビルドまたはリリース パイプラインで定義された変数は、構成ファイルとファイルの 、appSettings、、および セクションのconfigSectionsキーまたは名前のエントリとparameters.xmlconnectionStrings照合applicationSettingsされます。 変数の置換は、構成の変換後に実行されます。

リリース パイプラインとステージで同じ変数が定義されている場合、ステージ変数はリリース パイプライン変数よりも優先されます。 [XML 変数の置換]](/azure/devops/pipelines/tasks/transforms-variable-substitution#xml-variable-substitution) の詳細を確認してください。


enableXmlVariableSubstitution - XML 変数の置換
入力エイリアス: XmlVariableSubstitutionboolean. 省略可能。 の場合は WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .warを使用します。 既定値: false

ビルドまたはリリース パイプラインで定義された変数は、構成ファイルとファイルの 、appSettings、、および セクションのconfigSectionsキーまたは名前のエントリとparameters.xmlconnectionStrings照合applicationSettingsされます。 変数の置換は、構成の変換後に実行されます。

リリース パイプラインとステージで同じ変数が定義されている場合、ステージ変数はリリース パイプライン変数よりも優先されます。 [XML 変数の置換]](/azure/devops/pipelines/tasks/transforms-variable-substitution#xml-variable-substitution) の詳細を確認してください。


JSONFiles - JSON 変数の置換
string. 省略可能。 の場合は WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .warを使用します。

変数値を置き換える JSON ファイルの改行で区切られたリストを提供します。 ファイル名は、ルート フォルダーを基準にして指定する必要があります。 入れ子または階層構造の JSON 変数を置き換える場合は、式を使用して JSONPath それらを指定します。 たとえば、次のサンプルの の ConnectionString 値を置き換えるには、ビルドまたはリリース パイプライン (またはリリース パイプライン ステージ) で という名前 Data.DefaultConnection.ConnectionString の変数を定義します。

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

変数の置換は、構成変換の後に実行されます。 注: ビルドとリリースのパイプライン変数は、置換から除外されます。 JSON 変数の置換の詳細については、こちらを参照してください。


JSONFiles - JSON 変数の置換
string. 省略可能。 の場合は WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .warを使用します。

変数値を置き換える JSON ファイルの改行で区切られたリストを提供します。 ファイル名は、ルート フォルダーを基準にして指定する必要があります。 入れ子または階層構造の JSON 変数を置き換える場合は、式を使用して JSONPath それらを指定します。 たとえば、次のサンプルの の ConnectionString 値を置き換えるには、ビルドまたはリリース パイプライン (またはリリース パイプライン ステージ) で という名前 Data.DefaultConnection.ConnectionString の変数を定義します。

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

変数の置換は、構成変換の後に実行されます。 注: ビルドとリリースのパイプライン変数は、置換から除外されます。 JSON 変数の置換の詳細については、こちらを参照してください。


タスク制御オプション

すべてのタスクには、タスク入力に加えて制御オプションがあります。 詳細については、「 コントロール オプションと一般的なタスク プロパティ」を参照してください。

出力変数

このタスクでは、ダウンストリームのステップ、ジョブ、およびステージで使用できる次の 出力変数を定義します。

AppServiceApplicationUrl
選択したApp Serviceのアプリケーション URL。

注釈

このタスクを使用して、Azure 上のさまざまな App Services にデプロイします。 このタスクは、Windows、Linux、または Mac を実行しているクロスプラットフォーム エージェントで動作し、いくつかの異なる基盤デプロイ テクノロジを使用します。

このタスクは、ASP.NETASP.NET CorePHPJavaPythonGoNode.js ベースの Web アプリケーションに対して機能します。

タスクを使用して、次のようなさまざまな Azure App Services にデプロイできます。

タスクの前提条件

タスクが正しく機能するためには、ターゲット マシンで次の前提条件を設定する必要があります。

  • App Service インスタンス。 タスクは、Web アプリ プロジェクトまたは Azure 関数プロジェクトを、タスク実行前に存在する必要あがる既存の Azure App Service インスタンスにデプロイするために使用されます。 App Service インスタンスは、Azure portal から作成し、そこで構成できます。 または、Azure PowerShell タスクを使用して AzureRM PowerShell スクリプトを実行し、Web アプリをプロビジョニングおよび構成することもできます。

  • Azure サブスクリプション。 Azure にデプロイするには、Azure サブスクリプションをパイプラインにリンクする必要があります。 タスクは Azure クラシック サービス接続では機能せず、タスクの設定にこれらの接続は一覧表示されません。

使用上の注意

  • タスクは、Azure Resource Manager API でのみ機能します。
  • SSL エラーを無視するには、 という名前 VSTS_ARM_REST_IGNORE_SSL_ERRORS の変数をパイプラインで value true と定義します。 自動スワップするように構成されたスロットにデプロイする場合、アプリ サービスの構成設定で または SCM_SKIP_ASE_SSL_VALIDATION1に設定SCM_SKIP_SSL_VALIDATIONしない限り、スワップは失敗します。
  • Windows 上の Web アプリを対象とする .NET アプリの場合は、[ロックされたファイルの名前を変更する] 設定と [アプリをオフラインにする] 設定を有効にすることで、エラー ERROR_FILE_IN_USE によるデプロイ エラーを回避します。 ダウンタイム ゼロのデプロイの場合は、スロット スワップ オプションを使用します。
  • Application Insights が構成されている App Service にデプロイし、[宛先の他のファイルを削除] を有効にしている場合、Application insights 拡張機能を安全な状態に維持するには、[App_Data フォルダーのファイルを除外する] も有効にしてください。 Application Insights の継続中の Web ジョブが App_Data フォルダーにインストールされているため、これが必要です。

デプロイ方法

このタスクでは、いくつかのデプロイ方法を使用できます。 Web 配置 (msdeploy.exe) が既定値です。 デプロイ オプションを変更するには、[追加のデプロイ オプション] を展開し、[デプロイ方法を選択する] を有効にして、追加のパッケージ ベースのデプロイ オプションから選択します。

このタスクでは、Azure App Service とエージェントの種類に基づいて、適切なデプロイ テクノロジが選択されます。 このタスクで使用されるさまざまなデプロイ テクノロジは次のとおりです。

既定では、このタスクは、入力パッケージ、App Service の種類、エージェント オペレーティングシステムに基づいて、適切なデプロイ テクノロジの選択を試みます。

自動検出ロジック

Windows ベースのエージェントの場合。

App Service の種類 パッケージの種類 配置方法
Linux 上の WebApp または Linux 上の関数アプリ Folder/Zip/jar
War
Zip Deploy
War Deploy
WebApp for Containers (Linux) またはコンテナー用関数アプリ (Linux) アプリの設定を更新する NA
Windows 上の WebApp、Windows 上の関数アプリ、API アプリ、またはモバイル アプリ War
Jar
MsBuild パッケージの種類または仮想アプリケーション


フォルダー/Zip へのデプロイ
War Deploy
Zip Deploy
Web Deploy

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

(さまざまな種類のアプリ サービス向けの) Windows 以外のエージェントでは、タスクは Kudu REST API を使用してアプリをデプロイします。

Web デプロイ

Web 配置 (msdeploy.exe) を使用すると、Windows エージェントを使用して、Windows 上の Web アプリまたは関数アプリを Azure App Service デプロイできます。 Web 配置は機能豊富で、次のようなオプションが用意されています。

  • ロックされたファイルの名前を変更する:Azure App Service設定で msdeploy フラグMSDEPLOY\_RENAME\_LOCKED\_FILES=1を有効にして、Web サーバーで引き続き使用されているファイルの名前を変更します。 このオプションが設定されている場合、msdeploy でアプリをデプロイ中にロックされているファイルの名前を変更できます。

  • [宛先で他のファイルを削除]: デプロイ中の App Service 成果物パッケージまたはフォルダーに一致するファイルがない Azure App Service 内のファイルを削除します。

  • [App_Data フォルダーのファイルを除外する]: App_Data フォルダー (デプロイ中の成果物パッケージ/フォルダー) 内のファイルが Azure App Service にデプロイされないようにします

  • [追加の Web 配置引数]: Azure App Service のデプロイ時に適用される引数。 例: -disableLink:AppPoolExtension -disableLink:ContentExtension. Web 配置操作の設定の詳細については、Web 配置操作の設定に関するページを参照してください。

Web Deploy 3.6 からエージェントに Web Deploy をインストールします。 Web 配置 3.5 は、SQL サポートのバンドルなしでインストールする必要があります。 Web 配置をインストールするときにカスタム設定を選択する必要はありません。 Web 配置は に C:/Program Files (x86)/IIS/Microsoft Web Deploy V3インストールされます。

Kudu REST API

Kudu REST API は、ターゲットが Windows 上の Web アプリ、Linux 上の Web アプリ (組み込みのソース)、または関数アプリである場合、Windows と Linux の両方の自動化エージェントで動作します。 このタスクでは、Kudu を使用してファイルを Azure App Service にコピーします。

Container Registry

ターゲットが Web App for Containers の場合、Windows と Linux の両方の自動化エージェントで動作します。 タスクでは、適切なコンテナー レジストリ、リポジトリ、イメージ名、タグ情報を設定してアプリを更新します。 タスクを使用して、コンテナー イメージのスタートアップ コマンドを渡すこともできます。

ZIP デプロイ

.zip デプロイ パッケージを想定し、ファイル コンテンツを Azure 内の App Service または関数アプリの wwwroot フォルダーにデプロイします。 このオプションでは、wwwroot フォルダー内のすべての既存のコンテンツが上書きされます。 詳細については、「Azure Functions の zip デプロイ」を参照してください。

パッケージから実行

Zip デプロイと同じデプロイ パッケージを想定します。 ただし、ファイルを wwwroot フォルダーにデプロイする代わりに、パッケージ全体が Functions ランタイムによってマウントされ、wwwroot フォルダー内のファイルは読み取り専用になります。 詳細については、「Run your Azure Functions from a package file」(パッケージ ファイルから Azure Functions を実行する) を参照してください。

War デプロイ

.war デプロイ パッケージを想定し、ファイル コンテンツを Azure 内の App Service の wwwroot フォルダーまたは webapps フォルダーにデプロイします。

トラブルシューティング

Windows エージェントからのMicrosoft Entra ID認証を使用してAzure App Serviceに Web 配置できない

Azure App Serviceデプロイ タスクでは、次の 3 つの条件が存在しない限り、Microsoft Entra IDを使用した ARM サービス接続を使用した Microsoft Azure への接続がサポートされます。

  • Windows エージェントで Web 配置パッケージ形式を使用している
  • エージェントが古いバージョンの msdeploy.exe で実行されている (たとえば 、windows-2019 ホステッド エージェント イメージを使用している場合)
  • Azure App Serviceの基本認証が無効になっている

これら 3 つの条件が存在する場合は、次のようなエラーが表示されます。 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.

この問題を解決するには、次のオプションから優先順に選択できます。

  1. エージェント イメージを更新します。 ホステッド エージェントを使用している場合は、 windows-2019 から windows-2022 (または windows-latest) に移行します。 セルフホステッド エージェントを使用している場合は、エージェントに Visual Studio 2022 をインストールして、新しいバージョンの msdeploy.exeを取得します。
  2. 古いエージェント イメージに依存していて、パイプラインのエージェントを更新できない場合は、Azure App Serviceデプロイ タスクが windows-2022 (または windows-latest) で実行されるようにジョブを分割することを検討してください。
  3. どちらのオプションも使用できない場合は、Azure App Serviceの基本認証を有効にすることができます

エラー: Azure のアクセス トークンをフェッチできませんでした。 使用されているサービス プリンシパルが有効であり、有効期限が切れていないか確認します。

このタスクでは、サービス接続のサービス プリンシパルを使用して Azure で認証します。 サービス プリンシパルの有効期限が切れているか、App Service に対するアクセス許可がない場合、このエラーのためにタスクが失敗します。 使用されているサービス プリンシパルが有効であることと、アプリの登録に存在することを確認してください。 詳細については、ロールベースのアクセス制御を使った Azure サブスクリプション リソースへのアクセスの管理に関する記事を参照してください。 このブログ記事には、サービス プリンシパル認証の使用に関する詳細も掲載されています。

SSL エラー

App Service で証明書を使用する場合、証明書は信頼できる証明機関が署名したものである必要があります。 Web アプリで証明書検証エラーが返された場合は、自己署名証明書を使用している可能性があります。 VSTS_ARM_REST_IGNORE_SSL_ERRORS という名前の変数をビルドまたはリリース パイプラインの値 true に設定して、エラーを解決します。

リリースが長い時間ハングし、失敗する

この問題は、App Service プランの容量不足によるものである可能性があります。 この問題を解決するには、App Service インスタンスをスケールアップして、使用できる CPU、RAM、およびディスク領域を増やすか、別の App Service プランを試してください。

5xx エラー コード

5xx エラーが表示される場合は、Azure サービスの状態を確認します

Azure 関数が突然動作を停止しました

前回のデプロイから 1 年以上経過した場合、Azure Functionsが突然動作しなくなる可能性があります。 "deploymentMethod" で "RunFromPackage" を使用して展開する場合、有効期限が 1 年の SAS が生成され、アプリケーション構成で "WEBSITE_RUN_FROM_PACKAGE" の値として設定されます。 Azure Functionsは、この SAS を使用して関数の実行のためにパッケージ ファイルを参照するため、SAS の有効期限が切れている場合、関数は実行されません。 この問題を解決するには、もう一度デプロイして、有効期限が 1 年の SAS を生成します。

エラー: 指定されたパターンのパッケージが見つかりません

タスクに示されているパッケージが、ビルドまたは前のステージで成果物として発行され、現在のジョブでダウンロードされているかどうかを確認します。

エラー: zip デプロイ オプションによる公開は、msBuild パッケージの種類ではサポートされていません

MSBuild タスクを使って (既定の引数で) 作成された Web パッケージには、Web 配置でのみ正しくデプロイできる入れ子になったフォルダー構造があります。 これらのパッケージをデプロイするために publish-to-zip デプロイ オプションを使うことはできません。 パッケージ構造を変換するには、次の手順を実行してください。

  1. [ソリューションのビルド] タスクで、MSBuild 引数/p:DeployOnBuild=true /p:DeployDefaultTarget=WebPublish /p:WebPublishMethod=FileSystem /p:DeleteExistingFiles=True /p:publishUrl="$(System.DefaultWorkingDirectory)\\WebAppContent" に変更します。

    [ソリューションのビルド] の値を示すスクリーンショット。

  2. [アーカイブ] タスクを追加し、次のように値を変更します。

    1. [アーカイブするルート フォルダーまたはファイル]$(System.DefaultWorkingDirectory)\\WebAppContent に変更します。

    2. [アーカイブ パスの先頭にルート フォルダー名を追加] チェック ボックスを解除します。

      [アーカイブ] の値を示すスクリーンショット。

Windows への Web アプリのデプロイには成功するが、アプリが機能しない

アプリに web.config が存在しないことが原因である可能性があります。 web.config ファイルをソースに追加するか、タスクのファイル変換オプションと変数置換オプションを使用して自動生成できます。

  • タスクをクリックし、[Python、Node.js、Go、Java アプリ向けの web.config パラメーターを生成する] に移動します。

    [web.config パラメーターの生成] ダイアログのスクリーンショット。

  • [Python、Node.js、Go、Java アプリ向けの web.config パラメーターを生成する] ボタンをクリックして、パラメーターを編集します。

    [アプリケーション フレームワーク] ドロップダウンのスクリーンショット。

  • ドロップダウンからアプリケーションの種類を選択します。

  • [OK] をクリックします。 web.config を生成するのに必要な web.config パラメーターが設定されます。

注意

このセクションは非推奨であり、ファイル変換タスクに置き換えられました。

ERROR_FILE_IN_USE

Windows 上の Web アプリに .NET アプリをデプロイすると、エラー コード ERROR_FILE_IN_USEでデプロイが失敗する場合があります。 エラーを解決するには、タスクで [ロックされたファイルの名前を変更する] および [アプリをオフラインにする] オプションが有効になっていることを確かめます。 ダウンタイムなしのデプロイの場合は、スロットのスワップを使用します。

また、パッケージから実行するデプロイ方法を使用して、リソース ロックを回避することもできます。

Web 配置エラー

Web 配置を使用してアプリをデプロイしている場合、一部のエラー シナリオでは、Web 配置のログにエラー コードが示されます。 Web 配置エラーのトラブルシューティングを行うには、「 Web 配置エラー コード」を参照してください。

App Service Environment (ASE) への Web アプリのデプロイが機能しない

  • Azure DevOps ビルド エージェントが ASE の内部 Load Balancer (ILB) と同じ VNET (サブネットが異なる場合がある) 上にあることを確認します。 こうすると、エージェントは Azure DevOps からコードをプルし、ASE にデプロイできるようになります。
  • Azure DevOps を使用している場合、エージェントはインターネットからアクセスできる必要はありませんが、Azure DevOps Service に接続するには送信アクセスのみが必要です。
  • Virtual Network でデプロイされた TFS または Azure DevOps Server を使用している場合は、エージェントを完全に分離することができます。
  • ビルド エージェントは、デプロイする必要がある Web アプリの DNS 構成で構成する必要があります。 Virtual Network のプライベート リソースでは、Azure DNS にエントリがないため、エージェント コンピューター上の hosts ファイルに追加する必要があります。
  • ASE 構成に自己署名証明書を使用する場合は、 -allowUntrusted MSDeploy のデプロイ タスクで オプションを設定する必要があります。 変数 VSTS_ARM_REST_IGNORE_SSL_ERRORS を true に設定することもお勧めします。 ASE 構成に証明機関からの証明書を使用する場合は、このようにする必要はありません。 自動スワップするように構成されたスロットにデプロイする場合、app services 構成設定で または SCM_SKIP_ASE_SSL_VALIDATION1設定SCM_SKIP_SSL_VALIDATIONしない限り、スワップは失敗します。

FAQ

タスクと AzureRmWebAppDeployment タスクの違いはAzureWebApp何ですか?

Azure Web App タスク (AzureWebApp) は、Azure Web アプリにデプロイする最も簡単な方法です。 既定では、デプロイは Azure Web アプリのルート アプリケーションに対して行われます。

Azure App Serviceデプロイ タスク (AzureRmWebAppDeployment) では、次のようなより多くのカスタム シナリオを処理できます。

注意

また、Azure Pipelines で使用する個別のファイル変換タスクでは、ファイル変換と変数の置換もサポートされています。 ファイル変換タスクを使用することで、任意の構成とパラメーターの各ファイルにファイル変換と変数の置換を適用できます。

サービス接続を構成するにはどうすればよいですか?

このタスクには、Azure Resource Manager サービス接続が必要です。

Application Insights を使用して Web ジョブのデプロイを構成するにはどうすればよいですか?

App Service にデプロイする際に、Application Insights が構成されていて、Remove additional files at destination を有効にしている場合は、Exclude files from the App_Data folder も有効にする必要があります。 このオプションを有効にすると、Application Insights 拡張機能が安全な状態に維持されます。 Application Insights の継続中の Web ジョブが App_Data フォルダーにインストールされているため、この手順が必要です。

App Service にデプロイする際にエージェントがプロキシの背後にある場合は、どのように構成する必要がありますか?

セルフホステッド エージェントに Web プロキシが必要な場合は、構成の際にエージェントにプロキシについて知らせることができます。 そうすれば、エージェントはそのプロキシを介して Azure Pipelines や Azure DevOps Server に接続することができます。 Web プロキシの背後でセルフホステッド エージェントを実行する方法についての詳細情報をご確認ください

特定のアプリの種類にデプロイする

特定のアプリの種類にデプロイするには、appType を次の使用可能な値のいずれかに設定します: webApp (Windows 上の Web アプリ)、webAppLinux (Linux 上の Web アプリ)、webAppContainer (Web App for Containers - Linux)、functionApp (Windows 上の関数アプリ)、functionAppLinux (Linux 上の関数アプリ)、functionAppContainer (コンテナー用の関数アプリ - Linux)、apiApp (API アプリ)、mobileApp (モバイル アプリ)。 指定しない場合は、webApp が既定値として使用されます。

高度なデプロイ オプションを有効にするには、 パラメーター enableCustomDeployment: true を追加し、必要に応じて次のパラメーターを含めます。

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

Azure Web App Linux コンテナーにデプロイする

次の YAML の例では、Azure Web App コンテナー (Linux) にデプロイします。

pool:
  vmImage: ubuntu-latest

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

steps:

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

デプロイ スロット間で Windows App Serviceに Web アプリをデプロイする

次の例では、デプロイ スロット間で Windows App Serviceに Web アプリをデプロイします。

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'

デプロイ後スクリプトの例

タスクには、アプリの成果物が App Service に正常にコピーされた後に Azure App Service で実行されるスクリプトを指定して、デプロイをカスタマイズするオプションが用意されています。 インライン デプロイ スクリプト、または成果物フォルダー内のスクリプト ファイルのパスと名前のいずれかを指定するように選択できます。

これは、アプリケーションの依存関係を App Service で直接復元する場合に非常に便利です。 Node、PHP、Python アプリのパッケージを復元すると、アプリケーションの依存関係によってエージェントからAzure App Serviceに大きな成果物がコピーされる場合にタイムアウトを回避できます。

デプロイ スクリプトの例を次に示します。

@echo off
if NOT exist requirements.txt (
 echo No Requirements.txt found.
 EXIT /b 0
)
if NOT exist "$(PYTHON_EXT)/python.exe" (
 echo Python extension not available >&2
 EXIT /b 1
)
echo Installing dependencies
call "$(PYTHON_EXT)/python.exe" -m pip install -U setuptools
if %errorlevel% NEQ 0 (
 echo Failed to install setuptools >&2
 EXIT /b 1
)
call "$(PYTHON_EXT)/python.exe" -m pip install -r requirements.txt
if %errorlevel% NEQ 0 (
 echo Failed to install dependencies>&2
 EXIT /b 1
)

要件

要件 説明
パイプラインの種類 YAML、クラシック ビルド、クラシック リリース
上で実行 エージェント、DeploymentGroup
確認要求 なし
Capabilities このタスクは、ジョブ内の後続のタスクに対する要求を満たしていません。
コマンドの制限 Any
設定可能な変数 Any
エージェントのバージョン 2.104.1 以降
タスクのカテゴリ デプロイ

こちらもご覧ください

  • このタスクは、GitHub 上のオープンソースです。 フィードバックと投稿をお待ちしております。