Intégrez un dépôt Bitbucket à AWS Amplify à l'aide de AWS CloudFormation - Recommandations AWS

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

Intégrez un dépôt Bitbucket à AWS Amplify à l'aide de AWS CloudFormation

Créée par Alwin Abraham () AWS

Environnement : Production

Technologies : DevOps

AWSservices : AWS Amplify ; AWS CloudFormation

Récapitulatif

AWSAmplify vous aide à déployer et à tester rapidement des sites Web statiques sans avoir à configurer l'infrastructure généralement requise. Vous pouvez déployer l'approche de ce modèle si votre entreprise souhaite utiliser Bitbucket pour le contrôle de source, que ce soit pour migrer le code d'application existant ou créer une nouvelle application. En utilisant AWS CloudFormation pour configurer automatiquement Amplify, vous offrez une visibilité sur les configurations que vous utilisez.

Ce modèle décrit comment créer un pipeline et un environnement de déploiement continus (CI/CD) frontaux en intégrant un référentiel Bitbucket AWS CloudFormation à Amplify. AWS L'approche du modèle signifie que vous pouvez créer un pipeline frontal Amplify pour des déploiements répétables.

Conditions préalables et limitations

Prérequis

  • Un compte Amazon Web Services (AWS) actif

  • Un compte Bitbucket actif avec accès administrateur

  • Accès à un terminal utilisant c URL ou l'application Postman

  • Connaissance d'Amplify

  • Vous maîtrisez AWS CloudFormation

  • Connaissance des fichiers YAML formatés

Architecture

Diagram showing user interaction with Bitbucket repository connected to AWS Amplify in AWS Cloud region.

Pile technologique

  • Amplify

  • AWS CloudFormation

  • Bitbucket

Outils

  • AWSAmplify — Amplify aide les développeurs à développer et à déployer des applications mobiles et Web basées sur le cloud.

  • AWS CloudFormation— AWS CloudFormation est un service qui vous aide à modéliser et à configurer vos AWS ressources afin que vous puissiez passer moins de temps à les gérer et plus de temps à vous concentrer sur les applications qui s'exécutentAWS.

  • Bitbucket — Bitbucket est une solution de gestion de référentiels Git conçue pour les équipes professionnelles. Il vous offre un emplacement central pour gérer les référentiels Git, collaborer sur votre code source et vous guider tout au long du processus de développement.

Code

Le bitbucket-amplify.yml fichier (joint) contient le AWS CloudFormation modèle de ce modèle.

Épopées

TâcheDescriptionCompétences requises
(Facultatif) Créez un dépôt Bitbucket.
  1. Connectez-vous à votre compte Bitbucket et créez un nouveau dépôt. Pour plus d'informations à ce sujet, consultez la section Création d'un dépôt Git dans la documentation de Bitbucket. 

  2. Enregistrez le nom de l'espace de travail.

Remarque : vous pouvez également utiliser un dépôt Bitbucket existant.

DevOps ingénieur
Ouvrez les paramètres de l'espace de travail.
  1. Ouvrez l'espace de travail et choisissez l'onglet Référentiel.

  2. Choisissez le référentiel que vous souhaitez intégrer à Amplify.

  3. Choisissez le nom de l'espace de travail situé au-dessus du nom du référentiel.

  4. Dans la barre latérale, choisissez Réglages.

DevOps ingénieur
Créez un OAuth consommateur.
  1. Dans la section Applications et fonctionnalités, sélectionnez OAuthconsommateurs, puis sélectionnez Ajouter un consommateur.

  2. Entrez le nom de votre consommateur, par exemple,Amplify Integration.

  3. Entrez un rappel. URL Bien que ce champ soit une entrée obligatoire, il n'est pas utilisé pour terminer l'intégration. La valeur peut donc être http://localhost:3000

  4. Cochez la case Ceci est un consommateur privé.

  5. Choisissez les autorisations suivantes :

    • Projet Read

    • Référentiels — Admin

    • Pull requests Read

    • Webhooks — et Read Write

  6. Conservez les choix par défaut pour tous les autres champs et choisissez Soumettre.

  7. Enregistrez la clé et le secret générés.

DevOps ingénieur
Obtenez un jeton OAuth d'accès.
  1. Ouvrez une fenêtre de terminal et exécutez la commande suivante : 

curl -X POST -u "KEY:SECRET" https://bitbucket.org/site/oauth2/access_token -d grant_type=client_credentials 

Important : remplacez KEY et SECRET par la clé et le code secret que vous avez enregistrés précédemment. 

2. Enregistrez le jeton d'accès sans utiliser les guillemets. Le jeton n'est valide que pour une durée limitée et la durée par défaut est de deux heures. Vous devez exécuter le AWS CloudFormation modèle pendant cette période.

DevOps ingénieur
TâcheDescriptionCompétences requises
Téléchargez le AWS CloudFormation modèle.

Téléchargez le bitbucket-amplify.yml AWS CloudFormation modèle (ci-joint). Ce modèle crée le pipeline CI/CD dans Amplify, en plus du projet et de la branche Amplify.

Créez et déployez la AWS CloudFormation pile.
  1. Connectez-vous à la console AWS de gestion de la AWS région dans laquelle vous souhaitez déployer et ouvrez la AWS CloudFormation console. 

  2. Choisissez Create Stack (avec de nouvelles ressources), puis choisissez Upload a Template File

  3. Chargez le fichier bitbucket-amplify.yml.

  4. Choisissez Next, entrez un nom de pile, puis entrez les paramètres suivants :

    • Jeton d'accès : collez le jeton OAuth d'accès que vous avez créé précédemment.

    • Référentiel URL : ajoutez le référentiel du projet Bitbucket. URL Le format URL est généralement le suivant : https://bitbucket.org/<WORKSPACE_NAME>/<REPO_NAME>

    • Nom de branche : il doit correspondre au nom d'une branche de votre dépôt Bitbucket. Cette branche n'a pas besoin d'exister lorsque vous exécutez la AWS CloudFormation pile, mais elle est nécessaire pour déployer du code dans l'environnement.

    • Nom du projet : il s'agit du nom à associer au projet Amplify.

5. Choisissez Next, puis Create Stack.

DevOps ingénieur
TâcheDescriptionCompétences requises
Déployez le code dans la branche de votre référentiel.
  1. Clonez votre dépôt Bitbucket en exécutant la commande suivante : git clone https://bitbucket.org/<WORKSPACE_NAME>/<REPO_NAME>

  2. Vérifiez le nom de branche utilisé lors de l'exécution du AWS CloudFormation script. Pour créer et extraire une nouvelle branche, exécutez la git checkout -b <BRANCH_NAME> commande. Pour récupérer une branche existante, exécutez la git checkout <BRANCH_NAME> commande

  3. Validez le code dans la branche et envoyez-le vers la branche distante en exécutant les git push commandes git commit and.

  4. Amplify construit et déploie ensuite l'application.

Pour plus d'informations à ce sujet, consultez les commandes Git de base dans la documentation de Bitbucket. 

Développeur d'applications

Ressources connexes

Méthodes d'authentification (documentation Atlassian)

Pièces jointes

Pour accéder au contenu supplémentaire associé à ce document, décompressez le fichier suivant : attachment.zip