As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Personalização de um CI/CD pipeline para transformação de código
O Amazon Q para transformação de código executa alguns de seus recursos usando análise estática, e isso exige que as dependências do escopo de compilação e teste sejam fornecidas além do código-fonte do projeto. A transformação de código para GitLab usa uma tarefa de GitLab CI/CD
Antes de invocar a transformação de código do projeto, é necessário:
-
Pelo menos um GitLab corredor.
-
O recurso CI/CD habilitado no projeto.
-
Um
.gitlab-ci.ymlconfirmado na ramificação padrão do projeto.
Para personalizar um CI/CD pipeline para transformação de código
-
Se seu projeto ainda não tiver um pipeline de GitLab CI/CD, crie um usando o
Maven.gitlab-ci.ymlmodelo fornecido por. GitLab Para obter mais informações, consulte Create a project pipeline. -
Atualize o arquivo
.gitlab-ci.ymlcom o seguinte trabalho: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-
A primeira invocação
mvnvalida se o projeto foi compilado antes que a transformação de código do Amazon Q tente processá-lo. O objetivo pode ser testar-compilar, testar, integrar-testar ou verificar. -
A segunda invocação
mvncopia as dependências do projeto para um diretório de preparação para incluí-las como artefatos do trabalho. -
A seção
artifactscarrega as dependências copiadas para que elas possam ser acessadas pela transformação de código do Amazon Q. -
A seção
rulesconfigura esse trabalho para ser executado somente em nomes de ramificações que começam comq/transform-*quando uma nova confirmação é enviada. Esse não é o caso quando uma solicitação de mesclagem é aberta.
-