IISWebAppManagementOnMachineGroup@0 - IIS web app manage v0 task

Use this task to create or update websites, web apps, virtual directories, or application pools.

Inputs

EnableIIS - Enable IIS
boolean. Default value: false.

Set to true if you want to install IIS on the machine.


IISDeploymentType - Configuration type
string. Required. Allowed values: IISWebsite (IIS Website), IISWebApplication (IIS Web Application), IISVirtualDirectory (IIS Virtual Directory), IISApplicationPool (IIS Application Pool). Default value: IISWebsite.

Specifies the configuration type: website, web application, virtual directory, or application pool.


ActionIISWebsite - Action
string. Required when IISDeploymentType = IISWebsite. Allowed values: CreateOrUpdateWebsite (Create Or Update), StartWebsite (Start), StopWebsite (Stop). Default value: CreateOrUpdateWebsite.

Specifies the appropriate action that you want to perform on an IIS website.

Create Or Update will create a website or update an existing website.

Start, Stop will start or stop the website respectively.


ActionIISApplicationPool - Action
string. Required when IISDeploymentType = IISApplicationPool. Allowed values: CreateOrUpdateAppPool (Create Or Update), StartAppPool (Start), StopAppPool (Stop), RecycleAppPool (Recycle). Default value: CreateOrUpdateAppPool.

Specifies the appropriate action that you want to perform on an IIS application pool.

Create Or Update will create an application pool or update an existing application pool.

Start, Stop, Recycle will start, stop or recycle the application pool respectively.


StartStopWebsiteName - Website name
string. Required when ActionIISWebsite = StartWebsite || ActionIISWebsite = StopWebsite.

Specifies the name of the IIS website.


WebsiteName - Website name
string. Required when ActionIISWebsite = CreateOrUpdateWebsite.

Specifies the name of the IIS website to create or update.


WebsitePhysicalPath - Physical path
string. Required when ActionIISWebsite = CreateOrUpdateWebsite. Default value: %SystemDrive%\inetpub\wwwroot.

Specifies the physical path where the website content will be stored. The content can reside on the local computer, in a remote directory, or on a network share, like C:\Fabrikam or \\ContentShare\Fabrikam.


WebsitePhysicalPathAuth - Physical path authentication
string. Required when ActionIISWebsite = CreateOrUpdateWebsite. Allowed values: WebsiteUserPassThrough (Application User (Pass-through)), WebsiteWindowsAuth (Windows Authentication). Default value: WebsiteUserPassThrough.

Specifies the authentication mechanism that will be used to access the physical path of the website.


WebsiteAuthUserName - Username
string. Required when WebsitePhysicalPathAuth = WebsiteWindowsAuth && ActionIISWebsite = CreateOrUpdateWebsite.

Specifies the user name that will be used to access the website's physical path.


WebsiteAuthUserPassword - Password
string. Optional. Use when WebsitePhysicalPathAuth = WebsiteWindowsAuth && ActionIISWebsite = CreateOrUpdateWebsite.

Specifies the user's password that will be used to access the website's physical path.
The best practice is to create a variable in the build or release pipeline, mark it as Secret to secure it, and then provide it when using this input, like $(userCredentials).
Note: Special characters in the password are interpreted per command-line arguments.


AddBinding - Add binding
boolean. Optional. Use when ActionIISWebsite = CreateOrUpdateWebsite. Default value: false.

Specifies the option to add port binding for the website.


Protocol - Protocol
string. Required when IISDeploymentType = randomDeployment. Allowed values: https, http. Default value: http.

Specifies either HTTP for the website to have an HTTP binding or HTTPS for the website to have a Secure Sockets Layer (SSL) binding.


IPAddress - IP address
string. Required when IISDeploymentType = randomDeployment. Default value: All Unassigned.

Specifies an IP address that end-users can use to access this website.
If All Unassigned is selected, then the website will respond to requests for all IP addresses on the port and for the host name. The website will not respond to requests if another website on the server has a binding on the same port but with a specific IP address.


Port - Port
string. Required when IISDeploymentType = randomDeployment. Default value: 80.

Specifies the port where the Hypertext Transfer Protocol Stack (HTTP.sys) will monitor the website requests.


ServerNameIndication - Server Name Indication required
boolean. Optional. Use when IISDeploymentType = randomDeployment. Default value: false.

Specifies the option to set the Server Name Indication (SNI) for the website.
SNI extends the SSL and TLS protocols to indicate the host name that the clients are attempting to connect to. It allows multiple secure websites with different certificates to use the same IP address.


HostNameWithOutSNI - Host name
string. Optional. Use when IISDeploymentType = randomDeployment.

Specifies a host name (or domain name) for the website.
If a host name is specified, the clients must use the host name instead of the IP address to access the website.


HostNameWithHttp - Host name
string. Optional. Use when IISDeploymentType = randomDeployment.

Specifies a host name (or domain name) for the website.
If a host name is specified, the clients must use the host name instead of the IP address to access the website.


HostNameWithSNI - Host name
string. Required when IISDeploymentType = randomDeployment.

Specifies a host name (or domain name) for the website.
If a host name is specified, the clients must use the host name instead of the IP address to access the website.


SSLCertThumbPrint - SSL certificate thumbprint
string. Required when IISDeploymentType = randomDeployment.

Specifies the thumb-print of the Secure Socket Layer certificate that the website uses for the HTTPS communication. The thumb-print is a 40 character long hexadecimal string. The SSL certificate should already be installed on the computer in the Local Computer Personal store.


Bindings - Add bindings
string. Required when IISDeploymentType = IISWebsite && ActionIISWebsite = CreateOrUpdateWebsite && AddBinding = true.

Click on the extension button ... to add bindings for the website.


CreateOrUpdateAppPoolForWebsite - Create or update app pool
boolean. Optional. Use when ActionIISWebsite = CreateOrUpdateWebsite. Default value: false.

Specifies the option to create or update an application pool. If checked, the website will be created in the specified application pool.


ConfigureAuthenticationForWebsite - Configure authentication
boolean. Optional. Use when ActionIISWebsite = CreateOrUpdateWebsite. Default value: false.

Specifies the option to configure authentication for the website.


AppPoolNameForWebsite - Name
string. Required when IISDeploymentType = IISWebsite && ActionIISWebsite = CreateOrUpdateWebsite && CreateOrUpdateAppPoolForWebsite = true.

Specifies the name of the IIS application pool to create or update.


DotNetVersionForWebsite - .NET version
string. Required when IISDeploymentType = IISWebsite && ActionIISWebsite = CreateOrUpdateWebsite && CreateOrUpdateAppPoolForWebsite = true. Allowed values: v4.0, v2.0, No Managed Code. Default value: v4.0.

Specifies the version of the .NET Framework that is loaded by the application pool. If the applications assigned to this application pool do not contain managed code, select the No Managed Code option from the list.


PipeLineModeForWebsite - Managed pipeline mode
string. Required when IISDeploymentType = IISWebsite && ActionIISWebsite = CreateOrUpdateWebsite && CreateOrUpdateAppPoolForWebsite = true. Allowed values: Integrated, Classic. Default value: Integrated.

Specifies the managed pipeline mode to determine how IIS processes requests for managed content. Use classic mode only when the applications in the application pool cannot run in integrated mode.


AppPoolIdentityForWebsite - Identity
string. Required when IISDeploymentType = IISWebsite && ActionIISWebsite = CreateOrUpdateWebsite && CreateOrUpdateAppPoolForWebsite = true. Allowed values: ApplicationPoolIdentity (Application Pool Identity), LocalService (Local Service), LocalSystem (Local System), NetworkService (Network Service), SpecificUser (Custom Account). Default value: ApplicationPoolIdentity.

Configures the account under which an application pool's worker process runs. Specifies one of the predefined security accounts or configures a custom account.


AppPoolUsernameForWebsite - Username
string. Required when AppPoolIdentityForWebsite = SpecificUser && IISDeploymentType = IISWebsite && ActionIISWebsite = CreateOrUpdateWebsite && CreateOrUpdateAppPoolForWebsite = true.

Specifies the username of the custom account that you want to use.


AppPoolPasswordForWebsite - Password
string. Optional. Use when AppPoolIdentityForWebsite = SpecificUser && IISDeploymentType = IISWebsite && ActionIISWebsite = CreateOrUpdateWebsite && CreateOrUpdateAppPoolForWebsite = true.

Specifies the password for the custom account.
The best practice is to create a variable in the build or release pipeline, mark it as Secret to secure it, and then provide it when using this input, like $(userCredentials).
Note: Special characters in the password are interpreted per command-line arguments.


AnonymousAuthenticationForWebsite - Anonymous authentication
boolean. Optional. Use when IISDeploymentType = IISWebsite && ActionIISWebsite = CreateOrUpdateWebsite && ConfigureAuthenticationForWebsite = true. Default value: false.

Specifies the option to enable anonymous authentication for a website.


BasicAuthenticationForWebsite - Basic authentication
boolean. Optional. Use when IISDeploymentType = IISWebsite && ActionIISWebsite = CreateOrUpdateWebsite && ConfigureAuthenticationForWebsite = true. Default value: false.

Specifies the option to enable basic authentication for a website.


WindowsAuthenticationForWebsite - Windows authentication
boolean. Optional. Use when IISDeploymentType = IISWebsite && ActionIISWebsite = CreateOrUpdateWebsite && ConfigureAuthenticationForWebsite = true. Default value: true.

Specifies the option to enable windows authentication for a website.


ParentWebsiteNameForVD - Parent website name
string. Required when IISDeploymentType = IISVirtualDirectory.

Specifies the name of the parent website of the virtual directory.


VirtualPathForVD - Virtual path
string. Required when IISDeploymentType = IISVirtualDirectory.

Specifies the virtual path of the virtual directory.

For example, to create a virtual directory Site/Application/VDir, enter /Application/Vdir. The parent website and application should already exist.


PhysicalPathForVD - Physical path
string. Required when IISDeploymentType = IISVirtualDirectory. Default value: %SystemDrive%\inetpub\wwwroot.

Specifies the physical path where the virtual directory's content is stored. The content can reside on the local computer, in a remote directory, or on a network share, like C:\Fabrikam or \\ContentShare\Fabrikam.


VDPhysicalPathAuth - Physical path authentication
string. Optional. Use when IISDeploymentType = IISVirtualDirectory. Allowed values: VDUserPassThrough (Application User (Pass-through)), VDWindowsAuth (Windows Authentication). Default value: VDUserPassThrough.

Specifies the authentication mechanism that is used to access the physical path of the virtual directory.


VDAuthUserName - Username
string. Required when VDPhysicalPathAuth = VDWindowsAuth && IISDeploymentType = IISVirtualDirectory.

Specifies the user name that is used to access the virtual directory's physical path.


VDAuthUserPassword - Password
string. Optional. Use when VDPhysicalPathAuth = VDWindowsAuth && IISDeploymentType = IISVirtualDirectory.

Specifies the user's password that is used to access the virtual directory's physical path.
The best practice is to create a variable in the build or release pipeline, mark it as Secret to secure it, and then provide it when using this input, like $(userCredentials).
Note: Special characters in the password are interpreted per command-line arguments.


ParentWebsiteNameForApplication - Parent website name
string. Required when IISDeploymentType = IISWebApplication.

Specifies the name of the parent website under which the application will be created or updated.


VirtualPathForApplication - Virtual path
string. Required when IISDeploymentType = IISWebApplication.

Specifies the virtual path of the application.

For example, to create an application Site/Application, enter /Application. The parent website should already exist.


PhysicalPathForApplication - Physical path
string. Required when IISDeploymentType = IISWebApplication. Default value: %SystemDrive%\inetpub\wwwroot.

Specifies the physical path where the application's content is stored. The content can reside on the local computer, in a remote directory, or on a network share, like C:\Fabrikam or \\ContentShare\Fabrikam.


ApplicationPhysicalPathAuth - Physical path authentication
string. Optional. Use when IISDeploymentType = IISWebApplication. Allowed values: ApplicationUserPassThrough (Application User (Pass-through)), ApplicationWindowsAuth (Windows Authentication). Default value: ApplicationUserPassThrough.

Specifies the authentication mechanism that is used to access the physical path of the application.


ApplicationAuthUserName - Username
string. Required when ApplicationPhysicalPathAuth = ApplicationWindowsAuth && IISDeploymentType = IISWebApplication.

Specifies the user name that is used to access the application's physical path.


ApplicationAuthUserPassword - Password
string. Optional. Use when ApplicationPhysicalPathAuth = ApplicationWindowsAuth && IISDeploymentType = IISWebApplication.

Specifies the user's password that is used to access the application's physical path.
The best practice is to create a variable in the build or release pipeline, mark it as Secret to secure it, and then provide it when using this input, like $(userCredentials).
Note: Special characters in the password are interpreted per command-line arguments.


CreateOrUpdateAppPoolForApplication - Create or update app pool
boolean. Optional. Use when IISDeploymentType = IISWebApplication. Default value: false.

Specifies the option to create or update an application pool. If checked, the application will be created in the specified application pool.


AppPoolNameForApplication - Name
string. Required when IISDeploymentType = IISWebApplication && CreateOrUpdateAppPoolForApplication = true.

Specifies the name of the IIS application pool to create or update.


DotNetVersionForApplication - .NET version
string. Required when IISDeploymentType = IISWebApplication && CreateOrUpdateAppPoolForApplication = true. Allowed values: v4.0, v2.0, No Managed Code. Default value: v4.0.

Specifies the version of the .NET Framework that is loaded by the application pool. If the applications assigned to this application pool do not contain managed code, select the No Managed Code option from the list.


PipeLineModeForApplication - Managed pipeline mode
string. Required when IISDeploymentType = IISWebApplication && CreateOrUpdateAppPoolForApplication = true. Allowed values: Integrated, Classic. Default value: Integrated.

Specifies the managed pipeline mode to determine how IIS processes requests for managed content. Use classic mode only when the applications in the application pool cannot run in the integrated mode.


AppPoolIdentityForApplication - Identity
string. Required when IISDeploymentType = IISWebApplication && CreateOrUpdateAppPoolForApplication = true. Allowed values: ApplicationPoolIdentity (Application Pool Identity), LocalService (Local Service), LocalSystem (Local System), NetworkService (Network Service), SpecificUser (Custom Account). Default value: ApplicationPoolIdentity.

Configures the account under which an application pool's worker process runs. Specifies one of the predefined security accounts or configures a custom account.


AppPoolUsernameForApplication - Username
string. Required when AppPoolIdentityForApplication = SpecificUser && IISDeploymentType = IISWebApplication && CreateOrUpdateAppPoolForApplication = true.

Specifies the username of the custom account that you want to use.


AppPoolPasswordForApplication - Password
string. Optional. Use when AppPoolIdentityForApplication = SpecificUser && IISDeploymentType = IISWebApplication && CreateOrUpdateAppPoolForApplication = true.

Specifies the password for the custom account.
The best practice is to create a variable in the build or release pipeline, mark it as Secret to secure it, and then provide it when using this input, like $(userCredentials).
Note: Special characters in the password are interpreted per command-line arguments.


AppPoolName - Name
string. Required when ActionIISApplicationPool = CreateOrUpdateAppPool.

Specifies the name of the IIS application pool to create or update.


DotNetVersion - .NET version
string. Required when ActionIISApplicationPool = CreateOrUpdateAppPool. Allowed values: v4.0, v2.0, No Managed Code. Default value: v4.0.

Specifies the version of the .NET Framework that is loaded by the application pool. If the applications assigned to this application pool do not contain managed code, select the No Managed Code option from the list.


PipeLineMode - Managed pipeline mode
string. Required when ActionIISApplicationPool = CreateOrUpdateAppPool. Allowed values: Integrated, Classic. Default value: Integrated.

Specifies the managed pipeline mode to determine how IIS processes requests for managed content. Use classic mode only when the applications in the application pool cannot run in the integrated mode.


AppPoolIdentity - Identity
string. Required when ActionIISApplicationPool = CreateOrUpdateAppPool. Allowed values: ApplicationPoolIdentity (Application Pool Identity), LocalService (Local Service), LocalSystem (Local System), NetworkService (Network Service), SpecificUser (Custom Account). Default value: ApplicationPoolIdentity.

Configures the account under which an application pool's worker process runs. Specifies one of the predefined security accounts or configures a custom account.


AppPoolUsername - Username
string. Required when AppPoolIdentity = SpecificUser && ActionIISApplicationPool = CreateOrUpdateAppPool.

Specifies the username of the custom account that you want to use.


AppPoolPassword - Password
string. Optional. Use when AppPoolIdentity = SpecificUser && ActionIISApplicationPool = CreateOrUpdateAppPool.

Specifies the password for the custom account.
The best practice is to create a variable in the build or release pipeline, mark it as Secret to secure it, and then provide it when using this input, like $(userCredentials).
Note: Special characters in the password are interpreted per command-line arguments.


StartStopRecycleAppPoolName - Application pool name
string. Required when ActionIISApplicationPool = StartAppPool || ActionIISApplicationPool = StopAppPool || ActionIISApplicationPool = RecycleAppPool.

Specifies the name of the IIS application pool.


AppCmdCommands - Additional appcmd.exe commands
string.

Specifies additional AppCmd.exe commands. For more than one command, use a line separator.
For example:
list apppools
list sites
recycle apppool /apppool.name:ExampleAppPoolName


Task control options

All tasks have control options in addition to their task inputs. For more information, see Control options and common task properties.

Output variables

None.

Remarks

Use this task to create or update a website, web app, virtual directory, or application pool.

Requirements

Requirement Description
Pipeline types Classic release
Runs on DeploymentGroup
Demands None
Capabilities This task does not satisfy any demands for subsequent tasks in the job.
Command restrictions Any
Settable variables Any
Agent version 2.111.0 or greater
Task category Deploy