Création d'une pile à partir d'un compartiment existant

A l'aide du repérage de ressources, créez une pile dans Resource Manager en fonction d'un compartiment existant afin de générer une configuration Terraform qui décrit les ressources du compartiment.

Pour plus d'informations sur le repérage des ressources, reportez-vous à Repérage des ressources.

    1. Ouvrez le menu de navigation et cliquez sur Services de développeur. Sous Gestionnaire de ressources, cliquez sur Piles.
    2. Sur la page Piles, sélectionnez un compartiment.
    3. Cliquez sur Créer une pile.
    4. Sur la page Créer une pile, sous Choisir l'origine de la configuration Terraform, sélectionnez Compartiment existant.
    5. Sélectionnez le compartiment et la région contenant les ressources à capturer.
    6. (Facultatif) Pour filtrer des services pris en charge pour le repérage de ressources spécifiques, sélectionnez Sélectionné, puis choisissez les services souhaités.
      Remarque

      Vous ne pouvez pas modifier ce paramètre lors de la modification ultérieure de la pile.
    7. (Facultatif) Pour utiliser des fournisseurs personnalisés, sélectionnez Utiliser des fournisseurs personnalisés, puis sélectionnez le bucket contenant le fournisseur personnalisé.
    8. (Facultatif) Modifiez le nom de pile par défaut et entrez une description de pile. Evitez de saisir des informations confidentielles.
    9. Sélectionnez le compartiment dans lequel créer la pile.
    10. (Facultatif) Cliquez sur Afficher les options avancées et affectez des balises à la pile.
      • Espace de noms de balise : pour ajouter une balise définie, sélectionnez un espace de noms existant. Pour ajouter une balise free-from, laissez la valeur vide.
      • Touche de balise : pour ajouter une balise définie, sélectionnez une clé de balise existante. Pour ajouter une balise à format libre, saisissez le nom de clé souhaité.
      • Valeur de balise : saisissez la valeur de balise souhaitée.
      • Ajouter une balise : cliquez sur cette option pour ajouter une autre balise.
    11. Cliquez deux fois sur Suivant.
      Aucune variable n'est répertoriée pour l'origine de la pile de compartiment existant car aucune configuration Terraform n'existe encore.
    12. Dans le panneau Vérifier, vérifiez la configuration de la pile.
    13. Cliquez sur Créer.
    Une demande de travail est exécutée sur la pile. Une fois la demande de travail terminée, un travail est exécuté afin de générer un fichier de configuration Terraform pour la pile. Lorsque le travail est terminé, les ressources du compartiment sélectionné sont capturées dans la configuration générée. Vous pouvez recréer ces ressources dans un autre compartiment.
  • Utilisez la commande oci resource-manager stack create-from-compartment et les paramètres requis pour créer une pile à partir d'un compartiment.

    oci resource-manager stack create-from-compartment --compartment-id <compartment_OCID> --config-source-compartment-id <source_compartment_OCID> --config-source-region <region>
    Exemple de demande

    Par exemple (découvre les ressources prises en charge des services core et database ; le compartiment source n'est pas un compartiment racine) :

    oci resource-manager stack create-from-compartment --config-source-compartment-id ocid1.tenancy.oc1..uniqueid1 --config-source-region PHX --config-source-services-to-discover [core,database] –-compartment-id ocid1.tenancy.oc1..uniqueid2 --terraform-version 0.13.X --display-name "Stack From Compartment ABC" --description "List of Resources to Duplicate"
    Exemple de réponse
    {
      "data": {
        "config-source": {
          "config-source-type": "COMPARTMENT_CONFIG_SOURCE"
        },
        "defined-tags": {},
        "display-name": "Stack from Compartment ABC",
        "freeform-tags": {},
        "id": "ocid1.ormstack.oc1..uniqueid",
        "lifecycle-state": "CREATING",
        "time-created": "2019-04-03T18:26:56.299000+00:00",
        "variables": {
          "compartment_ocid": "ocid1.compartment.oc1..uniqueid1", 
          "region": "us-phoenix-1"
        }
      }
    }
    {
      "data": {
        "compartment-id": "ocid1.compartment.oc1..uniqueid2",
        "config-source": {
          "compartment-id": "ocid1.compartment.oc1..uniqueid1",
          "config-source-type": "COMPARTMENT_CONFIG_SOURCE",
          "region": "PHX",
          "working-directory": null
        },
        "defined-tags": {},
        "description": "List of Resources to Duplicate",
        "display-name": "Stack From Compartment ABC",
        "freeform-tags": {},
        "id": "ocid1.ormstack.oc1.phx.uniqueid",
        "lifecycle-state": "CREATING",
        "stack-drift-status": "NOT_CHECKED",
        "terraform-version": "0.12.x",
        "time-created": "2020-06-01T18:25:56.102000+00:00",
        "time-drift-last-checked": null,
        "variables": {}
      },
      "etag": "009010cb57f5162655c6a34f5ef8834f204a734df81e4baa696a7d830488ea25",
      "opc-work-request-id": "ocid1.ormworkrequest.oc1.phx.uniqueid"
    }

    Pour obtenir la liste complète des paramètres et des valeurs pour les commandes d'interface de ligne de commande, reportez-vous à Référence de ligne de commande pour Resource Manager.

  • Utilisez l'opération CreateStack pour créer une pile à partir d'un compartiment.

    Pour obtenir un exemple de la partie configSource de la demande, reportez-vous à CreateCompartmentConfigSourceDetails.

    Exemple de demande
    POST /20180917/stacks
    Host: resourcemanager.us-phoenix-1.oraclecloud.com
    <authorization and other headers>
    {
      "compartmentId": "ocid1.compartment.oc1..<unique_ID>",
      "displayName": "My Compartment Configuration",
      "configSource": {
        "configSourceType": "COMPARTMENT_CONFIG_SOURCE",
        "compartmentId": "ocid1.compartment.oc1..<unique_ID>",
        "region": "us-phoenix-1"
      }
    }