다음을 통해 공유


IISWebAppDeployment@1 - IIS 웹앱 배포(사용되지 않음) v1 작업

이 작업을 사용하여 MSDeploy를 사용하여 IIS 웹앱을 배포한 다음 웹 사이트 및 앱 풀을 만들거나 업데이트합니다.

중요

이 작업은 더 이상 사용되지 않으며 2024년 1월 31일에 사용 중지됩니다. WinRM - Viual Studio Marketplace를 사용하여 IIS 웹앱 배포를 사용합니다.

이 작업을 사용하여 MSDeploy를 사용하여 IIS 웹앱을 배포한 다음 웹 사이트 및 앱 풀을 만들거나 업데이트합니다.

중요

이 작업은 더 이상 사용되지 않습니다. WinRM - Viual Studio Marketplace를 사용하여 IIS 웹앱 배포를 사용합니다.

Syntax

# IIS Web App deployment (Deprecated) v1
# Deploy using MSDeploy, then create/update websites and app pools.
- task: IISWebAppDeployment@1
  inputs:
    EnvironmentName: # string. Required. Machines. 
    #AdminUserName: # string. Admin Login. 
    #AdminPassword: # string. Password. 
    #WinRMProtocol: # 'Http' | 'Https'. Protocol. 
    #TestCertificate: true # boolean. Optional. Use when WinRMProtocol = Https. Test Certificate. Default: true.
  # Deployment
    WebDeployPackage: # string. Required. Web Deploy Package. 
    #WebDeployParamFile: # string. Web Deploy Parameter File. 
    #OverRideParams: # string. Override Parameters. 
  # Website
    #CreateWebSite: false # boolean. Create or Update Website. Default: false.
    #WebSiteName: # string. Required when CreateWebSite = true. Website Name. 
    #WebSitePhysicalPath: '%SystemDrive%\inetpub\wwwroot' # string. Required when CreateWebSite = true. Physical Path. Default: %SystemDrive%\inetpub\wwwroot.
    #WebSitePhysicalPathAuth: 'Application User (Pass-through)' # 'WebSiteUserPassThrough' | 'WebSiteWindowsAuth'. Required when CreateWebSite = true. Physical Path Authentication. Default: Application User (Pass-through).
    #WebSiteAuthUserName: # string. Required when WebSitePhysicalPathAuth = WebSiteWindowsAuth. User Name. 
    #WebSiteAuthUserPassword: # string. Optional. Use when WebSitePhysicalPathAuth = WebSiteWindowsAuth. Password. 
    #AddBinding: true # boolean. Optional. Use when CreateWebSite = true. Add Binding. Default: true.
    #AssignDuplicateBinding: false # boolean. Optional. Use when AddBinding = true. Assign Duplicate Binding. Default: false.
    Protocol: 'http' # 'https' | 'http'. Required when AddBinding = true. Protocol. Default: http.
    IPAddress: 'All Unassigned' # string. Required when AddBinding = true. IP Address. Default: All Unassigned.
    Port: '80' # string. Required when AddBinding = true. Port. Default: 80.
    #ServerNameIndication: false # boolean. Optional. Use when Protocol = https. Server Name Indication Required. Default: false.
    #HostNameWithOutSNI: # string. Optional. Use when ServerNameIndication = false. Host Name. 
    #HostNameWithHttp: # string. Optional. Use when Protocol = http. Host Name. 
    #HostNameWithSNI: # string. Required when ServerNameIndication = true. Host Name. 
    #SSLCertThumbPrint: # string. Required when Protocol = https. SSL Certificate Thumb Print. 
  # Application Pool
    #CreateAppPool: false # boolean. Create or Update Application Pool. Default: false.
    #AppPoolName: # string. Required when CreateAppPool = true. Name. 
    #DotNetVersion: 'v4.0' # 'v4.0' | 'v2.0' | 'No Managed Code'. Required when CreateAppPool = true. .NET Version. Default: v4.0.
    #PipeLineMode: 'Integrated' # 'Integrated' | 'Classic'. Required when CreateAppPool = true. Managed Pipeline Mode. Default: Integrated.
    #AppPoolIdentity: 'ApplicationPoolIdentity' # 'ApplicationPoolIdentity' | 'LocalService' | 'LocalSystem' | 'NetworkService' | 'SpecificUser'. Required when CreateAppPool = true. Identity. Default: ApplicationPoolIdentity.
    #AppPoolUsername: # string. Required when AppPoolIdentity = SpecificUser. Username. 
    #AppPoolPassword: # string. Optional. Use when AppPoolIdentity = SpecificUser. Password. 
  # Advanced
    #AppCmdCommands: # string. Additional AppCmd.exe Commands. 
    #DeployInParallel: true # boolean. Deploy in Parallel. Default: true.
    #ResourceFilteringMethod: 'machineNames' # 'machineNames' | 'tags'. Select Machines By. Default: machineNames.
    #MachineFilter: # string. Deploy to Machines.
# IIS Web App deployment (Deprecated) v1
# Deploy by MSDeploy, create/update website & app pools.
- task: IISWebAppDeployment@1
  inputs:
    EnvironmentName: # string. Required. Machines. 
    #AdminUserName: # string. Admin Login. 
    #AdminPassword: # string. Password. 
    #WinRMProtocol: # 'Http' | 'Https'. Protocol. 
    #TestCertificate: true # boolean. Optional. Use when WinRMProtocol = Https. Test Certificate. Default: true.
  # Deployment
    WebDeployPackage: # string. Required. Web Deploy Package. 
    #WebDeployParamFile: # string. Web Deploy Parameter File. 
    #OverRideParams: # string. Override Parameters. 
  # Website
    #CreateWebSite: false # boolean. Create or Update Website. Default: false.
    #WebSiteName: # string. Required when CreateWebSite = true. Website Name. 
    #WebSitePhysicalPath: '%SystemDrive%\inetpub\wwwroot' # string. Required when CreateWebSite = true. Physical Path. Default: %SystemDrive%\inetpub\wwwroot.
    #WebSitePhysicalPathAuth: 'Application User (Pass-through)' # 'WebSiteUserPassThrough' | 'WebSiteWindowsAuth'. Required when CreateWebSite = true. Physical Path Authentication. Default: Application User (Pass-through).
    #WebSiteAuthUserName: # string. Required when WebSitePhysicalPathAuth = WebSiteWindowsAuth. User Name. 
    #WebSiteAuthUserPassword: # string. Optional. Use when WebSitePhysicalPathAuth = WebSiteWindowsAuth. Password. 
    #AddBinding: true # boolean. Optional. Use when CreateWebSite = true. Add Binding. Default: true.
    #AssignDuplicateBinding: false # boolean. Optional. Use when AddBinding = true. Assign Duplicate Binding. Default: false.
    Protocol: 'http' # 'https' | 'http'. Required when AddBinding = true. Protocol. Default: http.
    IPAddress: 'All Unassigned' # string. Required when AddBinding = true. IP Address. Default: All Unassigned.
    Port: '80' # string. Required when AddBinding = true. Port. Default: 80.
    #ServerNameIndication: false # boolean. Optional. Use when Protocol = https. Server Name Indication Required. Default: false.
    #HostNameWithOutSNI: # string. Optional. Use when ServerNameIndication = false. Host Name. 
    #HostNameWithHttp: # string. Optional. Use when Protocol = http. Host Name. 
    #HostNameWithSNI: # string. Required when ServerNameIndication = true. Host Name. 
    #SSLCertThumbPrint: # string. Required when Protocol = https. SSL Certificate Thumb Print. 
  # Application Pool
    #CreateAppPool: false # boolean. Create or Update Application Pool. Default: false.
    #AppPoolName: # string. Required when CreateAppPool = true. Name. 
    #DotNetVersion: 'v4.0' # 'v4.0' | 'v2.0' | 'No Managed Code'. Required when CreateAppPool = true. .NET Version. Default: v4.0.
    #PipeLineMode: 'Integrated' # 'Integrated' | 'Classic'. Required when CreateAppPool = true. Managed Pipeline Mode. Default: Integrated.
    #AppPoolIdentity: 'ApplicationPoolIdentity' # 'ApplicationPoolIdentity' | 'LocalService' | 'LocalSystem' | 'NetworkService' | 'SpecificUser'. Required when CreateAppPool = true. Identity. Default: ApplicationPoolIdentity.
    #AppPoolUsername: # string. Required when AppPoolIdentity = SpecificUser. Username. 
    #AppPoolPassword: # string. Optional. Use when AppPoolIdentity = SpecificUser. Password. 
  # Advanced
    #AppCmdCommands: # string. Additional AppCmd.exe Commands. 
    #DeployInParallel: true # boolean. Deploy in Parallel. Default: true.
    #ResourceFilteringMethod: 'machineNames' # 'machineNames' | 'tags'. Select Machines By. Default: machineNames.
    #MachineFilter: # string. Deploy to Machines.

입력

EnvironmentName - 기계
string. 필수 요소.

포트와 함께 컴퓨터 IP 주소 또는 FQDN의 쉼표로 구분된 목록을 지정합니다. 기본 포트는 선택한 프로토콜(예 dbserver.fabrikam.com : 또는 dbserver_int.fabrikam.com:5986,192.168.12.34:5986)을 기반으로 합니다. 다른 작업의 출력 변수(예 $(variableName): )를 제공할 수도 있습니다.


AdminUserName - 관리 로그인
string.

대상 머신에 대한 관리자 로그인을 지정합니다.


AdminPassword - 암호
string.

대상 머신의 관리자 암호를 지정합니다. 빌드/릴리스 정의에 정의된 변수(예: $(passwordVariable))를 수락할 수 있습니다. 변수 형식 secret 을 로 표시하여 보호할 수 있습니다.


WinRMProtocol - 프로토콜
string. 허용되는 값: Http, Https.

컴퓨터와의 WinRM 연결에 사용되는 프로토콜을 지정합니다. 기본값은 HTTPS입니다.


TestCertificate - 인증서 테스트
boolean. 선택 사항입니다. 를 사용하는 경우 WinRMProtocol = Https를 사용합니다. 기본값은 true입니다.

신뢰할 수 있는 인증 기관에서 컴퓨터 인증서의 신뢰성 유효성 검사를 건너뛰는 옵션을 선택합니다. 매개 변수는 WinRM HTTPS 프로토콜에 필요합니다.


WebDeployPackage - 웹 배포 패키지
string. 필수 요소.

대상 컴퓨터 또는 UNC 경로(예 \\BudgetIT\WebDeploy\WebDeployPackage.zip: )에서 웹 배포(MSDeploy) zip 파일의 위치를 지정합니다. UNC 경로는 컴퓨터의 관리자 계정에 액세스할 수 있어야 합니다. 환경 변수도 지원됩니다(예: $env:windir, $env:systemroot$env:windir\FabrikamFibre\Web).


WebDeployParamFile - 웹 배포 매개 변수 파일
string.

대상 컴퓨터 또는 UNC 경로에서 매개 변수 파일의 위치를 지정합니다. 매개 변수 파일은 IIS 웹 애플리케이션 이름 또는 데이터베이스 연결 문자열 같은 웹 애플리케이션 구성 설정을 재정의하는 데 사용됩니다.


OverRideParams - 매개 변수 재정의
string.

여기에 지정된 매개 변수는 MSDeploy zip 파일 및 매개 변수 파일의 매개 변수를 재정의합니다. 둘 이상의 매개 변수를 재정의하려면 줄 구분 기호를 사용합니다.
예를 들어 "IIS Web Application Name"="Fabrikam" 또는 "ConnectionString"="Server=localhost;Database=Fabrikam;"입니다.


CreateWebSite - 웹 사이트 만들기 또는 업데이트
boolean. 기본값은 false입니다.

웹 사이트를 만들거나 기존 웹 사이트를 업데이트하는 옵션을 지정합니다.


WebSiteName - 웹 사이트 이름
string. 필요한 경우 CreateWebSite = true입니다.

없는 경우 만들 IIS 웹 사이트의 이름을 지정하거나 IIS 서버에 이미 있는 경우 업데이트됩니다. 웹 사이트의 이름은 웹 배포 zip 패키지 파일에 지정된 것과 동일해야 합니다. 매개 변수 파일 및 재정의 매개 변수 설정도 지정한 경우 웹 사이트의 이름은 매개 변수 재정의 설정의 이름과 동일해야 합니다.


WebSitePhysicalPath - 물리적 경로
string. 필요한 경우 CreateWebSite = true입니다. 기본값은 %SystemDrive%\inetpub\wwwroot입니다.

웹 사이트 콘텐츠가 저장되는 실제 경로를 지정합니다. 콘텐츠는 로컬 컴퓨터 또는 원격 디렉터리 또는 공유(예 C:\Fabrikam : 또는 \\ContentShare\Fabrikam)에 있을 수 있습니다.


WebSitePhysicalPathAuth - 물리적 경로 인증
string. 필요한 경우 CreateWebSite = true입니다. 허용되는 값: WebSiteUserPassThrough (애플리케이션 사용자(통과)), WebSiteWindowsAuth (Windows 인증). 기본값은 Application User (Pass-through)입니다.

웹 사이트의 실제 경로에 액세스하기 위한 인증 메커니즘을 지정합니다.


WebSiteAuthUserName - 사용자 이름
string. 필요한 경우 WebSitePhysicalPathAuth = WebSiteWindowsAuth입니다.

웹 사이트의 실제 경로에 액세스하기 위한 사용자 이름을 지정합니다.


WebSiteAuthUserPassword - 암호
string. 선택 사항입니다. 를 사용하는 경우 WebSitePhysicalPathAuth = WebSiteWindowsAuth를 사용합니다.

웹 사이트의 실제 경로에 액세스하기 위한 암호를 지정합니다. gMSA를 사용하는 경우 필요하지 않습니다.


AddBinding - 바인딩 추가
boolean. 선택 사항입니다. 를 사용하는 경우 CreateWebSite = true를 사용합니다. 기본값은 true입니다.

웹 사이트에 대한 포트 바인딩을 추가하는 옵션을 지정합니다.


AssignDuplicateBinding - 중복 바인딩 할당
boolean. 선택 사항입니다. 를 사용하는 경우 AddBinding = true를 사용합니다. 기본값은 false입니다.

여기에 지정된 바인딩을 추가하는 옵션을 지정합니다(동일한 바인딩을 가진 다른 웹 사이트가 있는 경우에도). 바인딩 충돌이 있는 경우 웹 사이트 중 하나만 시작됩니다.


Protocol - 프로토콜
string. 필요한 경우 AddBinding = true입니다. 허용되는 값: https, http. 기본값은 http입니다.

웹 사이트에 HTTP 바인딩이 있는 HTTP 또는 웹 사이트에 SSL(Secure Sockets Layer) 바인딩이 있는 HTTPS를 지정합니다.


IPAddress - IP 주소
string. 필요한 경우 AddBinding = true입니다. 기본값은 All Unassigned입니다.

사용자가 웹 사이트에 액세스하는 데 사용할 수 있는 IP 주소를 지정합니다. 할당되지 않은 모든 항목을 선택하면 사이트에서 포트의 모든 IP 주소 및 사이트에 대해 지정된 선택적 호스트 이름에 대한 요청에 응답합니다. 서버의 다른 사이트에 동일한 포트에 바인딩이 있지만 특정 IP 주소가 있는 경우 사이트는 요청에 응답하지 않습니다.


Port - 포트
string. 필요한 경우 AddBinding = true입니다. 기본값은 80입니다.

HTTP.sys(Hypertext Transfer Protocol Stack)에서 이 웹 사이트에 대한 요청을 모니터링해야 하는 포트를 지정합니다.


ServerNameIndication - 서버 이름 표시 필요
boolean. 선택 사항입니다. 을 사용할 때 Protocol = https사용합니다. 기본값은 false입니다.

웹 사이트에 SNI(서버 이름 표시)가 필요한지 결정합니다. SNI는 SSL 및 TLS 프로토콜을 확장하여 클라이언트가 연결하려는 호스트 이름을 나타냅니다. 이를 통해 서로 다른 인증서가 있는 여러 보안 웹 사이트에서 동일한 IP 주소를 사용할 수 있습니다.


HostNameWithOutSNI - 호스트 이름
string. 선택 사항입니다. 을 사용할 때 ServerNameIndication = false사용합니다.

단일 IP 주소를 사용하는 컴퓨터에 하나 이상의 호스트 이름(또는 도메인 이름)을 할당합니다. 호스트 이름이 지정된 경우 클라이언트는 IP 주소 대신 호스트 이름을 사용하여 웹 사이트에 액세스해야 합니다.


HostNameWithHttp - 호스트 이름
string. 선택 사항입니다. 을 사용할 때 Protocol = http사용합니다.

단일 IP 주소를 사용하는 컴퓨터에 하나 이상의 호스트 이름(또는 도메인 이름)을 할당합니다. 호스트 이름이 지정된 경우 클라이언트는 IP 주소 대신 호스트 이름을 사용하여 웹 사이트에 액세스해야 합니다.


HostNameWithSNI - 호스트 이름
string. 필요한 경우 ServerNameIndication = true입니다.

단일 IP 주소를 사용하는 컴퓨터에 하나 이상의 호스트 이름(또는 도메인 이름)을 할당합니다. 호스트 이름이 지정된 경우 클라이언트는 IP 주소 대신 호스트 이름을 사용하여 웹 사이트에 액세스해야 합니다.


SSLCertThumbPrint - SSL 인증서 지문
string. 필요한 경우 Protocol = https입니다.

웹 사이트에서 사용할 Secure Socket Layer 인증서의 지문을 지정합니다. 인증서는 컴퓨터에 이미 설치되어 있고 로컬 컴퓨터 개인 저장소 아래에 있어야 합니다.


CreateAppPool - 애플리케이션 풀 만들기 또는 업데이트
boolean. 기본값은 false입니다.

애플리케이션 풀을 만들거나 기존 애플리케이션 풀을 업데이트하는 옵션을 지정합니다.


AppPoolName - 이름
string. 필요한 경우 CreateAppPool = true입니다.

만들거나 업데이트할 IIS 애플리케이션 풀의 이름을 지정합니다. 기존 애플리케이션 풀은 지정된 설정으로 업데이트됩니다.


DotNetVersion - .NET 버전
string. 필요한 경우 CreateAppPool = true입니다. 허용되는 값: v4.0, v2.0, No Managed Code. 기본값은 v4.0입니다.

이 애플리케이션 풀에 의해 로드되는 .NET Framework 버전을 지정합니다. 이 애플리케이션 풀에 할당된 애플리케이션에 관리 코드가 없는 경우 목록에서 관리 코드 없음 옵션을 선택합니다.


PipeLineMode - 관리형 파이프라인 모드
string. 필요한 경우 CreateAppPool = true입니다. 허용되는 값: Integrated, Classic. 기본값은 Integrated입니다.

관리형 파이프라인 모드는 IIS가 관리되는 콘텐츠에 대한 요청을 처리하는 방법을 지정합니다. 애플리케이션 풀의 애플리케이션이 통합 모드에서 실행될 수 없는 경우에만 클래식 모드를 사용합니다.


AppPoolIdentity - Id
string. 필요한 경우 CreateAppPool = true입니다. 허용되는 값: ApplicationPoolIdentity, , LocalServiceLocalSystem, , NetworkServiceSpecificUser (사용자 지정 계정). 기본값은 ApplicationPoolIdentity입니다.

애플리케이션 풀의 작업자 프로세스가 실행되는 계정을 구성합니다. 미리 정의된 보안 계정 중 하나를 지정하거나 사용자 지정 계정을 구성합니다.


AppPoolUsername - 사용자
string. 필요한 경우 AppPoolIdentity = SpecificUser입니다.


AppPoolPassword - 암호
string. 선택 사항입니다. 을 사용할 때 AppPoolIdentity = SpecificUser사용합니다.

gMSA를 사용하는 경우 필요하지 않습니다.


AppCmdCommands - 추가 AppCmd.exe 명령
string.

웹 사이트 또는 애플리케이션 풀 속성을 설정하는 추가 AppCmd.exe 명령을 지정합니다. 둘 이상의 명령의 경우 줄 구분 기호를 사용합니다.
예를 들면 다음과 같습니다.
<앱 풀 나열>
<목록 사이트>


DeployInParallel - 병렬로 배포
boolean. 기본값은 true입니다.

true설정하면 웹 애플리케이션이 대상 머신에 병렬로 배포됩니다.


ResourceFilteringMethod - 컴퓨터 기준 선택
string. 허용되는 값: machineNames (컴퓨터 이름), tags. 기본값은 machineNames입니다.

선택 사항입니다. 컴퓨터 이름 또는 태그를 제공하여 컴퓨터의 하위 집합을 지정합니다.


MachineFilter - 머신에 배포
string.

이 입력은 컴퓨터 그룹에만 유효하며 컴퓨터 또는 출력 변수의 플랫 목록에 대해서는 아직 지원되지 않습니다.

와 같은 Role:DB; OS:Win8.1컴퓨터 목록(예dbserver.fabrikam.com, webserver.fabrikam.com, 192.168.12.34: 또는 태그)을 지정합니다. 여러 태그가 제공되면 지정된 태그가 있는 모든 컴퓨터에서 작업이 실행됩니다. Azure 리소스 그룹의 경우 가상 머신의 이름(예: ffweb, ffdb)을 지정합니다. 기본값은 모든 컴퓨터에서 작업을 실행합니다.


작업 제어 옵션

모든 작업에는 작업 입력 외에 제어 옵션이 있습니다. 자세한 내용은 컨트롤 옵션 및 일반적인 작업 속성을 참조하세요.

출력 변수

없음

설명

중요

이 작업은 더 이상 사용되지 않습니다. WinRM을 사용하여 IIS 웹앱 배포 사용 - Viual Studio Marketplace.

요구 사항

요구 사항 Description
파이프라인 유형 YAML, 클래식 빌드, 클래식 릴리스
실행 중 에이전트, DeploymentGroup
요청 없음
Capabilities 이 작업은 작업의 후속 작업에 대한 요구를 충족하지 않습니다.
명령 제한 사항 모두
설정 가능한 변수 모두
에이전트 버전 1.91.0 이상
작업 범주 배포