

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Gestion des produits
<a name="catalogs_products"></a>

Vous pouvez créer des produits, mettre à jour des produits en créant une nouvelle version basée sur un modèle mis à jour et regrouper les produits dans des portefeuilles afin de les distribuer aux utilisateurs.

Les nouvelles versions de produits sont propagées vers tous les utilisateurs qui ont accès au produit grâce à un portefeuille. Lorsque vous distribuez une mise à jour, les utilisateurs finaux peuvent mettre à jour les produits provisionnés existants.

**Topics**
+ [Affichage de la page des produits](#productmgmt-menu)
+ [Création de produits](productmgmt-cloudresource.md)
+ [Ajouter des produits aux portefeuilles](catalogs_portfolios_adding-products.md)
+ [Mise à jour des produits](productmgmt-update.md)
+ [Synchronisation de produits avec des modèles de fichiers provenant GitHub d' GitHub Enterprise ou de Bitbucket](git-synced-sc-products.md)
+ [Supprimer des produits](productmgmt-delete.md)
+ [Gestion des versions](managing-versions.md)

## Affichage de la page des produits
<a name="productmgmt-menu"></a>

Vous gérez les produits depuis la page **Liste des produits** de la console AWS Service Catalog d'administration.

**Pour consulter la page de **liste des produits****

1. Ouvrez la console Service Catalog à l'adresse [https://console.aws.amazon.com/servicecatalog/](https://console.aws.amazon.com/servicecatalog/).

1. Choisissez la **liste des produits**.

# Création de produits
<a name="productmgmt-cloudresource"></a>

 Vous créez des produits à partir de la page **Produits** de la AWS Service Catalog console d'administration. 

**Note**  
La création de produits Terraform nécessite une configuration supplémentaire, notamment un moteur de provisionnement Terraform et un rôle de lancement. Pour plus d'informations, consultez[Commencer à utiliser un produit Terraform](getstarted-Terraform.md). 

**Pour créer un nouveau AWS Service Catalog produit**

1. Accédez à la page de **liste des produits**. 

1. Choisissez **Créer un produit**, puis choisissez **Créer un produit**.

1. **Détails du produit** : vous permet de choisir le type de produit que vous souhaitez créer. AWS Service Catalog prend en charge CloudFormation, Terraform Cloud et types de produits externes (prend en charge Terraform Community Edition). Les détails du produit contiennent également les métadonnées qui apparaissent lorsque vous recherchez et consultez des produits dans une liste ou une page détaillée. Saisissez :
   + **Nom du produit** : nom du produit.
   +  **Description du produit** — La description apparaît dans la liste des produits pour vous aider à choisir le bon produit.
   + **Propriétaire** : personne ou organisation qui publie ce produit. Le propriétaire peut être le nom de votre organisation informatique ou celui de votre administrateur.
   + **Distributeur** (facultatif) : nom de l'éditeur de l'application. Ce champ permet de trier la liste des produits pour faciliter la recherche de produits.

1. **Les détails de version** vous permettent d'ajouter votre fichier modèle et de créer votre produit. Saisissez :
   +  **Choisir une méthode** — Il existe quatre méthodes pour ajouter un fichier modèle. 
     + **Utiliser un fichier modèle local** - Téléchargez un CloudFormation modèle ou un fichier de configuration Terraform tar.gz à partir d'un lecteur local. 
     + **Utiliser une URL Amazon S3** : spécifiez une URL qui pointe vers un CloudFormation modèle ou un fichier de configuration Terraform tar.gz stocké dans Amazon S3. Si vous spécifiez une URL Amazon S3, elle doit commencer par`https://`.
     + **Utiliser un référentiel externe** : spécifiez votre référentiel de code GitHub, GitHub Enterprise ou Bitbucket. AWS Service Catalog vous permet de synchroniser des produits avec des fichiers modèles. Pour les produits Terraform, le format de fichier modèle doit être un seul fichier archivé dans Tar et compressé dans Gzip.
     + **Utiliser une CloudFormation pile existante** : entrez l'ARN d'une CloudFormation pile existante. Cette méthode ne prend pas en charge les produits Terraform Cloud ou externes. 
   +  **Nom de la version** (facultatif) — Le nom de la version du produit (par exemple, « v1 », « v2beta »). Les espaces ne sont pas autorisés.
   +  **Description** (facultatif) — Description de la version du produit, notamment en quoi cette version diffère des autres versions.
   +  **Conseils** — Géré dans l'onglet Versions de la page de **détails d'un produit**. Lorsqu'une version de produit est créée, pendant le processus de création du produit, les instructions relatives à cette version sont définies par défaut. Pour en savoir plus sur les conseils, consultez [la section Gestion des versions](https://docs.aws.amazon.com/servicecatalog/latest/adminguide/managing-versions.html).

1. **Les informations relatives au support** identifient l'organisation au sein de votre entreprise et fournissent un point de contact pour l'assistance. Saisissez :
   + **Contact par e-mail** (facultatif) : adresse e-mail utilisée pour signaler les problèmes liés au produit.
   + **Lien d'assistance** (facultatif) : URL d'un site où les utilisateurs peuvent trouver des informations d'assistance ou déposer des tickets. L'URL doit commencer par `http://` ou `https://`. Les administrateurs sont responsables du maintien de l'exactitude et de l'accès aux informations d'assistance.
   + **Description du support** (facultatif) — Description de la manière dont vous devez utiliser le **contact par e-mail** et le lien d'**assistance**.

1.  **Gérer les balises** (facultatif) — En plus d'utiliser des balises pour classer vos ressources, vous pouvez également les utiliser pour authentifier vos autorisations de création de cette ressource. 

1. **Créer un produit** — Lorsque vous avez rempli le formulaire, sélectionnez **Créer un produit**. Après quelques secondes, le produit apparaît sur la page de **liste des produits**. Vous pouvez avoir besoin d'actualiser votre navigateur pour voir le produit.

Vous pouvez également l'utiliser CodePipeline pour créer et configurer un pipeline afin de déployer votre modèle de produit AWS Service Catalog et d'apporter les modifications que vous avez apportées à votre référentiel source. Pour plus d'informations, consultez [Tutoriel : Création d'un pipeline qui se déploie sur AWS Service Catalog](https://docs.aws.amazon.com/codepipeline/latest/userguide/tutorials-S3-servicecatalog.html). 

Vous pouvez définir les propriétés des paramètres dans votre modèle CloudFormation ou dans celui de Terraform et appliquer ces règles lors du provisionnement. Ces propriétés peuvent définir la longueur minimale et maximale, les valeurs minimales et maximales, les valeurs autorisées et une expression régulière pour la valeur. AWS Service Catalog émet un avertissement lors du provisionnement si la valeur fournie ne respecte pas la propriété du paramètre. Pour en savoir plus sur les propriétés des paramètres, consultez la section [Paramètres](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/parameters-section-structure.html) du *guide de CloudFormation l'utilisateur*.

## Résolution des problèmes
<a name="productmgmt-cloudresource-troubleshooting"></a>

 Vous devez être autorisé à récupérer des objets depuis des compartiments Amazon S3. Dans le cas contraire, vous risquez de rencontrer l'erreur suivante lors du lancement ou de la mise à jour d'un produit. 

```
Error: failed to process product version s3 access denied exception
```

 Si vous recevez ce message, assurez-vous d'être autorisé à récupérer des objets dans les compartiments suivants : 
+  Le compartiment dans lequel le modèle d'artefact de provisionnement est stocké. 
+  Le bucket qui commence par « ***cf-templates-\$1*** » et dans lequel est stocké le modèle d'artefact d' AWS Service Catalog approvisionnement. 
+  Le compartiment interne qui commence par « ***sc-\$1*** » et où AWS Service Catalog stocke les métadonnées. Vous ne pourrez pas voir ce compartiment depuis votre compte. 

 L'exemple de politique suivant indique les autorisations minimales requises pour récupérer des objets dans les compartiments mentionnés précédemment. 

```
{
          "Sid": "VisualEditor1",
          "Effect": "Allow",
          "Action": "s3:GetObject*",
          "Resource": [
              "arn:aws:s3:::YOUR_TEMPLATE_BUCKET",
              "arn:aws:s3:::YOUR_TEMPLATE_BUCKET/*",
              "arn:aws:s3:::cf-templates-*",
              "arn:aws:s3:::cf-templates-*/*",
              "arn:aws:s3:::sc-*",
              "arn:aws:s3:::sc-*/*"
          ]
      }
```

# Ajouter des produits aux portefeuilles
<a name="catalogs_portfolios_adding-products"></a>

 Vous pouvez ajouter des produits à autant de portefeuilles que vous le souhaitez. Lorsqu'un produit est mis à jour, tous les portefeuilles (y compris les portefeuilles partagés) contenant le produit reçoivent automatiquement la nouvelle version. 

**Ajout d'un produit à un portefeuille à partir de votre catalogue**

1.  Accédez à la page de **liste des produits**. 

1.  Sélectionnez un produit, puis sélectionnez **Actions**. Dans le menu déroulant, choisissez **Ajouter un produit au portefeuille.** Vous êtes redirigé vers la page **Ajouter *name-of-product* au portfolio**. 

1.  Choisissez un portefeuille, puis choisissez **Ajouter un produit au portefeuille**. 

Lors de l'ajout d'un produit Terraform à un portefeuille, le produit nécessite une contrainte de lancement. Vous devez sélectionner un rôle IAM dans votre compte, saisir un ARN de rôle IAM ou saisir un nom de rôle. Si vous spécifiez un nom de rôle et si un compte utilise la contrainte de lancement, le compte utilise ce nom pour le rôle IAM. Cela permet aux contraintes relatives aux rôles de lancement d'être indépendantes du compte, ce qui vous permet de créer moins de ressources par compte partagé. Pour plus de détails et des instructions, consultez [Étape 6 : Ajouter une contrainte de lancement à votre produit Terraform](getstarted-launchconstraint-Terraform.md) 

 Un portefeuille peut contenir de nombreux produits qui sont une combinaison de types CloudFormation de produits Terraform. 

# Mise à jour des produits
<a name="productmgmt-update"></a>

 Lorsque vous mettez à jour le modèle d'un produit, vous créez une nouvelle version du produit. Les nouvelles versions du produit sont automatiquement disponibles pour tous les utilisateurs qui ont accès à un portefeuille contenant le produit. 

**Note**  
Lorsque vous mettez à jour un produit existant, vous ne pouvez pas modifier le type de produit (CloudFormation ni Teraform). Par exemple, si vous mettez à jour un CloudFormation produit, vous ne pouvez pas remplacer le CloudFormation modèle existant par un fichier de configuration Terraform tar.gz. Vous devez mettre à jour le fichier CloudFormation modèle existant avec un nouveau fichier CloudFormation modèle.

 Les utilisateurs finaux qui exécutent actuellement un produit provisionné de la version précédente du produit peuvent mettre à jour leur produit provisionné vers la nouvelle version. Lorsqu'une nouvelle version d'un produit est disponible, les utilisateurs peuvent utiliser la commande **Mettre à jour le produit provisionné** sur les pages de **liste des produits provisionnés** ou de détails des **produits provisionnés**. 

Avant de créer une nouvelle version d'un produit, il est AWS Service Catalog recommandé de tester les mises à jour de votre produit dans CloudFormation ou dans le moteur Terraform pour vous assurer qu'elles fonctionnent correctement.

**Pour créer une nouvelle version de produit**

1.  Accédez à la page **de liste des produits**. 

1.  Choisissez le produit que vous souhaitez mettre à jour. Vous êtes redirigé vers la page *de détails du produit*. 

1.  Sur la page des *détails du produit*, développez l'onglet **Versions**, puis choisissez **Créer une nouvelle version**. 

1.  Sous **Détails de la version**, effectuez les opérations suivantes : 
   + **Choisir un modèle** — Il existe quatre méthodes pour ajouter un fichier modèle. 

     *Utiliser un fichier modèle local* - Téléchargez un CloudFormation modèle ou un fichier de configuration Terraform tar.gz à partir d'un lecteur local. 

     *Utiliser une URL Amazon S3* : spécifiez une URL qui pointe vers un CloudFormation modèle ou un fichier de configuration Terraform tar.gz stocké dans Amazon S3. Si vous spécifiez une URL Amazon S3, elle doit commencer par https ://.

     *Utiliser un référentiel externe* : spécifiez votre référentiel de code GitHub, GitHub Enterprise ou Bitbucket. AWS Service Catalog vous permet de synchroniser des produits avec des fichiers modèles. Pour les produits Terraform, le format de fichier modèle doit être un seul fichier archivé dans Tar et compressé dans Gzip.

     *Utiliser une CloudFormation pile existante* : entrez l'ARN d'une CloudFormation pile existante. Cette méthode ne prend pas en charge les produits Terraform Cloud ou externes. 
   + **Titre de la version** : nom de la version du produit (par exemple, « v1 », « v2beta »). Les espaces ne sont pas autorisés. 
   + **Description** (facultatif) — Description de la version du produit, indiquant en quoi cette version diffère de la version précédente.

1. Choisissez **Créer une version du produit**.

 Vous pouvez également l'utiliser CodePipeline pour créer et configurer un pipeline dans lequel déployer votre modèle de AWS Service Catalog produit et transférer vos modifications dans votre référentiel source. Pour plus d'informations, consultez [Tutoriel : Création d'un pipeline qui se déploie sur AWS Service Catalog](https://docs.aws.amazon.com/codepipeline/latest/userguide/tutorials-S3-servicecatalog.html).

# Synchronisation de produits avec des modèles de fichiers provenant GitHub d' GitHub Enterprise ou de Bitbucket
<a name="git-synced-sc-products"></a>

AWS Service Catalog vous permet de synchroniser les produits avec des fichiers modèles gérés par le biais d'un fournisseur de référentiel externe. AWS Service Catalog désigne les produits dotés de ce type de connexion au modèle en tant que produits *synchronisés avec Git*. Les options de référentiel incluent GitHub GitHub Enterprise ou Bitbucket. Une fois que vous vous êtes autorisé Compte AWS avec un compte de référentiel externe, vous pouvez créer de nouveaux AWS Service Catalog produits ou mettre à jour des produits existants pour les synchroniser avec un fichier modèle du référentiel. Lorsque des modifications sont apportées au fichier modèle et validées dans le référentiel (par exemple, à l'aide de git-push), les modifications sont AWS Service Catalog automatiquement détectées et une nouvelle version du produit (artefact) est créée. 

**Topics**
+ [Autorisations requises pour synchroniser les produits avec des fichiers modèles externes](#required-perms-synced-repo)
+ [Création d'une connexion à un compte](#create-synced-product)
+ [Affichage des connexions de produits synchronisées avec Git](#view-repo-sync)
+ [Mise à jour des connexions aux produits synchronisées avec Git](#update-repo-sync)
+ [Suppression des connexions de produits synchronisées avec Git](#delete-repo-sync)
+ [Synchronisation des produits Terraform avec des modèles de fichiers depuis GitHub Enterprise GitHub ou Bitbucket](#git-synced-Terraform)
+ [Région AWS support pour les produits synchronisés avec Git](git-sync-supported-regions.md)

## Autorisations requises pour synchroniser les produits avec des fichiers modèles externes
<a name="required-perms-synced-repo"></a>

Vous pouvez utiliser la politique Gestion des identités et des accès AWS (IAM) suivante comme modèle pour permettre aux AWS Service Catalog administrateurs de synchroniser des produits avec des fichiers modèles provenant d'un référentiel externe. Cette politique inclut les autorisations requises de la part de CodeConnections et AWS Service Catalog. AWS Service Catalog vous recommande de copier le modèle de politique ci-dessous et d'utiliser également la [politique AWS Service Catalog`AWSServiceCatalogAdminFullAccess` gérée](https://docs.aws.amazon.com/servicecatalog/latest/adminguide/security-iam-awsmanpol) lors de l'activation de produits synchronisés avec le référentiel. 

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "CodeStarAccess",
            "Effect": "Allow",
            "Action": [
            "codestar-connections:UseConnection",
            "codestar-connections:PassConnection",
            "codestar-connections:CreateConnection",
            "codestar-connections:DeleteConnection",
            "codestar-connections:GetConnection",
            "codestar-connections:ListConnections",
            "codestar-connections:ListInstallationTargets",
            "codestar-connections:GetInstallationUrl",
            "codestar-connections:StartOAuthHandshake",
            "codestar-connections:UpdateConnectionInstallation",
            "codestar-connections:GetIndividualAccessToken"
            ],
            "Resource": "arn:aws:codestar-connections:*:*:connection/*"
        },
        {
        "Sid": "CreateSLR",
        "Effect": "Allow",
        "Action": "iam:CreateServiceLinkedRole",
        "Resource": "arn:aws:iam::*:role/aws-service-role/sync.servicecatalog.amazonaws.com/AWSServiceRoleForServiceCatalogArtifactSync",
        "Condition": {
        "StringLike": {
        "iam:AWSServiceName": "sync.servicecatalog.amazonaws.com"
                }
            }
        }
    ]
}
```

------

## Création d'une connexion à un compte
<a name="create-synced-product"></a>

Avant de synchroniser un fichier modèle avec un AWS Service Catalog produit, vous devez créer et autoriser une account-to-account connexion unique. Vous utilisez cette connexion pour spécifier les détails du référentiel contenant le fichier modèle souhaité. Vous pouvez créer une connexion à l'aide de la AWS Service Catalog CodeConnections console, de la console AWS Command Line Interface (CLI) ou CodeConnections APIs. 

Après avoir établi une connexion, vous pouvez utiliser la AWS Service Catalog console, l' AWS Service Catalog API ou la CLI pour créer un AWS Service Catalog produit synchronisé. AWS Service Catalog les administrateurs peuvent créer de nouveaux produits ou mettre à jour AWS Service Catalog des produits existants sur la base d'un fichier modèle dans un référentiel et une branche. Si une modification est validée dans le référentiel, la détecte AWS Service Catalog automatiquement et crée une nouvelle version du produit. Les versions précédentes du produit sont maintenues jusqu'à la limite de versions prescrite et sont **considérées comme obsolètes.** 

En outre, crée AWS Service Catalog automatiquement un rôle lié à un service (SLR) une fois la connexion créée. Ce SLR permet AWS Service Catalog de détecter toute modification de fichier modèle validée dans le référentiel. Le SLR permet également de AWS Service Catalog créer automatiquement de nouvelles versions de produits pour les produits synchronisés. Pour plus d'informations sur les autorisations et les fonctionnalités du SLR, reportez-vous à la section Rôles [liés à un service](#required-perms-synced-repo) pour. AWS Service Catalog

**Pour créer un nouveau produit synchronisé avec Git**

1. Dans le panneau de navigation de gauche, choisissez **Liste des produits**, puis sélectionnez **Créer un produit**. 

1. Entrez les **détails du produit**. 

1. Dans Détails de la version, choisissez **Spécifiez votre référentiel de code à l'aide d'un AWS CodeStar fournisseur**, puis choisissez le lien **Créer une nouvelle AWS CodeStar connexion**. 

1. Après avoir créé la connexion, actualisez la liste des connexions, puis sélectionnez la nouvelle connexion. Spécifiez les détails du référentiel, notamment le **chemin du **référentiel**, de la **branche** et du fichier modèle**. 

   Pour plus d'informations sur l'utilisation d'un fichier de configuration Terraform, consultez. [Synchronisation des produits Terraform avec des modèles de fichiers depuis GitHub Enterprise GitHub ou Bitbucket](#git-synced-Terraform) 

   1. (Facultatif lors de la création d'une nouvelle ressource de AWS Service Catalog produit) Dans la section **Support Details**, ajoutez des métadonnées pour le produit.

   1. (Facultatif lors de la création d'une nouvelle ressource de AWS Service Catalog produit) Dans la section **Balises**, choisissez **Ajouter une nouvelle balise** et entrez les paires **clé** et **valeur**.

1. Choisissez **Créer un nouveau produit**. 

**Pour créer plusieurs produits synchronisés avec Git**

1. Dans le panneau de navigation de gauche de la AWS Service Catalog console, choisissez **Liste des produits**, puis sélectionnez **Créer plusieurs produits gérés par git**. 

1. Entrez les **détails courants du produit**. 

1. Dans Détails du référentiel externe, sélectionnez une **AWS CodeStar connexion**, puis spécifiez le **référentiel** et la **branche**. 

1. Dans le volet Ajouter des produits, entrez le **chemin du fichier modèle** et le **nom du produit**. Choisissez **Ajouter un nouvel article** et continuez à ajouter des produits comme vous le souhaitez.

1. Après avoir ajouté tous les produits souhaités, choisissez **Créer des produits en bloc**. 

**Pour connecter un AWS Service Catalog produit existant à un référentiel externe**

1. Dans le panneau de navigation de gauche de la AWS Service Catalog console, sélectionnez **Liste des produits**, puis sélectionnez **Connecter les produits à un référentiel externe**. 

1. Sur la page Sélectionner des produits, sélectionnez les produits que vous souhaitez connecter à un référentiel externe, puis choisissez **Suivant**. 

1. Sur la page Spécifier les détails de la source, sélectionnez une AWS CodeStar connexion existante, puis spécifiez le **référentiel**, la **branche** et le **chemin du fichier modèle**. 

1. Choisissez **Suivant**. 

1. Sur la page Vérifier et envoyer, vérifiez les détails de connexion, puis choisissez **Connect products to an external repository**. 

## Affichage des connexions de produits synchronisées avec Git
<a name="view-repo-sync"></a>

Vous pouvez utiliser la AWS Service Catalog console, l'API ou AWS CLI pour afficher les détails de connexion au référentiel. Pour les AWS Service Catalog produits liés à un fichier modèle, vous pouvez récupérer les informations relatives à la connexion au référentiel et à la dernière synchronisation du modèle avec le produit à partir de l'**état de la dernière synchronisation**. 

**Note**  
Vous pouvez consulter les informations du référentiel et le **statut de la dernière synchronisation** au niveau du produit. Les utilisateurs doivent disposer des autorisations IAM CodeConnections APIs pour consulter les détails du référentiel. Reportez-vous à la section [Autorisations requises pour synchroniser les AWS Service Catalog produits avec les fichiers modèles](#required-perms-synced-repo) pour plus d'informations sur la politique requise pour ces autorisations IAM. 

**Pour afficher les détails de la connexion et du référentiel à l'aide de AWS Management Console**

1. Dans le panneau de navigation de gauche, sélectionnez **Liste des produits**. 

1. Sélectionnez le produit dans la liste. 

1. Sur la page **Produit**, accédez à la section **Informations sur la source du produit**. 

1. Pour afficher l'ID de révision source d'une version du produit, cliquez sur le lien **Dernière version créée**. La section **Détails de la version** affiche l'ID de révision de la source. 

**Pour afficher les détails de la connexion et du référentiel à l'aide de AWS CLI**

À partir de AWS CLI, exécutez les commandes suivantes : 

`$ aws servicecatalog describe-product-as-admin`

`$ aws servicecatalog describe-provisioning-artifact`

`$ aws servicecatalog search-product-as-admin`

`$ aws servicecatalog list-provisioning-artifacts`

## Mise à jour des connexions aux produits synchronisées avec Git
<a name="update-repo-sync"></a>

Vous pouvez mettre à jour les connexions de compte existantes et les produits synchronisés avec Git à l'aide de la AWS Service Catalog console, de l' AWS Service Catalog API ou. AWS CLI

Pour savoir comment connecter un AWS Service Catalog produit existant à un fichier modèle, reportez-vous à la section [Création de nouvelles connexions de produits synchronisées avec Git](#create-synced-product). 

**Pour mettre à jour les produits existants vers des produits synchronisés avec Git**

1. Dans le panneau de navigation de gauche, choisissez **Liste des produits**, puis choisissez l'une des options suivantes :
   + Pour mettre à jour un **seul produit**, sélectionnez le produit, accédez à la section **Informations sur la source du produit**, puis choisissez **Modifier les détails**. 
   + Pour mettre à jour **plusieurs produits**, choisissez **Connect products to a external repository**, sélectionnez jusqu'à dix produits, puis cliquez sur **Next**. 

1. Dans la section **Informations sur la source du produit**, effectuez les mises à jour suivantes : 
   + Spécifiez la connexion. 
   + Spécifiez le référentiel. 
   + Spécifiez la branche. 
   + Nommez le fichier modèle. 

1. Sélectionnez **Enregistrer les modifications**. 

**Note**  
Pour les produits qui ne sont pas encore connectés à un référentiel externe, vous pouvez utiliser l'option **Connect to an external repository** affichée dans l'alerte en haut de la page d'informations du produit après avoir sélectionné le produit. 

Vous pouvez également utiliser la AWS Service Catalog console ou AWS CLI le 
+ Connect un AWS Service Catalog produit existant à un fichier modèle dans un référentiel externe
+ Mettez à jour les métadonnées du produit, notamment le nom, la description et les balises du produit. 
+ Reconfigurez (mettez à jour la synchronisation pour utiliser une autre source de référentiel) une connexion pour un AWS Service Catalog produit précédemment connecté. 

**Pour mettre à jour les informations de connexion et de référentiel à l'aide de AWS Service Catalog la console**

1. Dans le panneau de navigation de gauche de la AWS Service Catalog console, choisissez **Liste des produits**, puis sélectionnez un produit actuellement connecté à un référentiel externe. 

1. Dans la section **Détails de la source du produit**, choisissez **Modifier la source du produit**. 

1. Dans la section **Détails de la source du produit**, spécifiez le nouveau référentiel souhaité. 

1. Sélectionnez **Enregistrer les modifications**. 

**Pour mettre à jour les informations de connexion et de référentiel à l'aide de AWS CLI**

À partir des `$ aws servicecatalog update-provisioning-artifact` commandes AWS CLI Exécuter `$ aws servicecatalog update-product` et. 

## Suppression des connexions de produits synchronisées avec Git
<a name="delete-repo-sync"></a>

Vous pouvez supprimer une connexion entre un AWS Service Catalog produit et un fichier modèle à l'aide de la AWS Service Catalog console, de CodeConnections l'API ou AWS CLI. Lorsque vous déconnectez un produit d'un fichier modèle, le AWS Service Catalog produit synchronisé passe à un produit géré régulièrement. Après avoir déconnecté le produit, si le fichier modèle est modifié et validé dans le référentiel précédemment connecté, les modifications *ne sont pas* reflétées. Pour reconnecter un AWS Service Catalog produit à un fichier modèle dans un référentiel externe, reportez-vous à la section [Mise à jour des connexions et des produits synchronisés AWS Service Catalog](). 

**Pour déconnecter un produit synchronisé avec Git à l'aide de la console AWS Service Catalog**

1. Dans le AWS Management Console, choisissez **Liste des produits** dans le panneau de navigation de gauche. 

1. Sélectionnez un produit dans la liste. 

1. Sur la page **Produit**, accédez à la section **Informations sur la source du produit**. 

1. Choisissez **Déconnecter**. 

1. Confirmez l'action, puis choisissez **Déconnecter**. 

**Pour déconnecter un produit synchronisé avec Git à l'aide de AWS CLI**

À partir du AWS CLI, exécutez la `$ aws servicecatalog update-product` commande. Dans l'`ConnectionParameters`entrée, supprimez la connexion spécifiée. 

**Pour supprimer une connexion à l'aide de l' CodeConnections API ou AWS CLI**

Dans l' CodeConnections API ou AWS CLI exécutez la `$ aws codestar-connections delete-connection` commande. 

## Synchronisation des produits Terraform avec des modèles de fichiers depuis GitHub Enterprise GitHub ou Bitbucket
<a name="git-synced-Terraform"></a>

Lors de la création d'un produit synchronisé avec Git à l'aide d'un fichier de configuration Terraform, le chemin du fichier accepte uniquement le format tar.gz. Les formats de dossiers Terraform ne sont pas acceptés dans le chemin du fichier. 

# Région AWS support pour les produits synchronisés avec Git
<a name="git-sync-supported-regions"></a>

AWS Service Catalog prend en charge les produits synchronisés avec Git Régions AWS comme indiqué dans le tableau ci-dessous. 


****  

| Région AWS nom | Région AWS identité | Support pour les produits synchronisés avec Git | 
| --- | --- | --- | 
| USA Est (Virginie du Nord) | us-east-1 | Oui | 
| USA Est (Ohio) | us-east-2 | Oui | 
| USA Ouest (Californie du Nord) | us-west-1 | Oui | 
| USA Ouest (Oregon) | us-west-2 | Oui | 
| Afrique (Le Cap) | af-south-1 | Non | 
| Asie-Pacifique (Hong Kong) | ap-east-1 | Non | 
| Asie-Pacifique (Jakarta) | ap-southeast-3 | Non | 
| Asie-Pacifique (Mumbai) | ap-south-1 | Oui | 
| Asie-Pacifique (Osaka) | ap-northeast-3 | Non | 
| Asie-Pacifique (Séoul) | ap-northeast-2 | Oui | 
| Asie-Pacifique (Singapour) | ap-southeast-1 | Oui | 
| Asie-Pacifique (Sydney) | ap-southeast-2 | Oui | 
| Asie-Pacifique (Tokyo) | ap-northeast-1 | Oui | 
| Canada (Centre) | ca-central-1 | Oui | 
| Europe (Francfort) | eu-central-1 | Oui | 
| Europe (Irlande) | eu-west-1 | Oui | 
| Europe (Londres) | eu-west-2 | Oui | 
| Europe (Milan) | eu-south-1 | Non | 
| Europe (Paris) | eu-west-3 | Oui | 
| Europe (Stockholm) | eu-north-1 | Oui | 
| Moyen-Orient (Bahreïn) | me-south-1 | Non | 
| Amérique du Sud (São Paulo) | sa-east-1 | Oui | 
| AWS GovCloud (USA Est) | us-gov-east-1 | Non | 
| AWS GovCloud (US-Ouest) | us-gov-west-1 | Non | 

# Supprimer des produits
<a name="productmgmt-delete"></a>

Lorsque vous supprimez un produit, AWS Service Catalog toutes les versions du produit sont supprimées de chaque portefeuille contenant le produit. 

AWS Service Catalog vous permet de supprimer un produit à l'aide de la AWS Service Catalog console ou AWS CLI. Pour réussir à supprimer un produit, vous devez d'abord dissocier toutes les ressources associées au produit. Les associations de ressources entre produits et ressources incluent les associations de portefeuilles TagOptions, les budgets et les actions de service. 

**Important**  
 Vous ne pouvez pas récupérer un produit une fois qu'il a été supprimé. 

**Pour supprimer un produit à l'aide de la AWS Service Catalog console**

1.  Accédez à la page **Portefeuilles** et sélectionnez le portefeuille contenant le produit que vous souhaitez supprimer. 

1.  Sélectionnez le produit que vous souhaitez supprimer, puis choisissez **Supprimer** dans le coin supérieur droit du volet du produit. 

1. Pour les produits *sans ressources associées*, confirmez le produit que vous souhaitez supprimer en saisissant **Supprimer** dans la zone de texte, puis en choisissant **Supprimer**. 

   Pour les produits *associés aux ressources*, passez à l'étape 4. 

1. Dans la fenêtre **Supprimer le produit**, consultez le tableau **des associations**, qui affiche toutes les ressources associées au produit. AWS Service Catalog tente de dissocier ces ressources lorsque vous supprimez le produit. 

1. Confirmez que vous souhaitez supprimer le produit et toutes les ressources associées en saisissant **Supprimer** dans la zone de texte. 

1. Choisissez **Dissocier et supprimer**. 

S'il n' AWS Service Catalog est pas possible de dissocier toutes les ressources du produit, celui-ci n'est pas supprimé. La fenêtre **Supprimer le produit** affiche le nombre de dissociations ayant échoué et une description de chaque échec. Pour plus d'informations sur la résolution des dissociations de ressources ayant échoué lors de la suppression d'un produit, voir *Résolution des dissociations de ressources ayant échoué lors de la suppression d'un produit ci-dessous*. 

**Topics**
+ [Suppression de produits à l'aide du AWS CLI](product-delete-cli.md)
+ [Résolution des dissociations de ressources échouées lors de la suppression d'un produit](product-delete-exception.md)

# Suppression de produits à l'aide du AWS CLI
<a name="product-delete-cli"></a>

AWS Service Catalog vous permet d'utiliser le [AWS Command Line Interface](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-welcome.html)(AWS CLI) pour supprimer des produits de votre portefeuille. Il s' AWS CLI agit d'un outil open source qui vous permet d'interagir avec les AWS services à l'aide de commandes dans votre shell de ligne de commande. La fonction AWS Service Catalog force-delete nécessite un [AWS CLI alias](https://docs.aws.amazon.com/cli/latest/userguide/cli-usage-alias.html), c'est-à-dire un raccourci que vous pouvez créer dans le AWS CLI pour raccourcir les commandes ou les scripts que vous utilisez fréquemment. 

## Conditions préalables
<a name="product-delete-cli-requirements"></a>
+ Installez et configurez l’ AWS CLI. Pour plus d'informations, consultez la section [Installation ou mise à jour de la dernière version des principes de base de la](https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html) [configuration AWS CLI et de](https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-quickstart.html) la configuration. Utilisez une AWS CLI version minimale de 1.11.24 ou 2.0.0. 
+ L'alias CLI de suppression du produit nécessite un terminal compatible avec bash et le processeur JSON de ligne de commande JQ. Pour plus d'informations sur l'installation du processeur JSON en ligne de commande, consultez [Download](https://stedolan.github.io/jq/download/) jq. 
+ Créez un AWS CLI alias pour les appels d'`Disassociation`API par lots, ce qui vous permet de supprimer un produit en une seule commande. 

Pour réussir à supprimer un produit, vous devez d'abord dissocier toutes les ressources associées au produit. Parmi les exemples d'associations de ressources de produits, citons les associations de portefeuilles, les budgets, les options de balise et les actions de service. Lorsque vous utilisez la CLI pour supprimer un produit, l'`force-delete-product`alias de la CLI vous permet d'appeler l'`Disassociate`API pour dissocier toutes les ressources susceptibles d'empêcher l'`DeleteProduct`API. Cela permet d'éviter un appel distinct à des dissociations individuelles. 

**Note**  
Les chemins de fichiers indiqués dans les procédures ci-dessous peuvent varier en fonction du système d'exploitation que vous utilisez pour effectuer ces actions. 

## Création d'un AWS CLI alias pour supprimer AWS Service Catalog des produits
<a name="product-delete-cli-alias"></a>

Lorsque vous utilisez le AWS CLI pour supprimer un AWS Service Catalog produit, l'`force-delete-product`alias CLI vous permet d'appeler l'`Disassociate`API pour dissocier toutes les ressources susceptibles d'empêcher l'`DeleteProduct`appel. 

**Créez un `alias` fichier dans votre dossier AWS CLI de configuration**

1. Dans la AWS CLI console, accédez au dossier de configuration. Par défaut, le chemin du dossier de configuration est `~/.aws/` sous Linux et macOS, ou `%USERPROFILE%\.aws\` sous Windows. 

1. Créez un sous-dossier nommé à `cli` l'aide de la navigation dans les fichiers ou en saisissant la commande suivante dans votre terminal préféré : 

   ```
                $ mkdir -p ~/.aws/cli
   ```

   Le chemin par défaut du `cli` dossier obtenu est `~/.aws/cli/` sous Linux et macOS, ou `%USERPROFILE%\.aws\cli` sous Windows. 

1. Dans le nouveau `cli` dossier, créez un fichier texte nommé `alias` sans extension de fichier. Vous pouvez créer le `alias` fichier à l'aide de la navigation dans les fichiers ou en saisissant la commande suivante dans le terminal de votre choix : 

   ```
                 $ touch ~/.aws/cli/alias
   ```

1. Entrez `[toplevel]` sur la première ligne.

1. Enregistrez le fichier. 

Vous pouvez ensuite ajouter l' force-delete-productalias à votre `alias` fichier en collant manuellement le script d'alias dans le fichier ou en utilisant une commande dans la fenêtre du terminal. 

**Ajoutez manuellement l' force-delete-productalias à votre `alias` fichier**

1. Dans la AWS CLI console, accédez à votre dossier AWS CLI de configuration et ouvrez le `alias` fichier. 

1. Entrez l'alias de code suivant dans le fichier, sous la `[toplevel]` ligne : 

   ```
                [command servicecatalog]
             	 force-delete-product =
             	   !f() {
             	     if [ "$#" -ne 1 ]; then
             	         echo "Illegal number of parameters"
             	         exit 1
             	     fi
             	 
             	     if [[ "$1" != prod-* ]]; then
             	        echo "Please provide a valid product id."
             	        exit 1
             	     fi
             	 
             	     productId=$1
             	     describeProductAsAdminResponse=$(aws servicecatalog describe-product-as-admin --id $productId)
             	     listPortfoliosForProductResponse=$(aws servicecatalog list-portfolios-for-product --product-id $productId)
             	 
             	     tagOptions=$(echo "$describeProductAsAdminResponse" | jq -r '.TagOptions[].Id')
             	     budgetName=$(echo "$describeProductAsAdminResponse" | jq -r '.Budgets[].BudgetName')
             	     portfolios=$(echo "$listPortfoliosForProductResponse" | jq -r '.PortfolioDetails[].Id')
             	     provisioningArtifacts=$(echo "$describeProductAsAdminResponse" | jq -r '.ProvisioningArtifactSummaries[].Id')
             	     provisioningArtifactServiceActionAssociations=()
             	 
             	     for provisioningArtifactId in $provisioningArtifacts; do
             	       listServiceActionsForProvisioningArtifactResponse=$(aws servicecatalog list-service-actions-for-provisioning-artifact --product-id $productId --provisioning-artifact-id $provisioningArtifactId)
             	       serviceActions=$(echo "$listServiceActionsForProvisioningArtifactResponse" | jq -r '[.ServiceActionSummaries[].Id] | join(",")')
             	       if [[ -n "$serviceActions" ]]; then
             	         provisioningArtifactServiceActionAssociations+=("${provisioningArtifactId}:${serviceActions}")
             	       fi
             	     done
             	 
             	     echo "Before deleting a product, the following associated resources must be disassociated. These resources will not be deleted. This action may take some time, depending on the number of resources being disassociated."
             	 
             	     echo "Portfolios:"
             	     for portfolioId in $portfolios; do
             	       echo "\t${portfolioId}"
             	     done
             	 
             	     echo "Budgets:"
             	     if [[ -n "$budgetName" ]]; then
             	       echo "\t${budgetName}"
             	     fi
             	 
             	     echo "Tag Options:"
             	     for tagOptionId in $tagOptions; do
             	       echo "\t${tagOptionId}"
             	     done
             	 
             	     echo "Service Actions on Provisioning Artifact:"
             	     for association in "${provisioningArtifactServiceActionAssociations[@]}"; do
             	       echo "\t${association}"
             	     done
             	 
             	     read -p "Are you sure you want to delete ${productId}? y,n "
             	     if [[ ! $REPLY =~ ^[Yy]$ ]]; then
             	        exit
             	     fi
             	 
             	     for portfolioId in $portfolios; do
             	       echo "Disassociating ${portfolioId}"
             	       aws servicecatalog disassociate-product-from-portfolio --product-id $productId --portfolio-id $portfolioId
             	     done
             	 
             	     if [[ -n "$budgetName" ]]; then
             	       echo "Disassociating ${budgetName}"
             	       aws servicecatalog disassociate-budget-from-resource --budget-name "$budgetName" --resource-id $productId
             	     fi
             	 
             	     for tagOptionId in $tagOptions; do
             	       echo "Disassociating ${tagOptionId}"
             	       aws servicecatalog disassociate-tag-option-from-resource --tag-option-id $tagOptionId --resource-id $productId
             	     done
             	 
             	     for association in "${provisioningArtifactServiceActionAssociations[@]}"; do
             	       associationPair=(${association//:/ })
             	       provisioningArtifactId=${associationPair[0]}
             	       serviceActionsList=${associationPair[1]}
             	       serviceActionIds=${serviceActionsList//,/ }
             	       for serviceActionId in $serviceActionIds; do
             	         echo "Disassociating ${serviceActionId} from ${provisioningArtifactId}"
             	         aws servicecatalog disassociate-service-action-from-provisioning-artifact --product-id $productId --provisioning-artifact-id $provisioningArtifactId --service-action-id $serviceActionId
             	       done
             	     done
             	 
             	     echo "Deleting product ${productId}"
             	     aws servicecatalog delete-product --id $productId
             	 
             	   }; f
   ```

1. Enregistrez le fichier. 

**Utilisez la fenêtre du terminal pour ajouter l' force-delete-productalias à votre `alias` fichier**

1. Ouvrez la fenêtre de votre terminal et exécutez la commande suivante

   `$ cat >> ~/.aws/cli/alias`

1. Collez le script d'alias dans la fenêtre du terminal, puis appuyez sur *CTRL\$1D* pour quitter la `cat` commande. 

**Appelez l' force-delete-productalias**

1. Dans la fenêtre de votre terminal, exécutez la commande suivante pour appeler l'alias de produit de suppression

   `$ aws servicecatalog force-delete-product {product-id} `

   L'exemple ci-dessous montre la commande `force-delete-product` alias et la réponse qui en résulte 

   ```
                 $ aws servicecatalog force-delete-product prod-123
   ```

   ```
                 Before deleting a product, the following associated resources must be disassociated. These resources will not be deleted. This action may take some time, depending on the number of resources being disassociated.
                 Portfolios:
                   port-123
                 Budgets:
                     budgetName
                 Tag Options:
                     tag-123
                 Service Actions on Provisioning Artifact:
                     pa-123:act-123
                 Are you sure you want to delete prod-123? y,n
   ```

1. Entrez `y` pour confirmer que vous souhaitez supprimer le produit. 

Une fois le produit supprimé avec succès, la fenêtre du terminal affiche les résultats suivants

```
          Disassociating port-123
          Disassociating budgetName
          Disassociating tag-123
          Disassociating act-123 from pa-123
          Deleting product prod-123
```

## Ressources supplémentaires
<a name="product-delete-cli-resources"></a>

Pour plus d'informations sur AWS CLI l'utilisation d'alias et la suppression de AWS Service Catalog produits, consultez les ressources suivantes :
+ [Création et utilisation d' AWS CLI alias](https://docs.aws.amazon.com/cli/latest/userguide/cli-usage-alias.html) dans le guide de l'utilisateur *AWS Command Line Interface (CLI)*. 
+ [AWS CLI dépôt d'alias](https://github.com/awslabs/awscli-aliases) dépôt git. 
+ [Supprimer AWS Service Catalog des produits](https://docs.aws.amazon.com/servicecatalog/latest/adminguide/productmgmt-delete.html). 
+ [AWS re:Invent 2016 : L' AWS CLI utilisateur efficace sur](https://youtu.be/Xc1dHtWa9-Q?t=1593). *YouTube* 

# Résolution des dissociations de ressources échouées lors de la suppression d'un produit
<a name="product-delete-exception"></a>

Si votre précédente tentative de [suppression d'un produit](https://docs.aws.amazon.com/servicecatalog/latest/adminguide/productmgmt-delete.html) a échoué en raison d'exceptions liées à la dissociation des ressources, consultez la liste des exceptions et leurs solutions ci-dessous. 

**Note**  
Si vous avez fermé la fenêtre **Supprimer des produits** avant de recevoir le message d'échec de la dissociation des ressources, vous pouvez suivre les étapes 1 à 3 de la section *Supprimer un produit* pour ouvrir à nouveau la fenêtre.

**Pour résoudre un échec de dissociation des ressources**

Dans la fenêtre **Supprimer le produit**, consultez la colonne **État du tableau des** associations. Identifiez l'exception de dissociation des ressources qui a échoué et les solutions suggérées :


****  

| Type d'exception de statut | Cause | Résolution | 
| --- | --- | --- | 
| Produit prod-\$1\$1\$1\$1 | AWS Service Catalog Impossible de supprimer le produit car le produit est toujours associé à des budgets TagOptions, dont au moins un ProvisioningArtifact avec des actions associées, le produit est toujours affecté à un portefeuille, le produit a des utilisateurs ou le produit est soumis à des contraintes.  | Essayez à nouveau de supprimer le produit. | 
| Utilisateur : n'usernameest pas autorisé à effectuer : | L'utilisateur qui tente de supprimer le produit ne dispose pas des autorisations nécessaires pour dissocier les ressources du produit.  | AWS Service Catalog recommande de contacter l'administrateur de votre compte pour plus d'informations sur la dissociation des ressources de produits que vous n'êtes pas actuellement autorisé à dissocier.  | 

# Gestion des versions
<a name="managing-versions"></a>

 Vous attribuez les versions de produit lorsque vous créez un produit, et vous pouvez les mettre à jour à tout moment. 

 Les versions comportent un CloudFormation modèle, un titre, une description, un statut et des instructions. 

## État de la version
<a name="version-status"></a>

 Une version peut avoir l'un des trois états suivants : 
+  **Active** - Une version active apparaît dans la liste des versions et permet aux utilisateurs de la lancer. 
+  **Inactive** - Une version inactive est masquée dans la liste des versions. Les produits provisionnés existants lancés à partir de cette version ne seront pas affectés. 
+  **Supprimé** : une version supprimée est supprimée de la liste des versions. La suppression d'une version ne peut pas être annulée. 

## Guide de version
<a name="version-guidance"></a>

 Vous pouvez définir un guide de version pour fournir des informations aux utilisateurs finaux sur la version du produit. Le guide de version ne concerne que les versions actives du produit. 

 Il existe deux options pour le guide de version : 
+  **Aucune** : par défaut, les versions du produit ne contiennent aucun guide. Les utilisateurs finaux peuvent utiliser cette version pour mettre à jour et lancer les produits provisionnés. 
+  **Obsolète** : les utilisateurs ne peuvent pas lancer de nouveaux produits provisionnés à l'aide d'une version de produit obsolète. Si un produit provisionné p lancé précédemment utilise une version désormais obsolète, les utilisateurs peuvent uniquement mettre à jour ce produit provisionné en utilisant la version existante ou une nouvelle version. 

## Mise à jour des versions
<a name="updating-versions"></a>

 Vous attribuez les versions de produit lorsque vous créez un produit, et vous pouvez aussi les mettre à jour à tout moment. Pour plus d'informations sur la création d'un produit, consultez [Création de produits](productmgmt-cloudresource.md). 

**Pour mettre à jour une version de produit**

1.  Dans la AWS Service Catalog console, choisissez **Products**. 

1.  Dans la liste des produits, choisissez le produit dont vous souhaitez mettre à jour la version. 

1.  Sur la page **Product details (Détails du produit)**, choisissez l'onglet **Versions**, puis choisissez la version à mettre à jour. 

1.  Sur la page **Version details (Détails de la version)**, modifiez la version du produit, puis choisissez **Save changes (Enregistrer les modifications)**. 