Intégrer une API à Deployment Manager

Deployment Manager offre la possibilité d'enregistrer une API tierce auprès de son service. Après avoir enregistré une API en tant que fournisseur de types dans Deployment Manager, vous pouvez utiliser le service pour déployer les ressources de l'API en tant que types dans votre configuration.

Cette fiche décrit la procédure d'intégration d'une API tierce à Deployment Manager. Elle ne comporte pas d'instructions complètes pour chaque étape, mais fournit une présentation et des liens supplémentaires pour plus d'informations. Consultez cette fiche pour obtenir une vue d'ensemble de la procédure d'ajout d'une API, mais reportez-vous à la documentation détaillée pour disposer des instructions complètes.

Déterminer si une API est éligible pour l'intégration à Deployment Manager

Pour pouvoir être intégrées à Deployment Manager, les API doivent respecter certaines exigences, à savoir :

  • Deployment Manager attend une API RESTful. En d'autres termes, l'API expose une interface de type REST avec les méthodes CRUD (création, lecture, mise à jour et suppression).
  • Tous les paramètres de chemins et de requêtes sont résolus. Tous les paramètres de chemins et de requêtes de l'API doivent exister dans le corps de la ressource ou dans toutes les méthodes de l'API afin que Deployment Manager puisse les faire correspondre lorsqu'un utilisateur les fournit.
  • Le point de terminaison du document descripteur de l'API doit être accessible. Deployment Manager exécute une requête HTTP pour obtenir le document descripteur de l'API. Le document doit donc être hébergé dans un emplacement accessible par Deployment Manager. Le document doit être disponible publiquement ou protégé par des paramètres d'authentification de base.
  • Comme mentionné dans le point précédent, l'API doit disposer de paramètres d'authentification de base ou, si elle s'exécute sur Google Kubernetes Engine ou Google Cloud Endpoints, elle doit accepter l'authentification OAuth 2.0 via un jeton d'accès du compte de service du projet. En savoir plus sur l'authentification
  • Si votre API est complexe, vous devez peut-être configurer d'autres options pour indiquer à Deployment Manager comment gérer ce comportement plus subtil.

Pour en savoir plus, consultez la documentation Exigences de l'API.

Ajouter une API à Deployment Manager

Après avoir vérifié que l'API respecte les exigences ci-dessus, ajoutez-la en tant que ressource de fournisseur de types. Vous devez fournir un document descripteur d'API et éventuellement d'autres paramètres d'API via les options avancées. L'ajout d'une API en tant que fournisseur de types expose toutes les ressources de cette API à Deployment Manager et permet aux utilisateurs de créer, mettre à jour ou supprimer ces ressources avec Deployment Manager.

Si l'API possède des modèles d'API subtils difficilement reconnaissables, vous devez également fournir des mappages d'entrée à Deployment Manager afin que les requêtes d'API puissent être correctement traitées. Pour en savoir plus, consultez la page Options d'API avancées.

Appeler un fournisseur de types dans des fichiers de configuration

Une fois qu'une API est enregistrée auprès de Deployment Manager, vous pouvez créer des ressources d'API en appelant cette ressource d'API en tant que type dans la configuration.

Par exemple, si vous avez nommé votre fournisseur de types example-directory-api et que vous souhaitez créer une ressource d'API connue sous le nom person, vous pouvez spécifier le type dans vos configurations comme suit :

resources:
- name: Jane
  type: my-project/example-directory-api:person
  properties:
  - name: Jane
    website: www.example.com
    ...

À titre de comparaison, il s'agit du même processus que l'appel d'une API Google et la création d'une ressource d'API :

resource:
- name: example-instance
  type: compute.v1.instance
  properties:
  - machineType: n1-standard-1
    ...

Étapes suivantes