Télécharger et déployer Terraform

Si vous disposez de vos propres outils et workflows de déploiement, vous pouvez télécharger des modèles ou des applications en tant que fichiers Terraform.

Le système génère les fichiers Terraform suivants :

  • main.tf : code d'infrastructure qui inclut un module pour chaque composant du modèle.
  • outputs.tf : expose des informations sur les composants d'infrastructure déployés.
  • variables.tf : déclare le nom, le type et la description des variables utilisées dans le fichier main.tf.
  • input.tfvars : définit les valeurs des variables utilisées dans le fichier main.tf.
  • providers.tf : définit les libellés qui aident Terraform à interagir avec les API et les ressources Google Cloud .

Pour en savoir plus, consultez Présentation de Terraform surGoogle Cloud.

Si vous ne disposez pas de vos propres outils et workflows de déploiement, consultez Déployer une application à partir de la consoleGoogle Cloud .

Avant de commencer

Demandez à votre administrateur de vous attribuer l'un des rôles suivants dans le dossier ou le projet de gestion pour lesquels les applications sont activées :

  • Administrateur de l'application (roles/designcenter.applicationAdmin)
  • Éditeur d'application (roles/designcenter.applicationEditor)

Exporter du code Terraform

Si vous souhaitez gérer vos modèles et applications en dehors de Google Cloud, vous pouvez générer du code Terraform et l'exporter vers votre machine locale ou vers votre dépôt de code.

Exporter localement

Vous pouvez exporter le code Terraform généré à partir d'un modèle ou d'une application.

Modèle

  1. Dans la console Google Cloud , accédez à la page Modèles.

    Accéder aux modèles

  2. Cliquez sur l'ID du modèle que vous souhaitez exporter.

  3. Cliquez sur Obtenir le code.

    Le système télécharge un fichier ZIP sur votre ordinateur local. Vous pouvez déployer l'application à l'aide de vos propres outils et workflows de déploiement.

Application

  1. Dans la console Google Cloud , accédez à la page Applications.

    Accéder à la page Applications

  2. Cliquez sur le nom de l'application que vous souhaitez exporter.

  3. Cliquez sur Obtenir le code.

    Le système télécharge un fichier ZIP sur votre ordinateur local. Vous pouvez déployer l'application à l'aide de vos propres outils et workflows de déploiement.

Exporter vers votre dépôt

Pour gérer vos modèles dans votre dépôt de gestion du code source, vous pouvez exporter des modèles et des applications vers GitHub. Par exemple, vous pouvez exporter des données pour effectuer les opérations suivantes :

  • Utilisez vos workflows de contrôle de version existants.
  • Déclenchez des compilations, des tests et des déploiements à l'aide de votre propre pipeline CI/CD.

Se connecter à votre dépôt

Pour créer une connexion Developer Connect entre votre dépôt GitHub et votre projet de gestion, procédez comme suit :

  1. Modifiez la règle d'administration de votre organisation pour ajouter les services suivants à votre liste d'autorisation :

    1. developerconnect.googleapis.com.
    2. secretmanager.googleapis.com.

    Pour savoir comment modifier votre règle d'administration, consultez Utiliser la contrainte "Restreindre l'utilisation des services de ressources".

  2. Créez une connexion Developer Connect à votre dépôt GitHub, y compris les éléments suivants :

    1. Sélectionnez Activer la résidence des données.
    2. Associez le dépôt dans lequel vous souhaitez exporter votre application.

    Pour savoir comment créer une connexion et associer un dépôt, consultez Connecter GitHub.

  3. Pour copier l'URI du dépôt, procédez comme suit :

    1. Ouvrez la page Dépôts Git Developer Connect.
    2. Dans le tableau Dépôts, cliquez sur Plus d'options, puis sélectionnez Copier le chemin d'accès à la ressource.

Générer et exporter

Pour générer du code Terraform et l'exporter vers votre dépôt GitHub, procédez comme suit :

Modèle

  1. Identifiez l'ID de votre espace.

    gcloud design-center spaces list \
        --project=PROJECT \
        --location=LOCATION
    

    Remplacez les éléments suivants :

    • PROJECT : ID de votre projet de gestion.
    • LOCATION : ID de votre emplacement.
  2. Identifiez l'ID du modèle que vous souhaitez exporter.

    gcloud design-center spaces application-templates list \
        --space=SPACE \
        --project=PROJECT \
        --location=LOCATION
    

    Remplacez les éléments suivants :

    • SPACE : ID de votre espace.
    • PROJECT : ID de votre projet de gestion.
    • LOCATION : ID de votre emplacement.
  3. Générez le code Terraform de votre modèle et exportez-le vers GitHub.

    gcloud design-center spaces application-templates generate APPLICATION_TEMPLATE \
        --space=SPACE \
        --project=PROJECT \
        --location=LOCATION \
        --developer-connect-export-config-repo-uri=DEVELOPER_CONNECT_EXPORT_CONFIG_REPO_URI \
        --developer-connect-export-config-dir=DEVELOPER_CONNECT_EXPORT_CONFIG_DIR \
        --developer-connect-export-config-branch=DEVELOPER_CONNECT_EXPORT_CONFIG_BRANCH
    

    Remplacez les éléments suivants :

    • APPLICATION_TEMPLATE : ID du modèle que vous souhaitez exporter.
    • SPACE : ID de votre espace.
    • PROJECT : ID de votre projet de gestion.
    • LOCATION : ID de votre emplacement.
    • DEVELOPER_CONNECT_EXPORT_CONFIG_DIR : répertoire relatif à votre dépôt GitHub.
    • DEVELOPER_CONNECT_EXPORT_CONFIG_BRANCH : branche de votre dépôt GitHub.

    Pour en savoir plus, consultez gcloud design-center spaces application-templates generate.

  4. Consultez votre dépôt pour vérifier que le modèle a bien été exporté.

Application

  1. Identifiez l'ID de votre espace.

    gcloud design-center spaces list \
        --project=PROJECT \
        --location=LOCATION
    

    Remplacez les éléments suivants :

    • PROJECT : ID de votre projet de gestion.
    • LOCATION : ID de votre emplacement.
  2. Identifiez l'ID application de l'application que vous souhaitez exporter.

    gcloud design-center spaces applications list \
        --space=SPACE \
        --project=PROJECT \
        --location=LOCATION
    

    Remplacez les éléments suivants :

    • SPACE : ID de votre espace.
    • PROJECT : ID de votre projet de gestion.
    • LOCATION : ID de votre emplacement.
  3. Générez le code Terraform de votre application et exportez-le vers GitHub.

    gcloud design-center spaces applications generate APPLICATION \
        --space=SPACE \
        --project=PROJECT \
        --location=LOCATION \
        --developer-connect-export-config-repo-uri=DEVELOPER_CONNECT_EXPORT_CONFIG_REPO_URI \
        --developer-connect-export-config-dir=DEVELOPER_CONNECT_EXPORT_CONFIG_DIR \
        --developer-connect-export-config-branch=DEVELOPER_CONNECT_EXPORT_CONFIG_BRANCH
    

    Remplacez les éléments suivants :

    • APPLICATION : ID de l'application que vous souhaitez exporter.
    • SPACE : ID de votre espace.
    • PROJECT : ID de votre projet de gestion.
    • LOCATION : ID de votre emplacement.
    • DEVELOPER_CONNECT_EXPORT_CONFIG_DIR : répertoire relatif à votre dépôt GitHub.
    • DEVELOPER_CONNECT_EXPORT_CONFIG_BRANCH : branche de votre dépôt GitHub.

    Pour en savoir plus, consultez gcloud design-center spaces applications generate.

  4. Consultez votre dépôt pour vérifier que l'application a bien été exportée.

Étapes suivantes

Présentation de Terraform sur Google Cloud