Création d'un environnement
Dans votre projet, créez un environnement permettant de regrouper les configurations associées et de partager des valeurs entre elles afin de faciliter les déploiements. Les propriétés que vous ajoutez à un environnement sont automatiquement ajoutées aux configurations qui utilisent cet environnement. Dans la configuration, vous pouvez remplacer les valeurs fournies par l'environnement. Pour plus d'informations, consultez les avantages liés à l'utilisation des environnements.
Lorsque vous modifiez une configuration, vous pouvez sélectionner un environnement pour la configuration à utiliser dans la section Définir les détails.
Avant de commencer
Vous devez disposer du rôle Éditeur ou d'un rôle supérieur dans le service Projets d' IBM Cloud® pour créer et modifier des environnements. Pour plus d'informations sur l'accès et les autorisations, consultez la section Attribuer l'accès aux projets aux utilisateurs.
Création d'un environnement à l'aide de la console
Pour créer un environnement à partir de votre projet, procédez comme suit :
- Dans la console d' IBM Cloud, cliquez sur l'icône Menu de navigation
> Projets et sélectionnez un projet.
- Dans l'onglet Gérer, sélectionnez Environnements.
- Cliquez sur Créer.
- Donnez un nom à votre environnement, puis cliquez sur Ajouter pour ajouter des propriétés.
Il existe trois catégories de propriétés que vous pouvez ajouter à un environnement : authentification, conformité et entrée. Vous pouvez ajouter ces propriétés manuellement ou ajouter plusieurs propriétés à la fois à partir d'une configuration dans votre projet.
Ajouter des propriétés manuellement
Si vous ajoutez des propriétés manuellement, pensez à ajouter d'abord la méthode d'authentification. La méthode d'authentification pour votre compte cible est requise pour autoriser un déploiement vers ce compte cible. La méthode d'authentification est également utilisée si vous souhaitez importer une stratégie d' Workload Protection s depuis votre compte cible. Vous ne pouvez ajouter qu'une seule propriété d'authentification à un environnement, et vous ne pouvez ajouter une propriété de conformité à un environnement que si vous disposez d'une instance, d'une zone et d'une politique Workload Protection dans le compte cible que vous souhaitez utiliser. Votre instance d' Workload Protection doit également être activée pour CSPM. Vous ne pouvez pas ajouter une propriété de conformité qui utilise les contrôles par défaut de l'architecture déployable, car ces contrôles par défaut varient d'une architecture à l'autre.
Vous devez d'abord fournir une propriété d'authentification dans votre environnement avec des informations d'authentification valides si vous souhaitez ajouter une propriété de conformité et spécifier une politique à partir de Workload Protection. Vous pouvez utiliser une clé API avec Secrets Manager ou vous pouvez utiliser un profil approuvé pour vous authentifier auprès du compte cible qui contient votre pièce jointe Workload Protection.
Les informations d'authentification et de conformité sont utilisées dans toutes les configurations. Ainsi, si vous ajoutez une propriété d'authentification ou une propriété de conformité à votre environnement, celle-ci est automatiquement ajoutée à toutes les configurations qui utilisent cet environnement.
Les valeurs d'entrée peuvent également être ajoutées en tant que propriétés à votre environnement. Lorsque vous ajoutez une entrée à un environnement, le nom de votre entrée dans l'environnement doit correspondre au nom de l'entrée dans les
configurations qui utilisent cet environnement. Si les noms ne correspondent pas, la valeur de l'environnement n'est pas utilisée dans la configuration. Par exemple, si vous ajoutez une entrée à votre environnement et que vous la nommez
resource_group, mais qu'une configuration utilisant cet environnement comporte une entrée nommée, resourcegroup la valeur de l'environnement n'est pas utilisée dans cette configuration.
Plusieurs architectures peuvent utiliser le même environnement, mais toutes les architectures n'ont pas les mêmes noms d'entrée pour des valeurs similaires. Vous pouvez ajouter plusieurs entrées à votre environnement avec la même valeur, mais
des noms différents. Par exemple, vous pouvez ajouter deux propriétés d'entrée et nommer l'une resource_group et l'autre resourcegroup. Conservez les mêmes valeurs pour les deux propriétés. Toute configuration qui
utilise l'environnement et qui possède un nom resource_group d'entrée ou un nom resourcegroup d'entrée utilisera la même valeur provenant de l'environnement.
Pour ajouter un bien manuellement, suivez les étapes suivantes :
-
Après avoir créé votre environnement, cliquez sur l'icône Modifier
pour l'environnement.
-
Cliquez sur Ajouter > Ajouter manuellement...
-
Sélectionnez la catégorie de bien immobilier que vous souhaitez ajouter.
Envisagez d'abord d'ajouter une propriété d'authentification avec des informations d'authentification valides pour votre compte cible.
-
Indiquez les détails de la propriété et cliquez sur Ajouter.
-
Cliquez sur Sauvegarder.
Ajouter des propriétés à partir d'une configuration
Gagnez du temps et réduisez les erreurs en ajoutant plusieurs propriétés à votre environnement à partir d'une configuration. Ce faisant, vous contribuez à garantir l'exactitude des propriétés dans votre environnement, car les noms et les valeurs saisis sont directement extraits de la configuration que vous sélectionnez. Après avoir ajouté les propriétés d'une configuration, vous pouvez les modifier dans l'environnement sans affecter votre configuration. Les modifications futures de votre configuration n'ont pas d'impact sur les propriétés de votre environnement.
Pour ajouter plusieurs propriétés à partir d'une configuration, procédez comme suit :
- Après avoir créé votre environnement, cliquez sur l'icône Modifier
pour l'environnement.
- Cliquez sur Ajouter > Ajouter à partir d'une configuration…
- Sélectionnez la configuration que vous souhaitez utiliser pour ajouter des propriétés à votre environnement.
- Sélectionnez les éléments de la configuration que vous souhaitez ajouter à votre environnement, puis cliquez sur Ajouter.
Création d'un environnement à l'aide de l'interface de programmation
Pour créer un environnement à l'aide de l'interface CLI, exécutez la commande ibmcloud project environment-create suivante :
ibmcloud project environment-create --project-id PROJECT-ID [--definition DEFINITION]
Dans le definition, vous pouvez spécifier les propriétés d'entrée que vous souhaitez inclure dans votre environnement à l'aide de inputs l'option. De même, vous pouvez spécifier une propriété d'authentification dans
votre environnement à l'aide de authorizations l'option dans le definition. Et vous pouvez ajouter une propriété de conformité en incluant également compliance-profile l'option dans le definition.
Par exemple, la commande suivante crée un environnement nommé development et possède une propriété d'entrée qui définit le groupe de ressources :
ibmcloud project environment-create \
--project-id exampleString \
--definition '{"name": "development", "inputs": {"resource_group" : "stage"}}'
De même, la commande suivante crée un environnement nommé development et comporte une propriété d'entrée qui définit le groupe de ressources. Un profil de confiance est également fourni en tant que propriété d'authentification :
ibmcloud project environment-create \
--project-id exampleString \
--definition '{
"name": "development",
"authorizations": {
"method": "trusted_profile",
"trusted_profile_id": "<trusted-profile-id>"
},
"inputs": {
"resource_group": "stage"
},
"compliance_profile": {
"id": "<profile-id>",
"instance_id": "<instance-id>",
"instance_location": "us-south",
"profile_name": "{\"instance_crn\":\"crn:v1:staging:public:compliance:us-south:a/<account>:<instance-id>::\",\"instance_label\":\"compliance\",\"name\":\"Basic Control\",\"version\":\"1.0.0\",\"attachment_label\":\"basic\"}",
"attachment_id": "<attachment-id>"
}
}'
Pour plus d'informations sur les paramètres de commande, voir ibmcloud project environment-create.
Créer un environnement en utilisant l'API
Vous pouvez créer un environnement par programmation en appelant l 'API Projects, comme indiqué dans l'exemple de requête suivant. L'exemple crée un
environnement nommé development et comporte deux propriétés d'entrée, l'une pour définir le groupe de ressources et l'autre pour définir la région :
curl -X POST --location --header "Authorization: Bearer {iam_token}" \
--header "Accept: application/json" \
--header "Content-Type: application/json" \
--data '{ "definition": { "name": "development", "description": "The environment 'development'", "authorizations": { "method": "api_key", "api_key": "TbcdlprpFODhkpns9e0daOWnAwd2tXwSYtPn8rpEd8d9" }, "inputs": { "resource_group": "stage", "region": "us-south" }, "compliance_profile": { "id": "some-profile-id", "instance_id": "some-instance-id", "instance_location": "us-south", "profile_name": "some-profile-name", "attachment_id": "some-attachment-id" } } }' \
"{base_url}/v1/projects/{project_id}/environments"