AzureRmWebAppDeployment@4 - Azure App Service v4-taak implementeren
Gebruik deze taak om een web-, mobiele of API-app te implementeren in Azure App Service met behulp van Docker, Java, .NET, .NET Core, Node.js, PHP, Python of Ruby.
Notitie
Gebruik AzureFunctionApp@1 om Azure Functions-apps te implementeren.
Werk Azure App Services in Windows, Web App op Linux bij met ingebouwde installatiekopieën of Docker-containers, ASP.NET, .NET Core, PHP, Python of Node.js gebaseerde webtoepassingen, functie-apps in Windows of Linux met Docker-containers, Mobile Apps, API-toepassingen en webtaken met webimplementatie/Kudu REST API's.
Syntaxis
# 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.
Ingangen
ConnectionType
-
verbindingstype
string
. Vereist. Toegestane waarden: AzureRM
(Azure Resource Manager), PublishProfile
(Publicatieprofiel). Standaardwaarde: AzureRM
.
Geef het serviceverbindingstype op dat moet worden gebruikt om de web-app te implementeren.
Geef Publish Profile
op voor het gebruik van visual studio die Profielen publiceren.
ConnectionType
-
verbindingstype
string
. Vereist. Toegestane waarden: AzureRM
(Azure Resource Manager), PublishProfile
(Publicatieprofiel). Standaardwaarde: AzureRM
.
Geef het serviceverbindingstype op dat moet worden gebruikt om de web-app te implementeren.
azureSubscription
-
Azure-abonnement
Invoeralias: ConnectedServiceName
.
string
. Vereist wanneer ConnectionType = AzureRM
.
Geef het Azure Resource Manager-abonnement op voor de implementatie.
PublishProfilePath
-
profielpad publiceren
string
. Vereist wanneer ConnectionType = PublishProfile
. Standaardwaarde: $(System.DefaultWorkingDirectory)/**/*.pubxml
.
Het pad van het profiel publiceren gemaakt vanuit Visual Studio.
PublishProfilePassword
-
Profielwachtwoord publiceren
string
. Vereist wanneer ConnectionType = PublishProfile
.
Het is raadzaam om een wachtwoord op te slaan in een geheime variabele en deze variabele hier te gebruiken, bijvoorbeeld $(Password)
.
appType
-
App Service-type
Invoeralias: WebAppKind
.
string
. Vereist wanneer ConnectionType = AzureRM
. Toegestane waarden: webApp
(Web App in Windows), webAppLinux
(Web App on Linux), webAppContainer
(Web App for Containers (Linux)), webAppHyperVContainer
(Web App for Containers (Windows)), functionApp
(Functie-app in Windows (niet aanbevolen, Azure Functions-taak) gebruiken), functionAppLinux
(functie-app op Linux (niet aanbevolen, Azure Functions-taak gebruiken)), functionAppContainer
(Functie-app voor containers (Linux) (niet aanbevolen, Azure Functions gebruiken voor containertaak)), apiApp
(API-app), mobileApp
(mobiele app). Standaardwaarde: webApp
.
Kies een web-app in Windows, web-app op Linux, web-app voor containers, functie-app, functie-app op Linux, functie-app voor containers en mobiele app.
appType
-
App Service-type
Invoeralias: WebAppKind
.
string
. Vereist wanneer ConnectionType = AzureRM
. Toegestane waarden: webApp
(Web-app in Windows), webAppLinux
(Web-app op Linux), webAppContainer
(Web App for Containers (Linux)), functionApp
(Functie-app in Windows), functionAppLinux
(Functie-app op Linux), functionAppContainer
(Functie-app voor Containers (Linux)), apiApp
(API-app), mobileApp
(mobiele app). Standaardwaarde: webApp
.
Kies een web-app in Windows, web-app op Linux, web-app voor containers, functie-app, functie-app op Linux, functie-app voor containers en mobiele app.
WebAppName
-
App Service-naam
string
. Vereist wanneer ConnectionType = AzureRM
.
Geef de naam op van een bestaande Azure App Service. App-services op basis van het geselecteerde app-type worden alleen weergegeven wanneer u de taakassistent gebruikt.
deployToSlotOrASE
-
implementeren in site- of App Service Environment-
Invoeralias: DeployToSlotOrASEFlag
.
boolean
. Facultatief. Gebruiken wanneer ConnectionType = AzureRM && WebAppKind != ""
. Standaardwaarde: false
.
Geef de optie op om te implementeren in een bestaande implementatiesite of Azure App Service-omgeving. Voor beide doelen is voor de taak een resourcegroepnaam vereist.
Als het implementatiedoel een site is, is de implementatie standaard naar de Production-site. Elke andere bestaande sitenaam kan worden opgegeven.
Als het implementatiedoel een Azure App Service-omgeving is, laat u de sitenaam staan Production
en geeft u alleen de naam van de resourcegroep op.
ResourceGroupName
-
resourcegroep
string
. Vereist wanneer DeployToSlotOrASEFlag = true
.
De naam van de resourcegroep is vereist wanneer het implementatiedoel een implementatiesite of een App Service-omgeving is.
Geef de Azure-resourcegroep op die de Hierboven opgegeven Azure App Service bevat.
SlotName
-
Slot
string
. Vereist wanneer DeployToSlotOrASEFlag = true
. Standaardwaarde: production
.
Geef een andere site op dan de productiesite.
DockerNamespace
-
register of naamruimte
string
. Vereist wanneer WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppKind = webAppHyperVContainer
.
Een wereldwijd unieke domeinnaam op het hoogste niveau voor uw specifieke register of naamruimte. Opmerking: de volledig gekwalificeerde naam van de installatiekopieën heeft de volgende indeling: {registry or namespace}/{repository}:{tag}
. Bijvoorbeeld myregistry.azurecr.io/nginx:latest
.
DockerNamespace
-
register of naamruimte
string
. Vereist wanneer WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppkind = webAppHyperVContainer
.
Een wereldwijd unieke domeinnaam op het hoogste niveau voor uw specifieke register of naamruimte. Opmerking: de volledig gekwalificeerde naam van de installatiekopieën heeft de volgende indeling: {registry or namespace}/{repository}:{tag}
. Bijvoorbeeld myregistry.azurecr.io/nginx:latest
.
DockerNamespace
-
register of naamruimte
string
. Vereist wanneer WebAppKind = webAppContainer || WebAppkind = functionAppContainer
.
Een wereldwijd unieke domeinnaam op het hoogste niveau voor uw specifieke register of naamruimte. Opmerking: de volledig gekwalificeerde naam van de installatiekopieën heeft de volgende indeling: {registry or namespace}/{repository}:{tag}
. Bijvoorbeeld myregistry.azurecr.io/nginx:latest
.
DockerRepository
-
afbeelding
string
. Vereist wanneer WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppKind = webAppHyperVContainer
.
De naam van de opslagplaats waarin de containerinstallatiekopieën worden opgeslagen. Opmerking: de volledig gekwalificeerde naam van de installatiekopieën heeft de volgende indeling: {registry or namespace}/{repository}:{tag}
. Bijvoorbeeld myregistry.azurecr.io/nginx:latest
.
DockerRepository
-
afbeelding
string
. Vereist wanneer WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppkind = webAppHyperVContainer
.
De naam van de opslagplaats waarin de containerinstallatiekopieën worden opgeslagen. Opmerking: de volledig gekwalificeerde naam van de installatiekopieën heeft de volgende indeling: {registry or namespace}/{repository}:{tag}
. Bijvoorbeeld myregistry.azurecr.io/nginx:latest
.
DockerRepository
-
afbeelding
string
. Vereist wanneer WebAppKind = webAppContainer || WebAppkind = functionAppContainer
.
De naam van de opslagplaats waarin de containerinstallatiekopieën worden opgeslagen. Opmerking: de volledig gekwalificeerde naam van de installatiekopieën heeft de volgende indeling: {registry or namespace}/{repository}:{tag}
. Bijvoorbeeld myregistry.azurecr.io/nginx:latest
.
DockerImageTag
-
tag
string
. Facultatief. Gebruiken wanneer WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppKind = webAppHyperVContainer
.
Tags zijn het mechanisme dat registers gebruiken om versiegegevens toe te passen op Docker-installatiekopieën. Opmerking: de volledig gekwalificeerde naam van de installatiekopieën heeft de volgende indeling: {registry or namespace}/{repository}:{tag}
. Bijvoorbeeld myregistry.azurecr.io/nginx:latest
.
DockerImageTag
-
tag
string
. Facultatief. Gebruiken wanneer WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppkind = webAppHyperVContainer
.
Tags zijn het mechanisme dat registers gebruiken om versiegegevens toe te passen op Docker-installatiekopieën. Opmerking: de volledig gekwalificeerde naam van de installatiekopieën heeft de volgende indeling: {registry or namespace}/{repository}:{tag}
. Bijvoorbeeld myregistry.azurecr.io/nginx:latest
.
DockerImageTag
-
tag
string
. Facultatief. Gebruiken wanneer WebAppKind = webAppContainer || WebAppkind = functionAppContainer
.
Tags zijn het mechanisme dat registers gebruiken om versiegegevens toe te passen op Docker-installatiekopieën. Opmerking: de volledig gekwalificeerde naam van de installatiekopieën heeft de volgende indeling: {registry or namespace}/{repository}:{tag}
. Bijvoorbeeld myregistry.azurecr.io/nginx:latest
.
VirtualApplication
-
virtuele toepassing
string
. Facultatief. Gebruiken wanneer WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && WebAppKind != functionApp && webAppKind != functionAppLinux && WebAppKind != ""
.
Geef de naam op van de virtuele toepassing die is geconfigureerd in Azure Portal. Deze optie is niet vereist voor implementaties naar de hoofdmap van de website. De virtuele toepassing moet zijn geconfigureerd voordat het webproject wordt geïmplementeerd.
VirtualApplication
-
virtuele toepassing
string
. Facultatief. Gebruiken wanneer WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != functionApp && webAppKind != functionAppLinux && WebAppKind != ""
.
Geef de naam op van de virtuele toepassing die is geconfigureerd in Azure Portal. Deze optie is niet vereist voor implementaties naar de hoofdmap van de website. De virtuele toepassing moet zijn geconfigureerd voordat het webproject wordt geïmplementeerd.
packageForLinux
-
pakket of map
Invoeralias: Package
.
string
. Vereist wanneer ConnectionType = PublishProfile || WebAppKind = webApp || WebAppKind = apiApp || WebAppKind = functionApp || WebAppKind = mobileApp || WebAppKind = webAppLinux || webAppKind = functionAppLinux
. Standaardwaarde: $(System.DefaultWorkingDirectory)/**/*.zip
.
Het bestandspad naar het pakket of naar een map met app-service-inhoud die wordt gegenereerd door MSBuild of een gecomprimeerd zip- of war-bestand.
Variabelen zijn build- en release-. jokertekens worden ondersteund.
Bijvoorbeeld $(System.DefaultWorkingDirectory)/\*\*/\*.zip
of $(System.DefaultWorkingDirectory)/\*\*/\*.war
.
RuntimeStack
-
Runtime Stack-
string
. Facultatief. Gebruiken wanneer WebAppKind = webAppLinux
.
Geef het framework en de versie op.
RuntimeStackFunction
-
Runtime Stack-
string
. Facultatief. Gebruiken wanneer WebAppKind = functionAppLinux
. Toegestane waarden: DOTNET|2.2
(DOTNET|2.2 (functionapp v2)), DOTNET|3.1
(DOTNET|3.1 (functionapp v3)), JAVA|8
(JAVA|8 (functionapp v2/v3)), JAVA|11
(JAVA|11 (functionapp v3)), NODE|8
(NODE|8 (functionapp v2)), NODE|10
(NODE|10 (functionapp v2/v3)), NODE|12
(NODE|12 (functionapp v3)), NODE|14
(NODE|14 (functionapp v3)), PYTHON|3.6
(PYTHON|3.6 (functionapp v2/v3)), PYTHON|3.7
(PYTHON|3.7 (functionapp v2/v3)), PYTHON|3.8
(PYTHON|3.8 (functionapp v3)).
Geef het framework en de versie op. Raadpleeg het overzicht van de runtimeversies van Azure Functions voor ondersteunde runtimeversies. Oude waarden zoals DOCKER|microsoft/azure-functions-*
zijn afgeschaft. Gebruik de nieuwe waarden uit de vervolgkeuzelijst.
RuntimeStackFunction
-
Runtime Stack-
string
. Facultatief. Gebruiken wanneer WebAppKind = functionAppLinux
. Toegestane waarden: DOCKER|microsoft/azure-functions-dotnet-core2.0:2.0
(.NET), DOCKER|microsoft/azure-functions-node8:2.0
(JavaScript).
Geef het framework en de versie op.
StartupCommand
-
opdracht Opstarten
string
. Facultatief. Gebruiken wanneer WebAppKind = webAppLinux || WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppKind = functionAppLinux || WebAppKind = webAppHyperVContainer
.
Geef de opdracht Opstarten op. Bijvoorbeeld:
dotnet exec filename.dll
dotnet filename.dll
.
StartupCommand
-
opdracht Opstarten
string
. Facultatief. Gebruiken wanneer WebAppKind = webAppLinux || WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppKind = functionAppLinux || WebAppkind = webAppHyperVContainer
.
Geef de opdracht Opstarten op. Bijvoorbeeld:
dotnet exec filename.dll
dotnet filename.dll
.
StartupCommand
-
opdracht Opstarten
string
. Facultatief. Gebruiken wanneer WebAppKind = webAppLinux || WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppKind = functionAppLinux
.
Geef de opdracht Opstarten op. Bijvoorbeeld:
dotnet exec filename.dll
dotnet filename.dll
.
StartupCommand
-
opdracht Opstarten
string
. Facultatief. Gebruiken wanneer WebAppKind = webAppLinux || WebAppKind = webAppContainer || WebAppkind = functionAppContainer || WebAppKind = functionAppLinux
.
Geef de opdracht Opstarten op. Bijvoorbeeld dotnet run
dotnet filename.dll
.
StartupCommand
-
opdracht Opstarten
string
. Facultatief. Gebruiken wanneer WebAppKind = webAppLinux || WebAppKind = webAppContainer || WebAppkind = functionAppContainer
.
Geef de opdracht Opstarten op.
ScriptType
-
implementatiescripttype
string
. Facultatief. Gebruiken wanneer ConnectionType = AzureRM && WebAppKind != "" && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer
. Toegestane waarden: Inline Script
, File Path
(scriptbestandspad).
Hiermee past u de implementatie aan door een script op te geven dat wordt uitgevoerd op Azure App Service na een geslaagde implementatie. Kies inline-implementatiescript of het pad en de naam van een scriptbestand. Meer informatie over Azure App Service-implementatie.
ScriptType
-
implementatiescripttype
string
. Facultatief. Gebruiken wanneer ConnectionType = AzureRM && WebAppKind != "" && WebAppKind != webAppContainer && WebAppkind != functionAppContainer
. Toegestane waarden: Inline Script
, File Path
(scriptbestandspad).
Hiermee past u de implementatie aan door een script op te geven dat wordt uitgevoerd op Azure App Service na een geslaagde implementatie. Kies inline-implementatiescript of het pad en de naam van een scriptbestand. Meer informatie over Azure App Service-implementatie.
InlineScript
-
inlinescript
string
. Vereist wanneer ScriptType == Inline Script && ConnectionType = AzureRM && WebAppKind != "" && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer
. Standaardwaarde: :: You can provide your deployment commands here. One command per line.
.
Het script dat moet worden uitgevoerd. U kunt hier uw implementatieopdrachten opgeven, één opdracht per regel. Zie het volgende voorbeeld.
InlineScript
-
inlinescript
string
. Vereist wanneer ScriptType == Inline Script && ConnectionType = AzureRM && WebAppKind != "" && WebAppKind != webAppContainer && WebAppkind != functionAppContainer
. Standaardwaarde: :: You can provide your deployment commands here. One command per line.
.
Het script dat moet worden uitgevoerd. U kunt hier uw implementatieopdrachten opgeven, één opdracht per regel. Zie het volgende voorbeeld.
ScriptPath
-
implementatiescriptpad
string
. Vereist wanneer ScriptType == File Path && ConnectionType = AzureRM && WebAppKind != "" && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer
.
Het pad en de naam van het script dat moet worden uitgevoerd.
ScriptPath
-
implementatiescriptpad
string
. Vereist wanneer ScriptType == File Path && ConnectionType = AzureRM && WebAppKind != "" && WebAppKind != webAppContainer && WebAppkind != functionAppContainer
.
Het pad en de naam van het script dat moet worden uitgevoerd.
WebConfigParameters
-
parameters genereren web.config voor Python-, Node.js-, Go- en Java-apps
string
. Facultatief. Gebruiken wanneer WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war
.
Er wordt een standaard Web.config
gegenereerd en geïmplementeerd in Azure App Service als de toepassing er geen heeft. De waarden in web.config
kunnen worden bewerkt en variëren op basis van het toepassingsframework. Voor node.js
toepassingen heeft web.config
bijvoorbeeld een opstartbestand en iis_node modulewaarden. Deze bewerkingsfunctie is alleen bedoeld voor de gegenereerde web.config
. Meer informatie over Azure App Service-implementatie.
WebConfigParameters
-
parameters genereren web.config voor Python-, Node.js-, Go- en Java-apps
string
. Facultatief. Gebruiken wanneer WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war
.
Er wordt een standaard Web.config
gegenereerd en geïmplementeerd in Azure App Service als de toepassing er geen heeft. De waarden in web.config
kunnen worden bewerkt en variëren op basis van het toepassingsframework. Voor node.js
toepassingen heeft web.config
bijvoorbeeld een opstartbestand en iis_node modulewaarden. Deze bewerkingsfunctie is alleen bedoeld voor de gegenereerde web.config
. Meer informatie over Azure App Service-implementatie.
AppSettings
-
app-instellingen
string
. Facultatief. Gebruiken wanneer ConnectionType = AzureRM
.
Hiermee worden instellingen voor web-apps bewerkt met behulp van de syntaxis -key value
. Waarden die spaties bevatten, moeten tussen dubbele aanhalingstekens worden geplaatst. Voorbeelden: -Port 5000 -RequestTimeout 5000
en -WEBSITE_TIME_ZONE "Eastern Standard Time"
. Als u twee of meer sleutelwaarden wilt opgeven, moeten de sleutelwaarden worden gescheiden door een spatie. Voorbeeld: -key1 "Value1" -Key2 "Value2"
.
ConfigurationSettings
-
Configuratie-instellingen
string
. Facultatief. Gebruiken wanneer ConnectionType = AzureRM
.
Hiermee bewerkt u de configuratie-instellingen voor web-apps met behulp van de syntaxis -key value
. Waarden die spaties bevatten, moeten tussen dubbele aanhalingstekens worden geplaatst. Voorbeeld: -phpVersion 5.6 -linuxFxVersion node|6.11
.
enableCustomDeployment
-
Implementatiemethode selecteren
Invoeralias: UseWebDeploy
.
boolean
. Facultatief. Gebruiken wanneer ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar
. Standaardwaarde: false
.
Als dit selectievakje of onwaar is, detecteert de taak automatisch de beste implementatiemethode op basis van het app-type, de pakketindeling en andere parameters. Schakel deze optie in de taakassistent in om de ondersteunde implementatiemethoden weer te geven en kies er een voor het implementeren van uw app.
enableCustomDeployment
-
Implementatiemethode selecteren
Invoeralias: UseWebDeploy
.
boolean
. Facultatief. Gebruiken wanneer ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar
. Standaardwaarde: false
.
Als dit selectievakje of onwaar is, detecteert de taak automatisch de beste implementatiemethode op basis van het app-type, de pakketindeling en andere parameters. Schakel deze optie in de taakassistent in om de ondersteunde implementatiemethoden weer te geven en kies er een voor het implementeren van uw app.
DeploymentType
-
implementatiemethode
string
. Vereist wanneer UseWebDeploy == true && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar
. Toegestane waarden: webDeploy
(Web Deploy), zipDeploy
(Zip Deploy), runFromZip
(Uitvoeren vanuit pakket). Standaardwaarde: webDeploy
.
Bepaalt de implementatiemethode voor de app.
DeploymentType
-
implementatiemethode
string
. Vereist wanneer UseWebDeploy == true && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar
. Toegestane waarden: webDeploy
(Web Deploy), zipDeploy
(Zip Deploy), runFromZip
(Uitvoeren vanuit pakket). Standaardwaarde: webDeploy
.
Bepaalt de implementatiemethode voor de app.
TakeAppOfflineFlag
-
app offline halen
boolean
. Facultatief. Gebruiken wanneer UseWebDeploy == true && DeploymentType != runFromZip && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar
. Standaardwaarde: true
.
Geef deze optie op om Azure App Service offline te halen door een app_offline.htm
-bestand in de hoofdmap te plaatsen voordat de synchronisatiebewerking begint. Het bestand wordt verwijderd nadat de synchronisatie is voltooid.
TakeAppOfflineFlag
-
app offline halen
boolean
. Facultatief. Gebruiken wanneer UseWebDeploy == true && DeploymentType != runFromZip && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar
. Standaardwaarde: true
.
Geef deze optie op om Azure App Service offline te halen door een app_offline.htm
-bestand in de hoofdmap te plaatsen voordat de synchronisatiebewerking begint. Het bestand wordt verwijderd nadat de synchronisatie is voltooid.
SetParametersFile
-
SetParameters-bestand
string
. Facultatief. Gebruiken wanneer UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar
.
De locatie van het SetParameters.xml
-bestand dat moet worden gebruikt.
SetParametersFile
-
SetParameters-bestand
string
. Facultatief. Gebruiken wanneer UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar
.
De locatie van het SetParameters.xml
-bestand dat moet worden gebruikt.
RemoveAdditionalFilesFlag
-
Extra bestanden verwijderen op doel-
boolean
. Facultatief. Gebruiken wanneer UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar
. Standaardwaarde: false
.
Geef 'true' op om bestanden te verwijderen in De Azure App Service die geen overeenkomende bestanden bevatten in het App Service-pakket of de map. Hiermee worden ook alle bestanden verwijderd die betrekking hebben op elke extensie die op deze Azure App Service is geïnstalleerd. Als u dit wilt voorkomen, schakelt u het selectievakje Exclude files from App_Data folder
in.
RemoveAdditionalFilesFlag
-
Extra bestanden verwijderen op doel-
boolean
. Facultatief. Gebruiken wanneer UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar
. Standaardwaarde: false
.
Geef 'true' op om bestanden te verwijderen in De Azure App Service die geen overeenkomende bestanden bevatten in het App Service-pakket of de map. Hiermee worden ook alle bestanden verwijderd die betrekking hebben op elke extensie die op deze Azure App Service is geïnstalleerd. Als u dit wilt voorkomen, schakelt u het selectievakje Exclude files from App_Data folder
in.
ExcludeFilesFromAppDataFlag
-
bestanden uitsluiten uit de map App_Data
boolean
. Facultatief. Gebruiken wanneer UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar
. Standaardwaarde: true
.
Geef de optie op om te voorkomen dat bestanden in de map App_Data
worden geïmplementeerd naar/verwijderd uit Azure App Service.
ExcludeFilesFromAppDataFlag
-
bestanden uitsluiten uit de map App_Data
boolean
. Facultatief. Gebruiken wanneer UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar
. Standaardwaarde: true
.
Geef de optie op om te voorkomen dat bestanden in de map App_Data
worden geïmplementeerd naar/verwijderd uit Azure App Service.
AdditionalArguments
-
Aanvullende argumenten
string
. Facultatief. Gebruiken wanneer UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar
. Standaardwaarde: -retryAttempts:6 -retryInterval:10000
.
Aanvullende argumenten voor Web Deploy volgens de syntaxis -key:value
. Deze worden toegepast bij het implementeren van De Azure App Service. Voorbeelden: -disableLink:AppPoolExtension -disableLink:ContentExtension
. Meer informatie over Web Deploy Operation Settings.
AdditionalArguments
-
Aanvullende argumenten
string
. Facultatief. Gebruiken wanneer UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar
. Standaardwaarde: -retryAttempts:6 -retryInterval:10000
.
Aanvullende argumenten voor Web Deploy volgens de syntaxis -key:value
. Deze worden toegepast bij het implementeren van De Azure App Service. Voorbeelden: -disableLink:AppPoolExtension -disableLink:ContentExtension
. Meer informatie over Web Deploy Operation Settings.
RenameFilesFlag
-
Naam van vergrendelde bestanden wijzigen
boolean
. Facultatief. Gebruiken wanneer UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar
. Standaardwaarde: true
.
Geef de standaardwaarde op voor het inschakelen van de msdeploy-vlag MSDEPLOY_RENAME_LOCKED_FILES=1
in de azure App Service-toepassingsinstellingen. Als deze optie is ingesteld, kan msdeploy de naam van bestanden wijzigen die zijn vergrendeld tijdens de implementatie van de app.
RenameFilesFlag
-
Naam van vergrendelde bestanden wijzigen
boolean
. Facultatief. Gebruiken wanneer UseWebDeploy == true && DeploymentType == webDeploy && ConnectionType = AzureRM && WebAppKind != webAppLinux && WebAppKind != webAppContainer && WebAppkind != functionAppContainer && webAppKind != functionAppLinux && WebAppKind != "" && Package NotEndsWith .war && Package NotEndsWith .jar
. Standaardwaarde: true
.
Geef de standaardwaarde op voor het inschakelen van de msdeploy-vlag MSDEPLOY_RENAME_LOCKED_FILES=1
in de azure App Service-toepassingsinstellingen. Als deze optie is ingesteld, kan msdeploy de naam van bestanden wijzigen die zijn vergrendeld tijdens de implementatie van de app.
enableXmlTransform
-
XML-transformatie
Invoeralias: XmlTransformation
.
boolean
. Facultatief. Gebruiken wanneer WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war
. Standaardwaarde: false
.
De configuratietransformaties worden uitgevoerd voor *.Release.config
en *.<EnvironmentName>.config
op de *.config file
. Configuratietransformaties worden uitgevoerd voordat variabelen worden vervangen.
XML-transformaties worden alleen ondersteund voor het Windows-platform.
enableXmlTransform
-
XML-transformatie
Invoeralias: XmlTransformation
.
boolean
. Facultatief. Gebruiken wanneer WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war
. Standaardwaarde: false
.
De configuratietransformaties worden uitgevoerd voor *.Release.config
en *.<EnvironmentName>.config
op de *.config file
. Configuratietransformaties worden uitgevoerd voordat variabelen worden vervangen.
XML-transformaties worden alleen ondersteund voor het Windows-platform.
enableXmlVariableSubstitution
-
xml-variabele vervangen
Invoeralias: XmlVariableSubstitution
.
boolean
. Facultatief. Gebruiken wanneer WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war
. Standaardwaarde: false
.
Variabelen die zijn gedefinieerd in de build- of release-pijplijn, worden vergeleken met de sleutel- of naamvermeldingen in de configSections
, appSettings
, applicationSettings
en connectionStrings
secties van een configuratiebestand en parameters.xml
bestand. Variabele vervanging wordt uitgevoerd na configuratietransformaties.
Als dezelfde variabelen zijn gedefinieerd in de release-pijplijn en in de fase, vervangen de fasevariabelen de releasepijplijnvariabelen. Meer informatie over [VERVANGING van XML-variabelen](/azure/devops/pipelines/tasks/transforms-variable-substitute#xml-variable-substitute).
enableXmlVariableSubstitution
-
xml-variabele vervangen
Invoeralias: XmlVariableSubstitution
.
boolean
. Facultatief. Gebruiken wanneer WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war
. Standaardwaarde: false
.
Variabelen die zijn gedefinieerd in de build- of release-pijplijn, worden vergeleken met de sleutel- of naamvermeldingen in de configSections
, appSettings
, applicationSettings
en connectionStrings
secties van een configuratiebestand en parameters.xml
bestand. Variabele vervanging wordt uitgevoerd na configuratietransformaties.
Als dezelfde variabelen zijn gedefinieerd in de release-pijplijn en in de fase, vervangen de fasevariabelen de releasepijplijnvariabelen. Meer informatie over [VERVANGING van XML-variabelen](/azure/devops/pipelines/tasks/transforms-variable-substitute#xml-variable-substitute).
JSONFiles
-
JSON-variabele vervangen
string
. Facultatief. Gebruiken wanneer WebAppKind != webAppContainer && WebAppKind != webAppHyperVContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war
.
Biedt een door nieuwe regels gescheiden lijst met JSON-bestanden om de variabele waarden te vervangen. Bestandsnamen moeten relatief zijn ten opzichte van de hoofdmap. Als u JSON-variabelen wilt vervangen die genest of hiërarchisch zijn, geeft u deze op met behulp van JSONPath
expressies. Als u bijvoorbeeld de waarde van ConnectionString
in het onderstaande voorbeeld wilt vervangen, definieert u een variabele met de naam Data.DefaultConnection.ConnectionString
in de build- of release-pijplijn (of release-pijplijnen).
{
"Data": {
"DefaultConnection": {
"ConnectionString": "Server=(localdb)\SQLEXPRESS;Database=MyDB;Trusted_Connection=True"
}
}
}
Een variabele vervanging wordt uitgevoerd na configuratietransformaties. Opmerking: build- en release-pijplijnvariabelen worden uitgesloten van vervanging. Meer informatie over vervanging van JSON-variabelen.
JSONFiles
-
JSON-variabele vervangen
string
. Facultatief. Gebruiken wanneer WebAppKind != webAppContainer && WebAppkind != functionAppContainer && WebAppKind != webAppLinux && webAppKind != functionAppLinux && Package NotEndsWith .war
.
Biedt een door nieuwe regels gescheiden lijst met JSON-bestanden om de variabele waarden te vervangen. Bestandsnamen moeten relatief zijn ten opzichte van de hoofdmap. Als u JSON-variabelen wilt vervangen die genest of hiërarchisch zijn, geeft u deze op met behulp van JSONPath
expressies. Als u bijvoorbeeld de waarde van ConnectionString
in het onderstaande voorbeeld wilt vervangen, definieert u een variabele met de naam Data.DefaultConnection.ConnectionString
in de build- of release-pijplijn (of release-pijplijnen).
{
"Data": {
"DefaultConnection": {
"ConnectionString": "Server=(localdb)\SQLEXPRESS;Database=MyDB;Trusted_Connection=True"
}
}
}
Een variabele vervanging wordt uitgevoerd na configuratietransformaties. Opmerking: build- en release-pijplijnvariabelen worden uitgesloten van vervanging. Meer informatie over vervanging van JSON-variabelen.
Opties voor taakbeheer
Alle taken hebben besturingsopties naast hun taakinvoer. Zie Opties en algemene taakeigenschappenvoor meer informatie.
Uitvoervariabelen
Deze taak definieert de volgende uitvoervariabelen, die u kunt gebruiken in downstreamstappen, taken en fasen.
AppServiceApplicationUrl
toepassings-URL van de geselecteerde App Service.
Opmerkingen
- Vereisten voor de taak
- gebruiksnotities
- implementatiemethoden
- problemen met oplossen
- veelgestelde vragen
Gebruik deze taak om te implementeren in een bereik van App Services in Azure. De taak werkt op platformoverschrijdende agents met Windows, Linux of Mac en maakt gebruik van verschillende onderliggende implementatietechnologieën.
De taak werkt voor ASP.NET, ASP.NET Core, PHP, Java, Python, Goen Node.js webtoepassingen.
De taak kan worden gebruikt om te implementeren in een bereik van Azure App Services, zoals:
- Web Apps op windows- en Linux-
- Web Apps for Containers-
- Functie-apps in zowel Windows- als Linux-
- Functie-apps voor containers
- WebJobs
- Apps die zijn geconfigureerd onder Azure App Service Environments
Vereisten voor de taak
De volgende vereisten moeten worden ingesteld op de doelcomputer(s) om de taak correct te laten werken.
App Service-exemplaar. De taak wordt gebruikt om een Web App-project of Azure Function-project te implementeren in een bestaand Azure App Service-exemplaar, dat moet bestaan voordat de taak wordt uitgevoerd. Het App Service-exemplaar kan worden gemaakt vanuit de Azure Portal en daar geconfigureerd. U kunt ook de Azure PowerShell-taak gebruiken om Azure PowerShell-scripts uit te voeren om de web-app in te richten en te configureren.
Azure-abonnement. Als u wilt implementeren in Azure, moet een Azure-abonnement worden gekoppeld aan de pijplijn. De taak werkt niet met de klassieke Azure-serviceverbinding en deze verbindingen worden niet vermeld in de instellingen van de taak.
Gebruiksnotities
- De taak werkt alleen met de Azure Resource Manager-API's.
- Als u SSL-fouten wilt negeren, definieert u een variabele met de naam
VSTS_ARM_REST_IGNORE_SSL_ERRORS
met waardetrue
in de pijplijn. Als u implementeert op een site die is geconfigureerd voor automatisch wisselen, mislukt de wissel, tenzij uSCM_SKIP_SSL_VALIDATION
ofSCM_SKIP_ASE_SSL_VALIDATION
instelt op1
in de configuratie-instellingen van app-services. - Voor .NET-apps die gericht zijn op Web App in Windows, voorkomt u implementatiefouten met de fout
door ervoor te zorgen dat vergrendelde bestanden wijzigen en App offline halen instellingen zijn ingeschakeld. Gebruik voor implementatie zonder downtime de optie voor het wisselen van sites. - Wanneer u implementeert in een App Service waarvoor Application Insights is geconfigureerd en u hebt Extra bestanden verwijderen op doel-, moet u ook bestanden uitsluiten uit de App_Data map inschakelen om de Application Insights-extensie in een veilige status te behouden. Dit is vereist omdat de continue webtaak van Application Insights is geïnstalleerd in de map App_Data.
Implementatiemethoden
Er zijn verschillende implementatiemethoden beschikbaar in deze taak. Web Deploy (msdeploy.exe) is de standaardinstelling. Als u de implementatieoptie wilt wijzigen, vouwt u extra implementatieopties uit en schakelt u implementatiemethode selecteren uit extra implementatieopties op basis van pakketten te kiezen.
Op basis van het type Azure App Service en agent kiest de taak een geschikte implementatietechnologie. De verschillende implementatietechnologieën die door de taak worden gebruikt, zijn:
De taak probeert standaard de juiste implementatietechnologie te selecteren op basis van het invoerpakkettype, het App Service-type en het agentbesturingssysteem.
Logica automatisch detecteren
Voor windows-agents.
App Service-type | Pakkettype | Implementatiemethode |
---|---|---|
WebApp in Linux of functie-app in Linux | Map/Zip/jar War |
Zip Deploy War Deploy |
WebApp voor containers (Linux) of functie-app voor containers (Linux) | De app-instellingen bijwerken | NA |
WebApp in Windows, functie-app in Windows, API-app of mobiele app | War Jar MsBuild-pakkettype of implementeren in virtuele toepassing Map/Zip |
War Deploy Zip Deploy Web Deploy if postDeploymentScript == true, Zip Deploy else, Run From Package |
Bij niet-Windows-agents (voor elk App Service-type) is de taak afhankelijk van Kudu REST API's om de app te implementeren.
Web implementeren
Web Deploy (msdeploy.exe) kan worden gebruikt voor het implementeren van een web-app in Windows of een functie-app in Azure App Service met behulp van een Windows-agent. Web Deploy is rijk aan functies en biedt opties zoals:
Naam van vergrendelde bestanden wijzigen: Wijzig de naam van een bestand dat nog steeds wordt gebruikt door de webserver door de msdeploy-vlag in te schakelen
MSDEPLOY\_RENAME\_LOCKED\_FILES=1
in de Azure App Service-instellingen. Met deze optie, indien ingesteld, kan msdeploy de naam van bestanden wijzigen die zijn vergrendeld tijdens de implementatie van de app.Extra bestanden op doel verwijderen: Verwijdert bestanden in Azure App Service die geen overeenkomende bestanden bevatten in het App Service-artefactpakket of de map die wordt geïmplementeerd.
Bestanden uitsluiten uit de map App_Data: Voorkomen dat bestanden in de map App_Data (in het artefactpakket/de map die wordt geïmplementeerd) worden geïmplementeerd in Azure App Service
Extra argumenten voor web implementeren: argumenten die worden toegepast bij het implementeren van Azure App Service. Voorbeeld:
-disableLink:AppPoolExtension -disableLink:ContentExtension
. Zie Web Deploy Operation Settingsvoor meer voorbeelden van web-implementatiebewerkingsinstellingen.
Installeer Web Deploy op de agent vanaf Web Deploy 3.6. Web Deploy 3.5 moet worden geïnstalleerd zonder de gebundelde SQL-ondersteuning. U hoeft geen aangepaste instellingen te kiezen bij het installeren van Web Deploy. Web Deploy is geïnstalleerd op C:/Program Files (x86)/IIS/Microsoft Web Deploy V3
.
Kudu REST API's
Kudu REST API's werken op windows- en Linux-automatiseringsagents wanneer het doel een web-app in Windows, web-app op Linux (ingebouwde bron) of functie-app is. De taak maakt gebruik van Kudu om bestanden te kopiëren naar de Azure App Service.
Container Registry
Werkt op zowel Windows- als Linux-automatiseringsagenten wanneer het doel een web-app voor containers is. De taak werkt de app bij door het juiste containerregister, de opslagplaats, de naam van de installatiekopieën en taggegevens in te stellen. U kunt de taak ook gebruiken om een opstartopdracht voor de containerinstallatiekopieën door te geven.
Zip Deploy
Er wordt een .zip-implementatiepakket verwacht en de bestandsinhoud geïmplementeerd in de map wwwroot van de App Service- of Functie-app in Azure. Met deze optie worden alle bestaande inhoud in de map wwwroot overschreven. Zie Zip-implementatie voor Azure Functionsvoor meer informatie.
Uitvoeren vanuit pakket
Verwacht hetzelfde implementatiepakket als Zip Deploy. In plaats van bestanden te implementeren in de map wwwroot, wordt het hele pakket echter gekoppeld door de Functions-runtime en bestanden in de map wwwroot alleen-lezen. Zie Uw Azure Functions uitvoeren vanuit een pakketbestandvoor meer informatie.
War Deploy
Verwacht een .war-implementatiepakket en implementeert de bestandsinhoud in de map wwwroot of webapps map van de App Service in Azure.
Probleemoplossing
Ik kan geen web implementeren in mijn Azure App Service met behulp van Microsoft Entra ID-verificatie van mijn Windows-agent
De Azure App Service-implementatietaak ondersteunt het maken van verbinding met Microsoft Azure met een ARM-serviceverbinding met behulp van Microsoft Entra ID, tenzij de volgende drie voorwaarden aanwezig zijn:
- U gebruikt de indeling Web Deploy-pakket op een Windows-agent
- Uw agent wordt uitgevoerd met een oudere versie van msdeploy.exe (bijvoorbeeld wanneer u de installatiekopie van de windows-2019 gehoste agent)
- Basisverificatie is uitgeschakeld voor uw Azure App Service
Als deze drie voorwaarden aanwezig zijn, krijgt u een foutmelding zoals 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.
Als u dit probleem wilt oplossen, kunt u kiezen uit de volgende opties, in volgorde van voorkeur.
- Werk de agentinstallatiekopieën bij. Als u gehoste agents gebruikt, gaat u van windows-2019- naar windows-2022 (of meest recente). Als u zelf-hostende agents gebruikt, installeert u Visual Studio 2022 op de agent om een nieuwere versie van msdeploy.exeop te halen.
- Als u afhankelijk bent van een oudere agentinstallatiekopieën en de agent voor uw pijplijn niet kunt bijwerken, kunt u de taak splitsen zodat de Azure App Service-implementatietaak wordt uitgevoerd op windows-2022- (of meest recente).
- Als geen van deze opties mogelijk is, kunt u basisverificatie inschakelen voor uw Azure App Service.
Fout: kan het toegangstoken voor Azure niet ophalen. Controleer of de gebruikte service-principal geldig is en niet is verlopen.
De taak gebruikt de service-principal in de serviceverbinding om te verifiëren met Azure. Als de service-principal is verlopen of geen machtigingen heeft voor de App Service, mislukt de taak met deze fout. Controleer de geldigheid van de gebruikte service-principal en of deze aanwezig is in de app-registratie. Zie Op rollen gebaseerd toegangsbeheer gebruiken voor het beheren van de toegang tot uw Azure-abonnementsresourcesvoor meer informatie. Dit blogbericht bevat ook meer informatie over het gebruik van service-principalverificatie.
SSL-fout
Als u een certificaat in App Service wilt gebruiken, moet het certificaat worden ondertekend door een vertrouwde certificeringsinstantie. Als uw web-app u certificaatvalidatiefouten geeft, gebruikt u waarschijnlijk een zelfondertekend certificaat. Stel een variabele met de naam VSTS_ARM_REST_IGNORE_SSL_ERRORS
in op de waarde true
in de build- of release-pijplijn om de fout op te lossen.
Een release loopt lang vast en mislukt
Dit probleem kan het gevolg zijn van onvoldoende capaciteit in uw App Service-plan. U kunt dit probleem oplossen door het App Service-exemplaar omhoog te schalen om de beschikbare CPU, RAM en schijfruimte te vergroten of een ander App Service-plan te gebruiken.
5xx foutcodes
Als u een fout van 5xx ziet, de status van uw Azure-service controleren.
Azure Function werkt plotseling niet meer
Azure Functions werkt mogelijk plotseling niet meer als er meer dan één jaar is verstreken sinds de laatste implementatie. Als u implementeert met 'RunFromPackage' in 'deploymentMethod', wordt een SAS met een vervaldatum van 1 jaar gegenereerd en ingesteld als de waarde 'WEBSITE_RUN_FROM_PACKAGE' in de toepassingsconfiguratie. Azure Functions gebruikt deze SAS om te verwijzen naar het pakketbestand voor de uitvoering van de functie. Als de SAS is verlopen, wordt de functie dus niet uitgevoerd. U kunt dit probleem oplossen door opnieuw te implementeren om een SAS te genereren met een vervaldatum van één jaar.
Fout: Er is geen pakket gevonden met het opgegeven patroon
Controleer of het pakket dat in de taak wordt vermeld, is gepubliceerd als een artefact in de build of een vorige fase en is gedownload in de huidige taak.
Fout: Publiceren met de optie zip deploy wordt niet ondersteund voor het pakkettype msBuild
Webpakketten die zijn gemaakt via de MSBuild-taak (met standaardargumenten) hebben een geneste mapstructuur die alleen correct kan worden geïmplementeerd door Web Deploy. De implementatieoptie publiceren naar zip kan niet worden gebruikt om deze pakketten te implementeren. Voer de volgende stappen uit om de verpakkingsstructuur te converteren:
Wijzig in de taak Oplossing bouwen de MSBuild-argumenten in
/p:DeployOnBuild=true /p:DeployDefaultTarget=WebPublish /p:WebPublishMethod=FileSystem /p:DeleteExistingFiles=True /p:publishUrl="$(System.DefaultWorkingDirectory)\\WebAppContent"
:Voeg een archieftaak toe en wijzig de waarden als volgt:
Wijzig hoofdmap of bestand om te archiveren in
$(System.DefaultWorkingDirectory)\\WebAppContent
.Schakel het selectievakje naam van de hoofdmap vooraf opgeven om paden te archiveren in:
Implementatie van web-apps in Windows is geslaagd, maar de app werkt niet
Dit kan zijn omdat web.config niet aanwezig is in uw app. U kunt een web.config-bestand toevoegen aan uw bron of er automatisch een genereren met behulp van de opties voor bestandstransformaties en variabele vervanging van de taak.
Klik op de taak en ga naar Parameters genereren web.config voor Python, Node.js, Go en Java-apps.
Klik op de knop Meer web.config parameters genereren voor Python, Node.js, Go- en Java-apps om de parameters te bewerken.
Selecteer uw toepassingstype in de vervolgkeuzelijst.
Klik op OK. Hiermee worden web.config parameters ingevuld die nodig zijn om web.configte genereren.
Notitie
Deze sectie is afgeschaft en is vervangen door de taak Bestandstransformatie.
ERROR_FILE_IN_USE
Bij het implementeren van .NET-apps in Web App in Windows kan de implementatie mislukken met foutcode ERROR_FILE_IN_USE. Als u de fout wilt oplossen, moet u ervoor zorgen dat vergrendelde bestanden wijzigen en App offline halen opties zijn ingeschakeld in de taak. Gebruik sleufwisseling voor implementaties zonder downtime.
U kunt ook methode Uitvoeren vanuit pakket gebruiken methode om resourcevergrendeling te voorkomen.
Fout bij web implementeren
Als u web deploy gebruikt om uw app te implementeren, wordt in sommige foutscenario's Web Deploy een foutcode in het logboek weergegeven. Zie Foutcodes voor web implementerenvoor informatie over het oplossen van een web-implementatiefout.
Implementatie van web-apps in App Service Environment (ASE) werkt niet
- Zorg ervoor dat de Azure DevOps-buildagent zich op hetzelfde VNET (subnet) bevindt als de Interne Load Balancer (ILB) van ASE. Hierdoor kan de agent code ophalen uit Azure DevOps en implementeren naar ASE.
- Als u Azure DevOps gebruikt, hoeft de agent niet toegankelijk te zijn vanaf internet, maar alleen uitgaande toegang nodig om verbinding te maken met Azure DevOps Service.
- Als u TFS/Azure DevOps Server gebruikt die is geïmplementeerd in een virtueel netwerk, kan de agent volledig worden geïsoleerd.
- De buildagent moet worden geconfigureerd met de DNS-configuratie van de web-app waarop deze moet worden geïmplementeerd. Omdat de privé-resources in het virtuele netwerk geen vermeldingen in Azure DNS hebben, moet dit worden toegevoegd aan het hosts-bestand op de agentcomputer.
- Als een zelfondertekend certificaat wordt gebruikt voor de ASE-configuratie, moet de optie
-allowUntrusted
worden ingesteld in de implementatietaak voor MSDeploy. Het wordt ook aanbevolen om de variabeleVSTS_ARM_REST_IGNORE_SSL_ERRORS
in te stellen op true. Als een certificaat van een certificeringsinstantie wordt gebruikt voor de ASE-configuratie, is dit niet nodig. Als u implementeert op een site die is geconfigureerd voor automatisch wisselen, mislukt de wissel, tenzij uSCM_SKIP_SSL_VALIDATION
ofSCM_SKIP_ASE_SSL_VALIDATION
instelt op1
in de configuratie-instellingen van app-services.
Veelgestelde vragen
Wat is het verschil tussen de AzureWebApp
en AzureRmWebAppDeployment
taken?
De Azure-web-app-taak (AzureWebApp
) is de eenvoudigste manier om te implementeren in een Azure-web-app. Uw implementatie gebeurt standaard met de hoofdtoepassing in de Azure-web-app.
De Azure App Service Deploy-taak (AzureRmWebAppDeployment
) meer aangepaste scenario's kan verwerken, zoals:
- Configuratie-instellingen wijzigen in webpakketten en XML-parametersbestanden.
- Implementeren met Web Deploy, als u gewend bent aan het IIS-implementatieproces.
- Implementeren in virtuele toepassingen.
- Implementeren naar andere app-typen, zoals container-apps, functie-apps, webtaken of API- en mobiele apps.
Notitie
Bestandstransformaties en het vervangen van variabelen worden ook ondersteund door de afzonderlijke taak Bestandstransformatie voor gebruik in Azure Pipelines. U kunt de taak Bestandstransformatie gebruiken om bestandstransformaties en variabele vervangingen toe te passen op configuratie- en parameterbestanden.
Hoe moet ik mijn serviceverbinding configureren?
Voor deze taak is een Azure Resource Manager-serviceverbindingvereist.
Hoe moet ik de implementatie van webtaken configureren met Application Insights?
Wanneer u implementeert in een App Service, moet u ook Exclude files from the App_Data folder
inschakelen als u Application Insights hebt geconfigureerd en u Remove additional files at destination
hebt ingeschakeld. Als u deze optie inschakelt, blijft de Application Insights-extensie veilig. Deze stap is vereist omdat de continue webtaak van Application Insights is geïnstalleerd in de map App_Data.
Hoe moet ik mijn agent configureren als deze zich achter een proxy bevindt terwijl ik implementeer in App Service?
Als uw zelf-hostende agent een webproxy vereist, kunt u de agent informeren over de proxy tijdens de configuratie. Hierdoor kan uw agent via de proxy verbinding maken met Azure Pipelines of Azure DevOps Server. Meer informatie over het uitvoeren van een zelf-hostende agent achter een webproxy.
Voorbeelden
- Implementeren naar een specifiek app-type
- Implementeren in Azure Web App Linux-container
- Een web-app implementeren in een Windows App Service voor implementatiesites
- voorbeeldscript na implementatie
Implementeren naar een specifiek app-type
Als u een specifiek app-type wilt implementeren, stelt u appType
in op een van de volgende geaccepteerde waarden: webApp
(Web-app in Windows), webAppLinux
(Web-app op Linux), webAppContainer
(Web App for Containers - Linux), functionApp
(Functie-app in Windows), functionAppLinux
(Functie-app op Linux), functionAppContainer
(Function App for Containers - Linux), apiApp
(API-app), mobileApp
(mobiele app). Als dit niet wordt vermeld, wordt webApp
als de standaardwaarde gebruikt.
Als u geavanceerde implementatieopties wilt inschakelen, voegt u de parameter toe enableCustomDeployment: true
en neemt u indien nodig de volgende parameters op.
# deploymentMethod: 'runFromPackage' # supports zipDeploy as well
# appOffline: boolean # Not applicable for 'runFromPackage'
# setParametersFile: string
# removeAdditionalFilesFlag: boolean
# additionalArguments: string
Implementeren in Azure Web App Linux-container
Het volgende YAML-voorbeeld wordt geïmplementeerd in een Azure Web App-container (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)
Een web-app implementeren in een Windows App Service op verschillende implementatiesites
In het volgende voorbeeld wordt een web-app geïmplementeerd in een Windows App Service voor implementatiesites.
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'
Voorbeeldscript na implementatie
De taak biedt een optie om de implementatie aan te passen door een script op te geven dat wordt uitgevoerd in Azure App Service nadat de artefacten van de app zijn gekopieerd naar de App Service. U kunt ervoor kiezen om een inline-implementatiescript of het pad en de naam van een scriptbestand in uw artefactmap op te geven.
Dit is erg handig als u uw toepassingsafhankelijkheden rechtstreeks op de App Service wilt herstellen. Het herstellen van pakketten voor Node-, PHP- en Python-apps helpt time-outs te voorkomen wanneer de toepassingsafhankelijkheid resulteert in een groot artefact dat van de agent naar Azure App Service wordt gekopieerd.
Een voorbeeld van een implementatiescript is:
@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
)
Eisen
Eis | Beschrijving |
---|---|
Pijplijntypen | YAML, klassieke build, klassieke release |
Wordt uitgevoerd op | Agent, DeploymentGroup |
eisen | Geen |
mogelijkheden | Deze taak voldoet niet aan de vereisten voor volgende taken in de taak. |
opdrachtbeperkingen | Enig |
variabelen instellen | Enig |
Agentversie | 2.104.1 of hoger |
Taakcategorie | Implementeren |
Zie ook
- Deze taak is opensource-op GitHub. Feedback en bijdragen zijn welkom.