Partager via


IISWebAppDeployment@1 - Tâche de déploiement d’applications web IIS (déconseillée) v1

Utilisez cette tâche pour déployer une application web IIS à l’aide de MSDeploy, puis créer ou mettre à jour des sites web et des pools d’applications.

Important

Cette tâche est déconseillée et sera retirée le 31 janvier 2024. Utilisez le déploiement d’applications web IIS à l’aide de WinRM - Place de marché Viual Studio.

Utilisez cette tâche pour déployer une application web IIS à l’aide de MSDeploy, puis créer ou mettre à jour des sites web et des pools d’applications.

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.

Entrées

EnvironmentName - Machines
string. Obligatoire.

Spécifie une liste séparée par des virgules d’adresses IP ou de noms de domaine complets de l’ordinateur, ainsi que des ports. Le port par défaut est basé sur le protocole sélectionné, par exemple dbserver.fabrikam.com ou dbserver_int.fabrikam.com:5986,192.168.12.34:5986. Vous pouvez également fournir la variable de sortie d’autres tâches, par exemple $(variableName).


AdminUserName - Connexion administrateur
string.

Spécifie la connexion administrateur pour les machines cibles.


AdminPassword - Mot de passe
string.

Spécifie le mot de passe administrateur pour les machines cibles. Il peut accepter des variables définies dans les définitions de build/mise en production, telles que $(passwordVariable). Vous pouvez marquer le type de variable comme secret pour le sécuriser.


WinRMProtocol - Protocole
string. Valeurs autorisées : Http, Https.

Spécifie le protocole utilisé pour la connexion WinRM avec la ou les machines. Par défaut, il s’agit de HTTPS.


TestCertificate - Certificat de test
boolean. facultatif. Utilisez quand WinRMProtocol = Https. Valeur par défaut : true.

Sélectionne l’option permettant d’ignorer la validation de l’authenticité du certificat de l’ordinateur par une autorité de certification approuvée. Le paramètre est requis pour le protocole WinRM HTTPS .


WebDeployPackage - Package de déploiement web
string. Obligatoire.

Spécifie l’emplacement du fichier zip MSDeploy (Web Deploy) sur les ordinateurs cibles ou sur un chemin UNC tel que \\BudgetIT\WebDeploy\WebDeployPackage.zip. Le chemin d’accès UNC doit être accessible au compte d’administrateur de l’ordinateur. Les variables d’environnement sont également prises en charge, comme $env:windir, $env:systemrootet $env:windir\FabrikamFibre\Web.


WebDeployParamFile - Fichier de paramètres de déploiement web
string.

Spécifie l’emplacement du fichier de paramètres sur les machines cibles ou sur un chemin UNC. Le fichier de paramètres est utilisé pour remplacer les paramètres de configuration de l’application web, comme le nom de l’application web IIS ou le chaîne de connexion de base de données.


OverRideParams - Remplacer les paramètres
string.

Les paramètres spécifiés ici remplacent les paramètres du fichier zip MSDeploy et du fichier de paramètres. Pour remplacer plusieurs paramètres, utilisez un séparateur de ligne.
Par exemple, "IIS Web Application Name"="Fabrikam" ou "ConnectionString"="Server=localhost;Database=Fabrikam;".


CreateWebSite - Créer ou mettre à jour un site web
boolean. Valeur par défaut : false.

Spécifie l’option permettant de créer un site web ou de mettre à jour un site web existant.


WebSiteName - Nom du site web
string. Nécessaire lorsque CreateWebSite = true.

Spécifie le nom du site web IIS qui sera créé s’il n’existe pas, ou sera mis à jour s’il est déjà présent sur le serveur IIS. Le nom du site web doit être le même que celui spécifié dans le fichier de package zip de déploiement web. Si un fichier de paramètres et un paramètre de remplacement sont également spécifiés, le nom du site web doit être identique à celui du paramètre paramètres de remplacement.


WebSitePhysicalPath - Chemin d’accès physique
string. Nécessaire lorsque CreateWebSite = true. Valeur par défaut : %SystemDrive%\inetpub\wwwroot.

Spécifie le chemin d’accès physique où le contenu du site web est stocké. Le contenu peut résider sur l’ordinateur local ou sur un répertoire ou un partage distant, comme C:\Fabrikam ou \\ContentShare\Fabrikam.


WebSitePhysicalPathAuth - Authentification de chemin d’accès physique
string. Nécessaire lorsque CreateWebSite = true. Valeurs autorisées : WebSiteUserPassThrough (Utilisateur de l’application (pass-through)), WebSiteWindowsAuth (Authentification Windows). Valeur par défaut : Application User (Pass-through).

Spécifie le mécanisme d’authentification permettant d’accéder au chemin physique du site web.


WebSiteAuthUserName - Nom d’utilisateur
string. Nécessaire lorsque WebSitePhysicalPathAuth = WebSiteWindowsAuth.

Spécifie le nom d’utilisateur pour accéder au chemin d’accès physique du site web.


WebSiteAuthUserPassword - Mot de passe
string. facultatif. Utilisez quand WebSitePhysicalPathAuth = WebSiteWindowsAuth.

Spécifie le mot de passe pour accéder au chemin d’accès physique du site web. Si vous utilisez un gMSA, cela n’est pas obligatoire.


AddBinding - Ajouter une liaison
boolean. facultatif. Utilisez quand CreateWebSite = true. Valeur par défaut : true.

Spécifie l’option permettant d’ajouter une liaison de port pour le site web.


AssignDuplicateBinding - Affecter une liaison en double
boolean. facultatif. Utilisez quand AddBinding = true. Valeur par défaut : false.

Spécifie l’option permettant d’ajouter les liaisons spécifiées ici (même s’il existe un autre site web avec les mêmes liaisons). S’il existe des conflits de liaison, un seul des sites web démarre.


Protocol - Protocole
string. Nécessaire lorsque AddBinding = true. Valeurs autorisées : https, http. Valeur par défaut : http.

Spécifie http pour que le site web ait une liaison HTTP ou HTTPS pour que le site web ait une liaison SSL (Secure Sockets Layer).


IPAddress - Adresse IP
string. Nécessaire lorsque AddBinding = true. Valeur par défaut : All Unassigned.

Spécifie une adresse IP que les utilisateurs peuvent utiliser pour accéder au site web. Si Tous non attribués est sélectionné, le site répond aux demandes pour toutes les adresses IP sur le port et le nom d’hôte facultatif spécifié pour le site. Le site ne répond pas aux demandes si un autre site sur le serveur a une liaison sur le même port, mais avec une adresse IP spécifique.


Port - Port
string. Nécessaire lorsque AddBinding = true. Valeur par défaut : 80.

Spécifie le port sur lequel la pile de protocoles de transfert hypertexte (HTTP.sys) doit surveiller les demandes adressées à ce site web.


ServerNameIndication - Indication du nom de serveur obligatoire
boolean. facultatif. Utilisez quand Protocol = https. Valeur par défaut : false.

Détermine si le site web exige l’indication du nom du serveur (SNI). SNI étend les protocoles SSL et TLS pour indiquer le nom d’hôte auquel le client tente de se connecter. Elle permet à plusieurs sites web sécurisés avec des certificats différents d’utiliser la même adresse IP.


HostNameWithOutSNI - Nom d’hôte
string. facultatif. Utilisez quand ServerNameIndication = false.

Attribue un ou plusieurs noms d’hôte (ou noms de domaine) à un ordinateur qui utilise une seule adresse IP. Si un nom d’hôte est spécifié, les clients doivent utiliser le nom d’hôte au lieu de l’adresse IP pour accéder au site web.


HostNameWithHttp - Nom d’hôte
string. facultatif. Utilisez quand Protocol = http.

Attribue un ou plusieurs noms d’hôte (ou noms de domaine) à un ordinateur qui utilise une seule adresse IP. Si un nom d’hôte est spécifié, les clients doivent utiliser le nom d’hôte au lieu de l’adresse IP pour accéder au site web.


HostNameWithSNI - Nom d’hôte
string. Nécessaire lorsque ServerNameIndication = true.

Attribue un ou plusieurs noms d’hôte (ou noms de domaine) à un ordinateur qui utilise une seule adresse IP. Si un nom d’hôte est spécifié, les clients doivent utiliser le nom d’hôte au lieu de l’adresse IP pour accéder au site web.


SSLCertThumbPrint - Empreinte de certificat SSL
string. Nécessaire lorsque Protocol = https.

Spécifie l’empreinte du certificat Secure Socket Layer que le site web va utiliser. Le certificat doit déjà être installé sur l’ordinateur et présent dans le magasin personnel de l’ordinateur local.


CreateAppPool - Créer ou mettre à jour un pool d’applications
boolean. Valeur par défaut : false.

Spécifie l’option permettant de créer un pool d’applications ou de mettre à jour un pool d’applications existant.


AppPoolName - Nom
string. Nécessaire lorsque CreateAppPool = true.

Spécifie le nom du pool d’applications IIS à créer ou à mettre à jour. Le pool d’applications existant est mis à jour avec les paramètres spécifiés.


DotNetVersion - Version .NET
string. Nécessaire lorsque CreateAppPool = true. Valeurs autorisées : v4.0, v2.0, No Managed Code. Valeur par défaut : v4.0.

Spécifie la version du .NET Framework chargée par ce pool d’applications. Si les applications affectées à ce pool d’applications ne contiennent pas de code managé, sélectionnez l’option Aucun code managé dans la liste.


PipeLineMode - Mode pipeline managé
string. Nécessaire lorsque CreateAppPool = true. Valeurs autorisées : Integrated, Classic. Valeur par défaut : Integrated.

Le mode pipeline managé spécifie la façon dont IIS traite les demandes de contenu managé. Utilisez le mode classique uniquement lorsque les applications du pool d’applications ne peuvent pas s’exécuter en mode intégré.


AppPoolIdentity - Identité
string. Nécessaire lorsque CreateAppPool = true. Valeurs autorisées : ApplicationPoolIdentity, LocalService, LocalSystem, NetworkService( SpecificUser Compte personnalisé). Valeur par défaut : ApplicationPoolIdentity.

Configure le compte sous lequel le processus worker d’un pool d’applications s’exécute. Spécifiez l’un des comptes de sécurité prédéfinis ou configurez un compte personnalisé.


AppPoolUsername - Nom d'utilisateur
string. Nécessaire lorsque AppPoolIdentity = SpecificUser.


AppPoolPassword - Mot de passe
string. facultatif. Utilisez quand AppPoolIdentity = SpecificUser.

Si vous utilisez un gMSA, cela n’est pas obligatoire.


AppCmdCommands - Commandes AppCmd.exe supplémentaires
string.

Spécifie des commandes supplémentaires AppCmd.exe pour définir les propriétés du site web ou du pool d’applications. Pour plusieurs commandes, utilisez un séparateur de ligne.
Par exemple :
<lister les pools d’applications>
<répertorier les sites>


DeployInParallel - Déployer en parallèle
boolean. Valeur par défaut : true.

Si la valeur est définie truesur , l’application web est déployée en parallèle sur les machines cibles.


ResourceFilteringMethod - Sélectionner les machines par
string. Valeurs autorisées : machineNames (Noms des machines), tags. Valeur par défaut : machineNames.

facultatif. Spécifie un sous-ensemble de machines en fournissant des noms d’ordinateurs ou des balises.


MachineFilter - Déployer sur des machines
string.

Cette entrée est valide uniquement pour les groupes d’ordinateurs et n’est pas encore prise en charge pour une liste plate de machines ou de variables de sortie.

Spécifie une liste de machines, telles que dbserver.fabrikam.com, webserver.fabrikam.com, 192.168.12.34 ou des balises, telles que Role:DB; OS:Win8.1. Si plusieurs balises sont fournies, la tâche s’exécute sur toutes les machines avec les balises spécifiées. Pour Groupes de ressources Azure, spécifiez le nom de la machine virtuelle, par exemple ffweb, ffdb. La valeur par défaut exécute la tâche dans tous les ordinateurs.


Options de contrôle de la tâche

Toutes les tâches ont des options de contrôle en plus de leurs entrées de tâches. Pour plus d’informations, consultez Options de contrôle et propriétés de tâche courantes.

Variables de sortie

Aucun.

Notes

Configuration requise

Condition requise Description
Types de pipelines YAML, build classique, version classique
S’exécute sur Agent, DeploymentGroup
Demandes None
Capabilities Cette tâche ne répond à aucune demande pour les tâches suivantes dans le travail.
Restrictions de commandes Quelconque
Variables settables Quelconque
Version de l’agent 1.91.0 ou version ultérieure
Catégorie de la tâche Déployer