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.
Personnalisation d'un CI/CD pipeline pour la transformation du code
Amazon Q pour la transformation du code exécute certaines de ses capacités à l’aide d’une analyse statique. C’est pourquoi vos dépendances de compilation et de portée de test doivent être fournies en plus du code source de votre projet. La transformation de code pour GitLab utilise une tâche GitLab CI/CD
Avant de pouvoir invoquer une transformation de code pour votre projet, vous avez besoin de ce qui suit :
-
Au moins un GitLab coureur
. -
La fonctionnalité CI/CD doit être activée sur le projet.
-
Un
.gitlab-ci.ymlvalidé sur la branche par défaut du projet.
Pour personnaliser un CI/CD pipeline pour la transformation du code
-
Si votre projet ne possède pas encore de pipeline GitLab CI/CD, créez-en un à l'aide du
Maven.gitlab-ci.ymlmodèle fourni par. GitLab Pour plus d’informations, consultez Création d’un pipeline de projet. -
Mettez à jour le fichier
.gitlab-ci.ymlavec le code suivant :q-code-transformation: stage: build script: - 'mvn $MAVEN_CLI_OPTS test-compile' - 'mvn $MAVEN_CLI_OPTS dependency:copy-dependencies -DoutputDirectory=dependencies -Dmdep.useRepositoryLayout=true -Dmdep.copyPom=true -Dmdep.addParentPoms=true' artifacts: name: q-code-transformation-dependencies paths: - dependencies/* rules: - if: $CI_COMMIT_REF_NAME =~ /^q\/transform-/ && $CI_PIPELINE_SOURCE == 'push' when: always-
La première invocation
mvnconfirme que votre projet est compilé avant que la transformation du code Amazon Q ne tente de le traiter. L’objectif peut être de tester, compiler, tester, tester l’intégration ou vérifier. -
La deuxième invocation
mvncopie les dépendances du projet dans un répertoire intermédiaire pour les inclure en tant qu’artefacts de tâche. -
La section
artifactscharge les dépendances copiées afin qu’elles soient accessibles par le biais de la transformation du code Amazon Q. -
La section
rulesconfigure cette tâche pour qu’elle soit exécutée uniquement sur des noms de branches commençant parq/transform-*lorsqu’une nouvelle validation est envoyée. Ce n’est pas le cas lorsqu’une demande de fusion est ouverte.
-