AzureRmWebAppDeployment@3 - v3 작업 배포 Azure App Service
이 작업을 사용하여 Docker, Java, .NET, .NET Core, Node.js, PHP, Python 또는 Ruby를 사용하여 웹, 모바일 또는 API 앱을 Azure App Service.
참고
AzureFunctionApp@1 사용하여 Azure Functions 앱을 배포합니다.
웹 배포/Kudu REST Azure 앱 API를 사용하여 Windows, Linux의 웹앱, 기본 제공 이미지 또는 docker 컨테이너, ASP.NET, .NET Core, PHP, Python 또는 Node.js 기반 웹 애플리케이션, Function Apps, Mobile Apps, API 애플리케이션 및 웹 작업을 업데이트합니다.
Syntax
# Azure App Service deploy v3
# 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@3
inputs:
azureSubscription: # string. Alias: ConnectedServiceName. Required. Azure subscription.
appType: 'app' # 'app' | 'applinux' | 'functionapp' | 'api' | 'mobileapp'. Alias: WebAppKind. Required. App type. Default: app.
WebAppName: # string. Required. App Service name.
#DeployToSlotFlag: false # boolean. Optional. Use when WebAppKind != "". Deploy to slot. Default: false.
#ResourceGroupName: # string. Required when DeployToSlotFlag = true. Resource group.
#SlotName: # string. Required when DeployToSlotFlag = true. Slot.
#ImageSource: 'Registry' # 'Registry' | 'Builtin'. Optional. Use when WebAppKind = applinux || WebAppKind = linux. Image Source. Default: Registry.
#AzureContainerRegistry: # string. Required when ImageSource = AzureContainerRegistry. Registry.
#AzureContainerRegistryLoginServer: # string. Optional. Use when ImageSource = invalidimagesource. Registry Login Server Name.
#AzureContainerRegistryImage: # string. Required when ImageSource = AzureContainerRegistry. Image.
#AzureContainerRegistryTag: # string. Optional. Use when ImageSource = AzureContainerRegistry. Tag.
#DockerRepositoryAccess: 'public' # 'private' | 'public'. Required when ImageSource = invalidImage. Repository Access. Default: public.
#dockerRegistryConnection: # string. Alias: RegistryConnectedServiceName. Required when DockerRepositoryAccess = private || ImageSource = PrivateRegistry. Registry Connection.
#PrivateRegistryImage: # string. Required when ImageSource = PrivateRegistry. Image.
#PrivateRegistryTag: # string. Optional. Use when ImageSource = PrivateRegistry. Tag.
#DockerNamespace: # string. Required when WebAppKind != app && WebAppKind != functionapp && WebAppKind != api && WebAppKind != mobileapp && ImageSource = Registry. Registry or Namespace.
#DockerRepository: # string. Required when WebAppKind != app && WebAppKind != functionapp && WebAppKind != api && WebAppKind != mobileapp && ImageSource = Registry. Image.
#DockerImageTag: # string. Optional. Use when WebAppKind != app && WebAppKind != functionapp && WebAppKind != api && WebAppKind != mobileapp && ImageSource = Registry. Tag.
#VirtualApplication: # string. Optional. Use when WebAppKind != linux && WebAppKind != applinux && WebAppKind != "". Virtual application.
#Package: '$(System.DefaultWorkingDirectory)/**/*.zip' # string. Required when WebAppKind != linux && WebAppKind != applinux && WebAppKind != "". Package or folder. Default: $(System.DefaultWorkingDirectory)/**/*.zip.
#packageForLinux: '$(System.DefaultWorkingDirectory)/**/*.zip' # string. Alias: BuiltinLinuxPackage. Required when WebAppKind != app && WebAppKind != functionapp && WebAppKind != api && WebAppKind != mobileapp && ImageSource = Builtin. Package or folder. Default: $(System.DefaultWorkingDirectory)/**/*.zip.
#RuntimeStack: # string. Required when WebAppKind != app && WebAppKind != functionapp && WebAppKind != api && WebAppKind != mobileapp && ImageSource = Builtin. Runtime Stack.
#StartupCommand: # string. Optional. Use when WebAppKind = applinux || WebAppKind = linux. Startup command.
# Output
#WebAppUri: # string. Optional. Use when WebAppKind != "". App Service URL.
# Post Deployment Action
#ScriptType: # 'Inline Script' | 'File Path'. Optional. Use when WebAppKind != "". Deployment script type.
#InlineScript: ':: You can provide your deployment commands here. One command per line.' # string. Required when ScriptType == Inline Script && WebAppKind != "". Inline Script. Default: :: You can provide your deployment commands here. One command per line..
#ScriptPath: # string. Required when ScriptType == File Path && WebAppKind != "". Deployment script path.
# File Transforms & Variable Substitution Options
#GenerateWebConfig: false # boolean. Optional. Use when WebAppKind != linux && WebAppKind != applinux && WebAppKind != "" && Package NotEndsWith .war. Generate Web.config. Default: false.
#WebConfigParameters: # string. Required when GenerateWebConfig == true && WebAppKind != linux && WebAppKind != applinux && WebAppKind != "" && Package NotEndsWith .war. Web.config parameters.
#enableXmlTransform: false # boolean. Alias: XmlTransformation. Optional. Use when WebAppKind != linux && WebAppKind != applinux && WebAppKind != "" && Package NotEndsWith .war. XML transformation. Default: false.
#enableXmlVariableSubstitution: false # boolean. Alias: XmlVariableSubstitution. Optional. Use when WebAppKind != linux && WebAppKind != applinux && WebAppKind != "" && Package NotEndsWith .war. XML variable substitution. Default: false.
#JSONFiles: # string. Optional. Use when WebAppKind != linux && WebAppKind != applinux && WebAppKind != "" && Package NotEndsWith .war. JSON variable substitution.
# Application and Configuration Settings
#AppSettings: # string. App settings.
#ConfigurationSettings: # string. Configuration settings.
# Additional Deployment Options
#TakeAppOfflineFlag: false # boolean. Optional. Use when WebAppKind != linux && WebAppKind != applinux && WebAppKind != "". Take App Offline. Default: false.
#UseWebDeploy: false # boolean. Optional. Use when WebAppKind != linux && WebAppKind != applinux && WebAppKind != "". Publish using Web Deploy. Default: false.
#SetParametersFile: # string. Optional. Use when UseWebDeploy == true && WebAppKind != linux && WebAppKind != applinux && WebAppKind != "". SetParameters file.
#RemoveAdditionalFilesFlag: false # boolean. Optional. Use when UseWebDeploy == true && WebAppKind != linux && WebAppKind != applinux && WebAppKind != "". Remove additional files at destination. Default: false.
#ExcludeFilesFromAppDataFlag: false # boolean. Optional. Use when UseWebDeploy == true && WebAppKind != linux && WebAppKind != applinux && WebAppKind != "". Exclude files from the App_Data folder. Default: false.
#AdditionalArguments: # string. Optional. Use when UseWebDeploy == true && WebAppKind != linux && WebAppKind != applinux && WebAppKind != "". Additional arguments.
#RenameFilesFlag: false # boolean. Optional. Use when UseWebDeploy == true && WebAppKind != linux && WebAppKind != applinux && WebAppKind != "". Rename locked files. Default: false.
# Azure App Service Deploy v3
# 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, Mobile Apps, API applications, Web Jobs using Web Deploy / Kudu REST APIs.
- task: AzureRmWebAppDeployment@3
inputs:
azureSubscription: # string. Alias: ConnectedServiceName. Required. Azure subscription.
appType: 'app' # 'app' | 'applinux' | 'functionapp' | 'api' | 'mobileapp'. Alias: WebAppKind. Required. App type. Default: app.
WebAppName: # string. Required. App Service name.
#DeployToSlotFlag: false # boolean. Optional. Use when WebAppKind != "". Deploy to slot. Default: false.
#ResourceGroupName: # string. Required when DeployToSlotFlag = true. Resource group.
#SlotName: # string. Required when DeployToSlotFlag = true. Slot.
#ImageSource: 'Registry' # 'Registry' | 'Builtin'. Optional. Use when WebAppKind = applinux || WebAppKind = linux. Image Source. Default: Registry.
#AzureContainerRegistry: # string. Required when ImageSource = AzureContainerRegistry. Registry.
#AzureContainerRegistryLoginServer: # string. Optional. Use when ImageSource = invalidimagesource. Registry Login Server Name.
#AzureContainerRegistryImage: # string. Required when ImageSource = AzureContainerRegistry. Image.
#AzureContainerRegistryTag: # string. Optional. Use when ImageSource = AzureContainerRegistry. Tag.
#DockerRepositoryAccess: 'public' # 'private' | 'public'. Required when ImageSource = invalidImage. Repository Access. Default: public.
#dockerRegistryConnection: # string. Alias: RegistryConnectedServiceName. Required when DockerRepositoryAccess = private || ImageSource = PrivateRegistry. Registry Connection.
#PrivateRegistryImage: # string. Required when ImageSource = PrivateRegistry. Image.
#PrivateRegistryTag: # string. Optional. Use when ImageSource = PrivateRegistry. Tag.
#DockerNamespace: # string. Required when WebAppKind != app && WebAppKind != functionapp && WebAppKind != api && WebAppKind != mobileapp && ImageSource = Registry. Registry or Namespace.
#DockerRepository: # string. Required when WebAppKind != app && WebAppKind != functionapp && WebAppKind != api && WebAppKind != mobileapp && ImageSource = Registry. Image.
#DockerImageTag: # string. Optional. Use when WebAppKind != app && WebAppKind != functionapp && WebAppKind != api && WebAppKind != mobileapp && ImageSource = Registry. Tag.
#VirtualApplication: # string. Optional. Use when WebAppKind != linux && WebAppKind != applinux && WebAppKind != "". Virtual application.
#Package: '$(System.DefaultWorkingDirectory)/**/*.zip' # string. Required when WebAppKind != linux && WebAppKind != applinux && WebAppKind != "". Package or folder. Default: $(System.DefaultWorkingDirectory)/**/*.zip.
#packageForLinux: '$(System.DefaultWorkingDirectory)/**/*.zip' # string. Alias: BuiltinLinuxPackage. Required when WebAppKind != app && WebAppKind != functionapp && WebAppKind != api && WebAppKind != mobileapp && ImageSource = Builtin. Package or folder. Default: $(System.DefaultWorkingDirectory)/**/*.zip.
#RuntimeStack: # string. Required when WebAppKind != app && WebAppKind != functionapp && WebAppKind != api && WebAppKind != mobileapp && ImageSource = Builtin. Runtime Stack.
#StartupCommand: # string. Optional. Use when WebAppKind = applinux || WebAppKind = linux. Startup command.
# Output
#WebAppUri: # string. Optional. Use when WebAppKind != "". App Service URL.
# Post Deployment Action
#ScriptType: # 'Inline Script' | 'File Path'. Optional. Use when WebAppKind != "". Deployment script type.
#InlineScript: ':: You can provide your deployment commands here. One command per line.' # string. Required when ScriptType == Inline Script && WebAppKind != "". Inline Script. Default: :: You can provide your deployment commands here. One command per line..
#ScriptPath: # string. Required when ScriptType == File Path && WebAppKind != "". Deployment script path.
# File Transforms & Variable Substitution Options
#GenerateWebConfig: false # boolean. Optional. Use when WebAppKind != linux && WebAppKind != applinux && WebAppKind != "" && Package NotEndsWith .war. Generate Web.config. Default: false.
#WebConfigParameters: # string. Required when GenerateWebConfig == true && WebAppKind != linux && WebAppKind != applinux && WebAppKind != "" && Package NotEndsWith .war. Web.config parameters.
#enableXmlTransform: false # boolean. Alias: XmlTransformation. Optional. Use when WebAppKind != linux && WebAppKind != applinux && WebAppKind != "" && Package NotEndsWith .war. XML transformation. Default: false.
#enableXmlVariableSubstitution: false # boolean. Alias: XmlVariableSubstitution. Optional. Use when WebAppKind != linux && WebAppKind != applinux && WebAppKind != "" && Package NotEndsWith .war. XML variable substitution. Default: false.
#JSONFiles: # string. Optional. Use when WebAppKind != linux && WebAppKind != applinux && WebAppKind != "" && Package NotEndsWith .war. JSON variable substitution.
# Application and Configuration Settings
#AppSettings: # string. App settings.
#ConfigurationSettings: # string. Configuration settings.
# Additional Deployment Options
#TakeAppOfflineFlag: false # boolean. Optional. Use when WebAppKind != linux && WebAppKind != applinux && WebAppKind != "". Take App Offline. Default: false.
#UseWebDeploy: false # boolean. Optional. Use when WebAppKind != linux && WebAppKind != applinux && WebAppKind != "". Publish using Web Deploy. Default: false.
#SetParametersFile: # string. Optional. Use when UseWebDeploy == true && WebAppKind != linux && WebAppKind != applinux && WebAppKind != "". SetParameters file.
#RemoveAdditionalFilesFlag: false # boolean. Optional. Use when UseWebDeploy == true && WebAppKind != linux && WebAppKind != applinux && WebAppKind != "". Remove additional files at destination. Default: false.
#ExcludeFilesFromAppDataFlag: false # boolean. Optional. Use when UseWebDeploy == true && WebAppKind != linux && WebAppKind != applinux && WebAppKind != "". Exclude files from the App_Data folder. Default: false.
#AdditionalArguments: # string. Optional. Use when UseWebDeploy == true && WebAppKind != linux && WebAppKind != applinux && WebAppKind != "". Additional arguments.
#RenameFilesFlag: false # boolean. Optional. Use when UseWebDeploy == true && WebAppKind != linux && WebAppKind != applinux && WebAppKind != "". Rename locked files. Default: false.
입력
azureSubscription
- Azure 구독
입력 별칭: ConnectedServiceName
. string
. 필수 요소.
배포에 대한 Azure Resource Manager 구독을 지정합니다.
appType
- 앱 유형
입력 별칭: WebAppKind
. string
. 필수 요소. 허용되는 값: app
(웹앱), applinux
(Linux 웹앱), functionapp
(함수 앱(권장되지 않음, Azure Functions 작업 사용)), api
(API 앱), mobileapp
(모바일 앱). 기본값은 app
입니다.
배포할 웹앱의 유형을 지정합니다.
참고: 기본 제공 플랫폼 이미지 또는 사용자 지정 컨테이너 이미지 배포를 위해 Linux 웹앱을 지정합니다.
appType
- 앱 유형
입력 별칭: WebAppKind
. string
. 필수 요소. 허용되는 값: app
(웹앱), applinux
(Linux 웹앱), functionapp
(함수 앱), api
(API 앱), mobileapp
(모바일 앱). 기본값은 app
입니다.
배포할 웹앱의 유형을 지정합니다.
참고: 기본 제공 플랫폼 이미지 또는 사용자 지정 컨테이너 이미지 배포를 위해 Linux 웹앱을 지정합니다.
WebAppName
- App Service 이름
string
. 필수 요소.
기존 Azure App Service 이름을 지정합니다. 선택한 앱 유형을 기반으로 하는 App Services는 작업 도우미 사용할 때만 나열됩니다.
DeployToSlotFlag
- 슬롯에 배포
boolean
. 선택 사항입니다. 을 사용할 때 WebAppKind != ""
사용합니다. 기본값은 false
입니다.
프로덕션 슬롯 이외의 기존 슬롯에 배포하려면 이 옵션을 사용합니다. 이 옵션을 선택하지 않으면 Azure App Service 프로덕션 슬롯에 배포됩니다.
ResourceGroupName
- 리소스 그룹
string
. 필요한 경우 DeployToSlotFlag = true
입니다.
위에서 지정한 Azure App Service 포함하는 Azure 리소스 그룹을 지정합니다.
SlotName
- 슬롯
string
. 필요한 경우 DeployToSlotFlag = true
입니다.
프로덕션 슬롯 이외의 기존 슬롯을 지정합니다.
ImageSource
- 이미지 원본
string
. 선택 사항입니다. 을 사용할 때 WebAppKind = applinux || WebAppKind = linux
사용합니다. 허용되는 값: Registry
(Container Registry), Builtin
(기본 제공 이미지). 기본값은 Registry
입니다.
App Service on Linux 애플리케이션을 게시하는 두 가지 옵션을 제공합니다.
기본 제공 플랫폼 이미지를 사용하여 사용자 지정 이미지 배포 또는 앱 배포.
AzureContainerRegistry
- 레지스트리
string
. 필요한 경우 ImageSource = AzureContainerRegistry
입니다.
특정 레지스트리에 대한 전역적으로 고유한 최상위 도메인 이름입니다.
참고: 정규화된 이미지 이름은 형식<registry>
/<repository>
입니다. :.<tag>
예: myregistry.azurecr.io
/nginx:latest
.
AzureContainerRegistryLoginServer
- 레지스트리 로그인 서버 이름
string
. 선택 사항입니다. 을 사용할 때 ImageSource = invalidimagesource
사용합니다.
Azure Container Registry 로그인 서버 이름을 지정합니다.
AzureContainerRegistryImage
- 이미지
string
. 필요한 경우 ImageSource = AzureContainerRegistry
입니다.
컨테이너 이미지가 저장되는 리포지토리의 이름입니다.
참고: 정규화된 이미지 이름은 형식<registry>
/<repository>
입니다. :.<tag>
예: myregistry.azurecr.io
/nginx
:.latest
AzureContainerRegistryTag
- 태그
string
. 선택 사항입니다. 을 사용할 때 ImageSource = AzureContainerRegistry
사용합니다.
레지스트리가 Docker 이미지에 버전을 제공하는 데 사용하는 메커니즘입니다.
참고: 정규화된 이미지 이름은 형식<registry>
/<repository>
입니다. :.<tag>
예: myregistry.azurecr.io
/nginx
:.latest
DockerRepositoryAccess
- 리포지토리 액세스
string
. 필요한 경우 ImageSource = invalidImage
입니다. 허용되는 값: private
, public
. 기본값은 public
입니다.
Docker 리포지토리 액세스를 지정합니다.
dockerRegistryConnection
- 레지스트리 연결
입력 별칭: RegistryConnectedServiceName
. string
. 필요한 경우 DockerRepositoryAccess = private || ImageSource = PrivateRegistry
입니다.
레지스트리 연결을 지정합니다.
PrivateRegistryImage
- 이미지
string
. 필요한 경우 ImageSource = PrivateRegistry
입니다.
컨테이너 이미지가 저장되는 리포지토리의 이름입니다.
참고: 정규화된 이미지 이름은 형식 <registry>
<repository>
입니다. :<tag>
. 예: myregistry.azurecr.io
/nginx
:.latest
PrivateRegistryTag
- 태그
string
. 선택 사항입니다. 을 사용할 때 ImageSource = PrivateRegistry
사용합니다.
태그는 레지스트리가 Docker 이미지에 버전을 제공하는 데 사용하는 메커니즘입니다.
참고: 정규화된 이미지 이름은 '<registry>
/<repository>
:<tag>
' 형식입니다. 예: myregistry.azurecr.io
/nginx
:.latest
DockerNamespace
- 레지스트리 또는 네임스페이스
string
. 필요한 경우 WebAppKind != app && WebAppKind != functionapp && WebAppKind != api && WebAppKind != mobileapp && ImageSource = Registry
입니다.
특정 레지스트리 또는 네임스페이스에 대한 전역적으로 고유한 최상위 도메인 이름입니다.
참고: 정규화된 이미지 이름은 형식<registry or namespace>
/<repository>
입니다. :.<tag>
예: myregistry.azurecr.io
/nginx
:.latest
DockerRepository
- 이미지
string
. 필요한 경우 WebAppKind != app && WebAppKind != functionapp && WebAppKind != api && WebAppKind != mobileapp && ImageSource = Registry
입니다.
컨테이너 이미지가 저장되는 리포지토리의 이름입니다.
참고: 정규화된 이미지 이름은 '<registry or namespace>
/<repository>
:<tag>
' 형식입니다. 예: myregistry.azurecr.io
/nginx
:.latest
DockerImageTag
- 태그
string
. 선택 사항입니다. 을 사용할 때 WebAppKind != app && WebAppKind != functionapp && WebAppKind != api && WebAppKind != mobileapp && ImageSource = Registry
사용합니다.
레지스트리가 Docker 이미지에 버전을 제공하는 데 사용하는 메커니즘입니다.
참고: 정규화된 이미지 이름은 '<registry or namespace>
/<repository>
:<tag>
' 형식입니다. 예: myregistry.azurecr.io
/nginx
:.latest
VirtualApplication
- 가상 애플리케이션
string
. 선택 사항입니다. 을 사용할 때 WebAppKind != linux && WebAppKind != applinux && WebAppKind != ""
사용합니다.
Azure Portal 구성된 가상 애플리케이션의 이름을 지정합니다. 이 옵션은 App Service 루트에 배포하는 데 필요하지 않습니다.
Package
- 패키지 또는 폴더
string
. 필요한 경우 WebAppKind != linux && WebAppKind != applinux && WebAppKind != ""
입니다. 기본값은 $(System.DefaultWorkingDirectory)/**/*.zip
입니다.
패키지 또는 MSBuild에서 생성된 앱 서비스 콘텐츠 또는 압축된 zip 또는 war 파일이 포함된 폴더의 파일 경로입니다.
변수는 빌드 및 릴리스입니다. 와일드카드가 지원됩니다.
예를 들어 $(System.DefaultWorkingDirectory)/\*\*/\*.zip
또는 $(System.DefaultWorkingDirectory)/\*\*/\*.war
입니다.
packageForLinux
- 패키지 또는 폴더
입력 별칭: BuiltinLinuxPackage
. string
. 필요한 경우 WebAppKind != app && WebAppKind != functionapp && WebAppKind != api && WebAppKind != mobileapp && ImageSource = Builtin
입니다. 기본값은 $(System.DefaultWorkingDirectory)/**/*.zip
입니다.
패키지 또는 MSBuild에서 생성된 앱 서비스 콘텐츠 또는 압축된 zip 또는 war 파일이 포함된 폴더의 파일 경로입니다.
변수는 빌드 및 릴리스입니다. 와일드카드가 지원됩니다.
예를 들어 $(System.DefaultWorkingDirectory)/\*\*/\*.zip
또는 $(System.DefaultWorkingDirectory)/\*\*/\*.war
입니다.
RuntimeStack
- 런타임 스택
string
. 필요한 경우 WebAppKind != app && WebAppKind != functionapp && WebAppKind != api && WebAppKind != mobileapp && ImageSource = Builtin
입니다.
프레임워크 및 버전을 지정합니다.
StartupCommand
- 시작 명령
string
. 선택 사항입니다. 을 사용할 때 WebAppKind = applinux || WebAppKind = linux
사용합니다.
시작 명령을 지정합니다.
WebAppUri
- App Service URL
string
. 선택 사항입니다. 을 사용할 때 WebAppKind != ""
사용합니다.
Azure App Service URL에 대해 생성된 출력 변수의 이름을 지정합니다. 변수는 후속 작업에서 사용할 수 있습니다.
ScriptType
- 배포 스크립트 유형
string
. 선택 사항입니다. 을 사용할 때 WebAppKind != ""
사용합니다. 허용되는 값: Inline Script
, File Path
(스크립트 파일 경로).
작업이 성공적으로 배포를 완료한 후 Azure 앱 서비스에서 실행되는 스크립트를 제공하여 배포를 사용자 지정합니다. 예를 들어 노드, PHP 및 Python 애플리케이션에 대한 패키지를 복원할 수 있습니다. Azure App Service 배포에 대해 자세히 알아보세요.
InlineScript
- 인라인 스크립트
string
. 필요한 경우 ScriptType == Inline Script && WebAppKind != ""
입니다. 기본값은 :: You can provide your deployment commands here. One command per line.
입니다.
ScriptPath
- 배포 스크립트 경로
string
. 필요한 경우 ScriptType == File Path && WebAppKind != ""
입니다.
GenerateWebConfig
- Web.config생성
boolean
. 선택 사항입니다. 을 사용할 때 WebAppKind != linux && WebAppKind != applinux && WebAppKind != "" && Package NotEndsWith .war
사용합니다. 기본값은 false
입니다.
애플리케이션에 표준 Web.config
이 생성되고 애플리케이션에 없는 경우 Azure App Service 배포됩니다. 의 web.config
값을 편집할 수 있으며 애플리케이션 프레임워크에 따라 달라질 수 있습니다. 예를 들어 애플리케이션의 node.js
경우 시작 web.config
파일 및 iis_node
모듈 값이 있습니다. Azure App Service 배포에 대해 자세히 알아보세요.
WebConfigParameters
- Web.config 매개 변수
string
. 필요한 경우 GenerateWebConfig == true && WebAppKind != linux && WebAppKind != applinux && WebAppKind != "" && Package NotEndsWith .war
입니다.
생성된 web.config
파일에서 시작 파일과 같은 값을 편집합니다. 이 편집 기능은 생성된 에만 적용됩니다 web.config
. Azure App Service 배포에 대해 자세히 알아보세요.
AppSettings
- 앱 설정
string
.
구문 -key 값 에 따라 웹앱 애플리케이션 설정을 편집합니다. 공백이 포함된 값은 큰따옴표로 묶어야 합니다.
예: -Port 5000
-WEBSITE_TIME_ZONE
-RequestTimeout 5000
"Eastern Standard Time"
.
ConfigurationSettings
- 구성 설정
string
.
구문 -key
값에 따라 웹앱 구성 설정을 편집합니다. 공백이 포함된 값은 큰따옴표로 묶어야 합니다.
예: -phpVersion 5.6
-linuxFxVersion: node|6.11
.
TakeAppOfflineFlag
- 앱을 오프라인으로 전환
boolean
. 선택 사항입니다. 을 사용할 때 WebAppKind != linux && WebAppKind != applinux && WebAppKind != ""
사용합니다. 기본값은 false
입니다.
동기화 작업이 시작되기 전에 App Service 루트 디렉터리에 파일을 배치 app_offline.htm
하여 Azure App Service 오프라인으로 전환하려면 이 옵션을 사용합니다. 동기화 작업이 성공적으로 완료되면 파일이 제거됩니다.
UseWebDeploy
- 웹 배포를 사용하여 게시
boolean
. 선택 사항입니다. 을 사용할 때 WebAppKind != linux && WebAppKind != applinux && WebAppKind != ""
사용합니다. 기본값은 false
입니다.
Publish using Web Deploy
옵션은 Windows 에이전트를 사용하는 경우에만 지원됩니다. 다른 플랫폼에서는 작업이 Kudu REST API를 사용하여 Azure App Service 배포하며 다음 옵션은 지원되지 않습니다.
SetParametersFile
- SetParameters 파일
string
. 선택 사항입니다. 을 사용할 때 UseWebDeploy == true && WebAppKind != linux && WebAppKind != applinux && WebAppKind != ""
사용합니다.
사용할 파일의 SetParameters.xml
위치입니다.
RemoveAdditionalFilesFlag
- 대상에서 추가 파일 제거
boolean
. 선택 사항입니다. 을 사용할 때 UseWebDeploy == true && WebAppKind != linux && WebAppKind != applinux && WebAppKind != ""
사용합니다. 기본값은 false
입니다.
App Service 패키지 또는 폴더에 일치하는 파일이 없는 Azure App Service 파일을 삭제하려면 이 옵션을 사용합니다.
참고: 이 Azure App Service 설치된 확장과 관련된 모든 파일도 제거됩니다. 이를 방지하려면 확인란을 Exclude files from App_Data folder
선택합니다.
ExcludeFilesFromAppDataFlag
- App_Data 폴더에서 파일 제외
boolean
. 선택 사항입니다. 을 사용할 때 UseWebDeploy == true && WebAppKind != linux && WebAppKind != applinux && WebAppKind != ""
사용합니다. 기본값은 false
입니다.
폴더의 App_Data
파일이 Azure App Service 배포/삭제되지 않도록 하려면 이 옵션을 사용합니다.
AdditionalArguments
- 추가 인수
string
. 선택 사항입니다. 을 사용할 때 UseWebDeploy == true && WebAppKind != linux && WebAppKind != applinux && WebAppKind != ""
사용합니다.
구문 -key:value
다음에 추가 웹 배포 인수입니다.
Azure App Service 배포할 때 적용됩니다. 예: -disableLink:AppPoolExtension
-disableLink:ContentExtension
.
웹 배포 작업 설정의 더 많은 예제를 참조하세요.
RenameFilesFlag
- 잠긴 파일 이름 바꾸기
boolean
. 선택 사항입니다. 을 사용할 때 UseWebDeploy == true && WebAppKind != linux && WebAppKind != applinux && WebAppKind != ""
사용합니다. 기본값은 false
입니다.
이 옵션을 사용하여 Azure App Service 애플리케이션 설정에서 msdeploy 플래그 MSDEPLOY_RENAME_LOCKED_FILES=1
를 사용하도록 설정합니다. 옵션을 사용하면 msdeploy가 앱 배포 중에 잠긴 파일의 이름을 바꿀 수 있습니다.
enableXmlTransform
- XML 변환
입력 별칭: XmlTransformation
. boolean
. 선택 사항입니다. 을 사용할 때 WebAppKind != linux && WebAppKind != applinux && WebAppKind != "" && Package NotEndsWith .war
사용합니다. 기본값은 false
입니다.
구성 변환은 및 *.<EnvironmentName>.config
에 대해 *.Release.config
*.config file
실행됩니다.
구성 변환은 변수 대체 전에 실행됩니다.
XML 변환은 Windows 플랫폼에 대해서만 지원됩니다.
enableXmlVariableSubstitution
- XML 변수 대체
입력 별칭: XmlVariableSubstitution
. boolean
. 선택 사항입니다. 을 사용할 때 WebAppKind != linux && WebAppKind != applinux && WebAppKind != "" && Package NotEndsWith .war
사용합니다. 기본값은 false
입니다.
빌드 또는 릴리스 파이프라인에 정의된 변수는 구성 파일 및 parameters.xml
의 , applicationSettings
및 섹션에 있는 appSettings
또는 name
항목과 connectionStrings
일치 key
합니다. 구성 변환 후 변수 대체가 실행됩니다.
참고: 릴리스 파이프라인 및 환경에서 동일한 변수가 정의된 경우 환경 변수는 릴리스 파이프라인 변수를 대체합니다.
JSONFiles
- JSON 변수 대체
string
. 선택 사항입니다. 을 사용할 때 WebAppKind != linux && WebAppKind != applinux && WebAppKind != "" && Package NotEndsWith .war
사용합니다.
변수 값을 대체할 새 줄로 구분된 JSON 파일 목록을 제공합니다. 파일 이름은 루트 폴더를 기준으로 제공해야 합니다.
중첩 또는 계층 구조인 JSON 변수를 대체하려면 식을 사용하여 JSONPath
지정합니다.
예를 들어 아래 샘플에서 의 ConnectionString
값을 바꾸려면 빌드/릴리스 파이프라인(또는 릴리스 파이프라인의 환경)에서와 같이 Data.DefaultConnection.ConnectionString
변수를 정의해야 합니다.
{
"Data": {
"DefaultConnection": {
"ConnectionString": "Server=(localdb)\SQLEXPRESS;Database=MyDB;Trusted_Connection=True"
}
}
}
변수 대체는 구성 변환 후에 실행됩니다.
참고: 파이프라인 변수는 대체에서 제외됩니다.
작업 제어 옵션
모든 작업에는 작업 입력 외에 제어 옵션이 있습니다. 자세한 내용은 컨트롤 옵션 및 일반적인 작업 속성을 참조하세요.
출력 변수
없음
설명
이 작업의 최신 버전을 사용할 수 있습니다. 자세한 내용은 AzureRmWebAppDeployment@4.
문제 해결
Windows 에이전트에서 Microsoft Entra ID 인증을 사용하여 Azure App Service 웹 배포할 수 없습니다.
Azure App Service 배포 작업은 다음 세 가지 조건이 없는 한 Microsoft Entra ID 사용하여 ARM 서비스 연결로 Microsoft Azure에 연결할 수 있도록 지원합니다.
- Windows 에이전트에서 웹 배포 패키지 형식을 사용하고 있습니다.
- 에이전트가 이전 버전의 msdeploy.exe 실행 중입니다(예: windows-2019 호스팅 에이전트 이미지를 사용하는 경우).
- Azure App Service 기본 인증을 사용할 수 없습니다.
이러한 세 가지 조건이 있는 경우 다음과 같은 오류가 발생합니다. 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.
이 문제를 resolve 위해 기본 설정 순서대로 다음 옵션 중에서 선택할 수 있습니다.
- 에이전트 이미지를 업데이트합니다. 호스트된 에이전트를 사용하는 경우 windows-2019 에서 windows-2022 (또는 windows-latest)로 이동합니다. 자체 호스팅 에이전트를 사용하는 경우 에이전트에 Visual Studio 2022를 설치하여 최신 버전의 msdeploy.exe.
- 이전 에이전트 이미지에 종속되어 있고 파이프라인에 대한 에이전트를 업데이트할 수 없는 경우 Azure App Service 배포 작업이 windows-2022(또는 windows-latest)에서 실행되도록 작업을 분할하는 것이 좋습니다.
- 이러한 옵션 중 어느 것도 가능하지 않은 경우 Azure App Service 대한 기본 인증을 사용하도록 설정할 수 있습니다.
요구 사항
요구 사항 | Description |
---|---|
파이프라인 유형 | YAML, 클래식 빌드, 클래식 릴리스 |
실행 중 | 에이전트, DeploymentGroup |
요청 | 없음 |
Capabilities | 이 작업은 작업의 후속 작업에 대한 요구를 충족하지 않습니다. |
명령 제한 사항 | 모두 |
설정 가능한 변수 | 모두 |
에이전트 버전 | 2.104.1 이상 |
작업 범주 | 배포 |