Créer des applications App Engine avec l'API Admin

L'API Admin de Google App Engine vous permet de créer des applications App Engine de manière automatisée dans les nouveaux projets Google Cloud Platform. En utilisant à la fois l'API Admin et l'API Cloud Resource Manager, vous pouvez automatiser la gestion des projets GCP et des applications App Engine.

La création d'une application App Engine crée une ressource Application pour un projet GCP cible à l'emplacement spécifié.

Pour créer manuellement une application App Engine dans un projet GCP, consultez la page Gérer les projets, les applications et la facturation pour votre langage dans l'environnement standard ou dans l'environnement flexible.

Avant de commencer

Avant de créer une application App Engine à l'aide de l'API Admin, vous devez remplir les conditions préalables suivantes :

Avant qu'un autre compte utilisateur puisse effectuer des tâches sur une application App Engine, le propriétaire du projet GCP doit d'abord créer la ressource Application. Par exemple, vous devez créer l'application App Engine pour qu'un compte utilisateur doté du rôle "Utilisateur à l'origine du déploiement App Engine" puisse déployer une application à l'aide d'un compte de service.

Pour créer un projet GCP :

API

Vous pouvez créer un projet GCP de manière automatisée à l'aide de l'API Cloud Resource Manager. Pour en savoir plus, consultez la section Créer un projet. Passez en revue un court exemple.

Console

Pour créer un projet GCP à l'aide de la console GCP, procédez comme suit :

Accéder à la page Projets

gcloud

Après avoir installé le SDK Google Cloud, vous pouvez exécuter la commande suivante de l'outil gcloud pour créer un projet GCP :

gcloud projects create

Si vous choisissez d'utiliser un projet GCP existant, vous devez vous assurer qu'il ne contient pas déjà la ressource Application, car les projets n'acceptent qu'une seule application App Engine. Pour vérifier si votre projet GCP contient déjà la ressource Application, vous pouvez utiliser la méthode apps.get ou exécuter la commande gcloud app describe.

Créer une application App Engine

Pour créer une application App Engine avec l'API Admin, procédez comme suit :

  1. Autorisez les requêtes HTTP, à l'aide d'un jeton d'accès par exemple.

    Vous pouvez obtenir l'autorisation d'accès à l'API Admin à l'aide de différents flux OAuth en fonction des besoins de votre application API. Pour en savoir plus, consultez la page Accéder à l'API.

  2. Envoyez une requête HTTP POST à l'aide de votre jeton d'accès et de l'API Admin pour créer une application App Engine.

    Vous définissez la ressource Application et le projet GCP cible dans la requête HTTP POST, par exemple :

    POST https://appengine.googleapis.com/v1/apps { "id": "[MY_PROJECT_ID]", "locationId": "[MY_APP_LOCATION]" }
    

    Champs obligatoires de la requête HTTP :

    • id : ID du projet GCP cible dans lequel vous souhaitez créer une application App Engine.

    • locationId : nom de la région géographique dans laquelle l'application App Engine est située, comme indiqué dans la liste des Emplacements App Engine, par exemple us-east1.

      Vous pouvez obtenir la liste complète des emplacements acceptés à l'aide de la méthode apps.locations.list.

      Exemple : Autorisez et exécutez cet exemple de requête dans APIs Explorer pour afficher la liste actualisée des emplacements acceptés.

    Consultez la section Ressource Application pour obtenir la liste complète des options de champs.

    Exemple de commande curl :

    curl -X POST -d "{ 'id': '[MY_PROJECT_ID]', 'locationId': '[MY_APP_LOCATION]' }" -H "Content-Type: application/json" -H "Authorization: Bearer [MY_ACCESS_TOKEN]" https://appengine.googleapis.com/v1/apps
    

    Où :

    • [MY_PROJECT_ID] correspond à l'ID du projet cible dans lequel vous souhaitez créer votre application App Engine.
    • [MY_APP_LOCATION] correspond à l'emplacement dans lequel vous souhaitez créer votre application App Engine.
    • [MY_ACCESS_TOKEN] correspond au jeton d'accès obtenu pour autoriser les requêtes HTTP.

    Exemple de réponse :

    {
      "name": "apps/[MY_PROJECT_ID]/operations/0a37a032-be3f-4c20-98b4-e3300447450f",
      "metadata": {
        "@type": "type.googleapis.com/google.appengine.v1.OperationMetadataV1",
        "method": "google.appengine.v1.Applications.CreateApplication",
        "insertTime": "2016-10-03T20:48:02.099Z",
        "user": "me@example.com",
        "target": "apps/[MY_PROJECT_ID]"
      }
    }
    
  3. Vérifiez que votre application App Engine a été créée :

    1. Affichez l'état de l'opération de création en cours :

      La requête HTTP POST utilisée à l'étape précédente renvoie le nom de l'opération dans le champ name. Vous pouvez vous en servir avec la méthode GET de la collection apps.operations pour vérifier l'état de l'opération de création.

      Par exemple, si le champ name de la réponse est :

      "name": "apps/[MY_PROJECT_ID]/operations/0a37a032-be3f-4c20-98b4-e3300447450f"
      

      Vous envoyez ensuite la requête HTTP GET suivante :

      GET https://appengine.googleapis.com/v1/apps/[MY_PROJECT_ID]/operations/0a37a032-be3f-4c20-98b4-e3300447450f
      

      Exemple de commande curl :

      curl -X GET -H "Authorization: Bearer [MY_ACCESS_TOKEN]" https://appengine.googleapis.com/v1/apps/[MY_PROJECT_ID]/operations/0a37a032-be3f-4c20-98b4-e3300447450f
      

      [MY_ACCESS_TOKEN] correspond à votre jeton d'accès et [MY_PROJECT_ID] à l'ID du projet cible.

      Exemple de réponse :

      {
        "name": "apps/[MY_PROJECT_ID]/operations/0a37a032-be3f-4c20-98b4-e3300447450f",
        "metadata": {
          "@type": "type.googleapis.com/google.appengine.v1.OperationMetadataV1",
          "method": "google.appengine.v1.Applications.CreateApplication",
          "insertTime": "2016-10-03T20:48:02.099Z",
          "endTime": "2016-10-03T20:48:18.272Z",
          "user": "me@example.com",
          "target": "apps/[MY_PROJECT_ID]"
        },
        "done": true,
        "response": {
          "@type": "type.googleapis.com/google.appengine.v1.Application",
          "id": "[MY_PROJECT_ID]",
          "locationId": "[MY_APP_LOCATION]"
        }
      }
      
    2. Vérifiez que l'application App Engine a été créée dans votre projet :

      Pour afficher les détails de la version, utilisez la méthode GET de la collection apps. Vous devez spécifier le projet que vous avez déployé dans la requête HTTP GET, par exemple :

      GET https://appengine.googleapis.com/v1/apps/[MY_PROJECT_ID]
      

      Exemple de commande curl :

      curl -X GET -H "Authorization: Bearer [MY_ACCESS_TOKEN]" https://appengine.googleapis.com/v1/apps/[MY_PROJECT_ID]/
      

      [MY_ACCESS_TOKEN] correspond à votre jeton d'accès et [MY_PROJECT_ID] à l'ID du projet cible.

      Exemple de réponse :

      {
        "name": "apps/[MY_PROJECT_ID]",
        "id": "[MY_PROJECT_ID]",
        "authDomain": "gmail.com",
        "locationId": "us-central",
        "defaultHostname": "[MY_PROJECT_ID].appspot.com",
        "defaultBucket": "[MY_PROJECT_ID].appspot.com"
      }
      

Étape suivante

Cette page vous a-t-elle été utile ? Évaluez-la :

Envoyer des commentaires concernant…

API App Engine Admin