View a markdown version of this page

Tutoriel : charger des artefacts sur Amazon S3 - Amazon CodeCatalyst

Amazon n' CodeCatalyst est plus ouvert aux nouveaux clients. Les clients existants peuvent continuer à utiliser le service normalement. Pour de plus amples informations, veuillez consulter Comment effectuer une migration depuis CodeCatalyst.

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.

Tutoriel : charger des artefacts sur Amazon S3

Dans ce didacticiel, vous allez apprendre à charger des artefacts dans un compartiment Amazon S3 à l'aide d'un CodeCatalyst flux de travail Amazon qui inclut quelques actions de génération. Ces actions s'exécutent en série au démarrage du flux de travail. La première action de génération génère deux fichiers Hello.txt et Goodbye.txt les regroupe dans un artefact de génération. La deuxième action de génération télécharge l'artefact sur Amazon S3. Vous allez configurer le flux de travail pour qu'il s'exécute chaque fois que vous envoyez un commit à votre référentiel source.

Conditions préalables

Avant de commencer, vous avez besoin de ce qui suit :

  • Vous avez besoin d'un CodeCatalyst espace avec un AWS compte connecté. Pour de plus amples informations, veuillez consulter Création d’un espace.

  • Dans votre espace, vous avez besoin d'un projet vide appelé :

    codecatalyst-artifact-project

    Utilisez l'option Partir de zéro pour créer ce projet.

    Pour de plus amples informations, veuillez consulter Création d'un projet vide dans Amazon CodeCatalyst.

  • Dans votre projet, vous avez besoin d'un CodeCatalyst environnement appelé :

    codecatalyst-artifact-environment

    Configurez cet environnement comme suit :

    • Choisissez n'importe quel type, tel que Développement.

    • Connectez votre AWS compte à celui-ci.

    • Pour le rôle IAM par défaut, choisissez n'importe quel rôle. Vous allez spécifier un autre rôle ultérieurement.

    Pour de plus amples informations, veuillez consulter Déploiement dans Comptes AWS et VPC.

Étape 1 : Création d'un AWS rôle

Au cours de cette étape, vous créez un rôle AWS IAM que vous attribuerez ultérieurement à l'action de création de votre flux de travail. Ce rôle confère à l'action de CodeCatalyst création l'autorisation d'accéder à votre AWS compte et d'écrire sur Amazon S3 où votre artefact sera stocké. Le rôle s'appelle le rôle Build.

Note

Si vous possédez déjà un rôle de génération que vous avez créé pour un autre didacticiel, vous pouvez également l'utiliser pour ce didacticiel. Assurez-vous simplement qu'il dispose des autorisations et de la politique de confiance indiquées dans la procédure suivante.

Pour plus d'informations sur les rôles IAM, consultez la section Rôles IAM dans le Guide de l'AWS Gestion des identités et des accès AWS utilisateur.

Pour créer un rôle de création
  1. Créez une politique pour le rôle, comme suit :

    1. Connectez-vous à AWS.

    2. Ouvrez la console IAM à l’adresse https://console.aws.amazon.com/iam/.

    3. Dans le panneau de navigation, choisissez Politiques.

    4. Choisissez Create Policy (Créer une politique).

    5. Choisissez l'onglet JSON.

    6. Supprimez le code existant.

    7. Collez le code suivant :

      JSON
      { "Version":"2012-10-17", "Statement": [ { "Sid": "VisualEditor0", "Effect": "Allow", "Action": [ "s3:PutObject", "s3:ListBucket" ], "Resource": "*" } ] }
      Note

      La première fois que le rôle est utilisé pour exécuter des actions de flux de travail, utilisez le caractère générique dans la déclaration de politique des ressources, puis réduisez la portée de la stratégie avec le nom de la ressource une fois qu'elle est disponible.

      "Resource": "*"
    8. Choisissez Suivant : Balises.

    9. Choisissez Suivant : Vérification.

    10. Dans Nom, saisissez :

      codecatalyst-s3-build-policy
    11. Choisissez Create Policy (Créer une politique).

      Vous venez de créer une politique d'autorisations.

  2. Créez le rôle de génération comme suit :

    1. Dans le volet de navigation, sélectionnez Rôles, puis Créer un rôle.

    2. Choisissez Politique de confiance personnalisée.

    3. Supprimez la politique de confiance personnalisée existante.

    4. Ajoutez la politique de confiance personnalisée suivante :

    5. Choisissez Suivant.

    6. Dans Politiques d'autorisations, recherchez codecatalyst-s3-build-policy et cochez la case correspondante.

    7. Choisissez Suivant.

    8. Dans le champ Nom du rôle, saisissez :

      codecatalyst-s3-build-role
    9. Pour Description du rôle, saisissez :

      CodeCatalyst build role
    10. Choisissez Créer un rôle.

    Vous avez maintenant créé un rôle de génération avec une politique de confiance et une politique d'autorisations.

Étape 2 : Création d'un compartiment Amazon S3

Au cours de cette étape, vous allez créer un compartiment Amazon S3 dans lequel les Goodbye.txt artefacts Hello.txt et seront chargés.

Pour créer un compartiment Amazon S3
  1. Ouvrez la console Amazon S3 à l'adresse https://console.aws.amazon.com/s3/.

  2. Dans le volet principal, choisissez Create bucket.

  3. Dans le champ Nom du compartiment, entrez :

    codecatalyst-artifact-bucket
  4. Choisissez une région dans Région AWS . Ce didacticiel part du principe que vous avez choisi US West (Oregon) us-west-2. Pour plus d'informations sur les régions prises en charge par Amazon S3, consultez la section Points de terminaison et quotas Amazon Simple Storage Service dans le Références générales AWS.

  5. Au bas de la page, choisissez Créer un compartiment.

  6. Copiez le nom du bucket que vous venez de créer, par exemple :

    codecatalyst-artifact-bucket

Vous avez maintenant créé un compartiment appelé codecatalyst-artifact-bucket dans la région USA West (Oregon) us-west-2.

Étape 3 : Création d'un référentiel source

Au cours de cette étape, vous allez créer un référentiel source dans CodeCatalyst. Ce référentiel est utilisé pour stocker le fichier de définition du flux de travail du didacticiel.

Pour plus d'informations sur les référentiels sources, consultezCréation d'un référentiel source.

Pour créer un référentiel source
  1. Ouvrez la CodeCatalyst console à l'adresse https://codecatalyst.aws/.

  2. Accédez à votre projet,codecatalyst-artifact-project.

  3. Dans le volet de navigation, choisissez Code, puis choisissez Référentiels sources.

  4. Choisissez Ajouter un référentiel, puis choisissez Créer un référentiel.

  5. Dans Nom du référentiel, saisissez :

    codecatalyst-artifact-source-repository
  6. Choisissez Créer.

Vous avez maintenant créé un référentiel appelécodecatalyst-artifact-source-repository.

Étape 4 : Création d'un flux de travail

Au cours de cette étape, vous allez créer un flux de travail composé des éléments de base suivants qui s'exécutent de manière séquentielle :

  • Un déclencheur : ce déclencheur lance l'exécution automatique du flux de travail lorsque vous apportez une modification à votre référentiel source. Pour plus d'informations sur les déclencheurs, consultezDémarrage d'un flux de travail exécuté automatiquement à l'aide de déclencheurs.

  • Une action de génération appelée GenerateFiles — Au moment du déclenchement, l'GenerateFilesaction crée deux fichiers Hello.txt et Goodbye.txt les regroupe dans un artefact de sortie appelécodecatalystArtifact.

  • Une autre action de Upload génération appelée — Une fois l'GenerateFilesaction terminée, l'Uploadaction exécute la AWS CLI commande aws s3 sync pour télécharger les fichiers contenus dans codecatalystArtifact et dans votre référentiel source vers votre compartiment Amazon S3. Il AWS CLI est préinstallé et préconfiguré sur la plate-forme CodeCatalyst informatique, vous n'avez donc pas besoin de l'installer ou de le configurer.

    Pour plus d'informations sur les logiciels préemballés de la plate-forme CodeCatalyst informatique, consultezSpécification des images de l'environnement d'exécution. Pour plus d'informations sur la aws s3 sync commande AWS CLI's, voir sync dans la référence des AWS CLI commandes.

Pour plus d'informations sur l'action de création, consultezConstruire avec des flux de travail.

Pour créer un flux de travail
  1. Dans le volet de navigation, choisissez CI/CD, puis choisissez Workflows.

  2. Choisissez Créer un flux de travail.

  3. Supprimez l'exemple de code YAML.

  4. Ajoutez le code YAML suivant :

    Note

    Dans le code YAML qui suit, vous pouvez omettre la Connections: section si vous le souhaitez. Si vous omettez cette section, vous devez vous assurer que le rôle spécifié dans le champ Rôle IAM par défaut de votre environnement inclut les autorisations et les politiques de confiance décrites dans. Étape 1 : Création d'un AWS rôle Pour plus d'informations sur la configuration d'un environnement avec un rôle IAM par défaut, consultezCréation d'un environnement.

    Name: codecatalyst-artifact-workflow SchemaVersion: 1.0 Triggers: - Type: Push Branches: - main Actions: GenerateFiles: Identifier: aws/build@v1 Configuration: Steps: # Create the output files. - Run: echo "Hello, World!" > "Hello.txt" - Run: echo "Goodbye!" > "Goodbye.txt" Outputs: Artifacts: - Name: codecatalystArtifact Files: - "**/*" Upload: Identifier: aws/build@v1 DependsOn: - GenerateFiles Environment: Name: codecatalyst-artifact-environment Connections: - Name: codecatalyst-account-connection Role: codecatalyst-s3-build-role Inputs: Artifacts: - codecatalystArtifact Configuration: Steps: # Upload the output artifact to the S3 bucket. - Run: aws s3 sync . s3://codecatalyst-artifact-bucket

    Dans le code ci-dessus, remplacez :

    Pour plus d'informations sur les propriétés de ce fichier, consultez leCréez et testez des actions YAML.

  5. (Facultatif) Choisissez Valider pour vous assurer que le code YAML est valide avant de valider.

  6. Choisissez Commit (Valider).

  7. Dans la boîte de dialogue Valider le flux de travail, entrez les informations suivantes :

    1. Pour le nom du fichier Workflow, conservez la valeur par défaut,codecatalyst-artifact-workflow.

    2. Pour le message de validation, entrez :

      add initial workflow file
    3. Pour Repository, choisissez codecatalyst-artifact-source-repository.

    4. Pour Nom de la branche, choisissez principal.

    5. Choisissez Commit (Valider).

    Vous venez de créer un flux de travail. L'exécution d'un flux de travail démarre automatiquement en raison du déclencheur défini en haut du flux de travail. Plus précisément, lorsque vous avez validé (et transféré) le codecatalyst-artifact-workflow.yaml fichier dans votre référentiel source, le déclencheur a lancé l'exécution du flux de travail.

Pour afficher le flux de travail en cours
  1. Dans le volet de navigation, choisissez CI/CD, puis choisissez Workflows.

  2. Choisissez le flux de travail que vous venez de créer :codecatalyst-artifact-workflow.

  3. Choisissez GenerateFiles de voir la progression de la première action de construction.

  4. Choisissez Télécharger pour voir la progression de la deuxième action de création.

  5. Lorsque l'action de téléchargement est terminée, procédez comme suit :

    • Si l'exécution du flux de travail a réussi, passez à la procédure suivante.

    • Si l'exécution du flux de travail a échoué, choisissez Logs pour résoudre le problème.

Étape 5 : Vérifiez les résultats

Une fois le flux de travail exécuté, accédez au service Amazon S3 et regardez dans votre codecatalyst-artifact-bucket compartiment. Il devrait désormais inclure les fichiers et dossiers suivants :

. |— .aws/ |— .git/ |Goodbye.txt |Hello.txt |REAME.md

Les Hello.txt fichiers Goodbye.txt et ont été téléchargés car ils faisaient partie de l'codecatalystArtifactartefact. Les README.md fichiers .aws/.git/,, et ont été chargés car ils se trouvaient dans votre référentiel source.

Nettoyage

Faites le ménage CodeCatalyst et évitez AWS d'être facturé pour ces services.

Pour nettoyer CodeCatalyst
  1. Ouvrez la CodeCatalyst console à l'adresse https://codecatalyst.aws/.

  2. Supprimez le référentiel codecatalyst-artifact-source-repository source.

  3. Supprimez le codecatalyst-artifact-workflow flux de travail.

Pour nettoyer AWS
  1. Effectuez le nettoyage dans Amazon S3, comme suit :

    1. Ouvrez la console Amazon S3 à l'adresse https://console.aws.amazon.com/s3/.

    2. Supprimez les fichiers du codecatalyst-artifact-bucket bucket.

    3. Supprimez le codecatalyst-artifact-bucket compartiment.

  2. Effectuez le nettoyage dans IAM, comme suit :

    1. Ouvrez la console IAM à l’adresse https://console.aws.amazon.com/iam/.

    2. Supprimez la codecatalyst-s3-build-policy.

    3. Supprimez la codecatalyst-s3-build-role.