Déployer automatiquement et en toute simplicité votre app web sur App Engine à l’aide de Gitlab CI

Ben Fousseni Christ KONE
Code d'Ivoire
Published in
3 min readMar 15, 2019
gitlab-ci et app engine

P assionné et amoureux des technos Google, pour mon tout premier article, j’ai décidé de vous partager mon expérience dans le domaine du DevOps avec Google Cloud. Je vous parlerai de comment déployer une application sur Google App Engine à l’aide Gitlab-CI.

Tout d’abord, commençons par décrire le processus de déploiement à mettre en place:

Disposant au préalable d’une application web stockée sur un repository Gitlab, nous configurons ensuite un pipeline pour déclencher le déploiement de notre application sur l’App Engine.

Tout ce que nous avons à faire :

1- Créer un compte service

2- Configurer Gitlab-CI

3- Observer la magie

1. Créer un compte service

Vous devez disposer dans un premier temps d’un compte service. Un compte service est un utilisateur créé spécialement pour une application ou pour une VM qui lui permet en fonction des rôles et accès définis, d’accéder aux ressources dédiées à cette application ou à cette VM.

Pourquoi utiliser un compte service dans notre cas ?

Nous utiliserons un compte service pour permettre à Gitlab d’utiliser le service de déploiement cloud-build de notre application.

Pour créer un compte service, nous nous rendons sur iam-admin. Après avoir renseigné le nom du service, choisissons les rôles suivants:

  1. Administrateur App Engine

2. Utilisateur à l’origine du déploiement et administrateur de services

créer un compte de service pour le déploiement auto

3. Télécharger la clé JSON (Nous en aurons besoin pour les configurations Gitlab)

Télécharger la clé JSON

Une fois la création terminée, nous devons nous rendre dans le menu ‘stockage’ pour ajouter notre utilisateur aux buckets:

  1. staging.PROJECT-ID.appspot.com
  2. us.artifacts.PROJECT-ID.appspot.com

Nous ajoutons par la suite le rôle de créateur d’objets de l’espace stockage et de lecteur d’objets de l’espace stockage à notre utilisateur.

La dernière étape de la console c’est d’activer cloud-build

2. Configurer Gitlab-ci

Rdv dans votre projet Gitlab ensuite dans le menu paramètre, puis CI/CD et ajoutons 2 variables :

  • PROJECT_ID pour l’id du projet
  • SERVICE _ ACCOUNT pour le contenu de votre clé JSON
Ajouter les variables au projet gitlab

Ensuite créer .gitlab-ci.yml à la racine du projet

code

3. Magic 🎩

Maintenant, git push déploie automatiquement votre code dans votre environnement..

Vous avez maîtrisé votre sort…😅

--

--