Personalização de um CI/CD pipeline para transformação de código - Amazon Q Developer

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 para fornecer acesso a essas dependências.

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.yml confirmado na ramificação padrão do projeto.

Para personalizar um CI/CD pipeline para transformação de código

  1. Se seu projeto ainda não tiver um pipeline de GitLab CI/CD, crie um usando o Maven.gitlab-ci.yml modelo fornecido por. GitLab Para obter mais informações, consulte Create a project pipeline.

  2. Atualize o arquivo .gitlab-ci.yml com 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 mvn valida 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 mvn copia as dependências do projeto para um diretório de preparação para incluí-las como artefatos do trabalho.

    • A seção artifacts carrega as dependências copiadas para que elas possam ser acessadas pela transformação de código do Amazon Q.

    • A seção rules configura esse trabalho para ser executado somente em nomes de ramificações que começam com q/transform-* quando uma nova confirmação é enviada. Esse não é o caso quando uma solicitação de mesclagem é aberta.