Tutorial: código Lint usando uma GitHub ação - Amazon CodeCatalyst

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á.

Tutorial: código Lint usando uma GitHub ação

Neste tutorial, você adiciona a GitHub ação Super-Linter a um fluxo de trabalho da Amazon CodeCatalyst . A ação Super-Linter inspeciona o código, encontra áreas em que o código tem erros, problemas de formatação e construções suspeitas e, em seguida, envia os resultados para o console). CodeCatalyst Depois de adicionar o linter ao seu fluxo de trabalho, você executa o fluxo de trabalho para lintar um aplicativo Node.js de amostra ()app.js. Em seguida, você corrige os problemas relatados e executa o fluxo de trabalho novamente para ver se as correções funcionaram.

Pré-requisitos

Antes de começar, você precisará:

  • Um CodeCatalyst espaço com um conectado Conta da AWS. Para ter mais informações, consulte Criando um espaço.

  • Um projeto vazio em seu CodeCatalyst espaço chamadocodecatalyst-linter-project. Escolha a opção Começar do zero para criar esse projeto.

    Para ter mais informações, consulte Criando um projeto vazio na Amazon CodeCatalyst.

Etapa 1: criar um repositório de origem

Nesta etapa, você cria um repositório de origem no CodeCatalyst. Você usará esse repositório para armazenar o arquivo de origem do aplicativo de amostra,app.js, para este tutorial.

Para obter mais informações sobre repositórios de origem, consulteCriação de um repositório de origem.

Como criar um repositório de origem
  1. Abra o CodeCatalyst console em https://codecatalyst.aws/.

  2. Navegue até seu projeto,codecatalyst-linter-project.

  3. No painel de navegação, selecione Código e, em seguida, selecione Repositórios de origem.

  4. Escolha Adicionar repositório e selecione Criar repositório.

  5. Em Nome do repositório, digite:

    codecatalyst-linter-source-repository
  6. Escolha Criar.

Etapa 2: Adicionar um arquivo app.js

Nesta etapa, você adiciona um app.js arquivo ao seu repositório de origem. O app.js contém um código de função que contém alguns erros que o linter encontrará.

Para adicionar o arquivo app.js
  1. No CodeCatalyst console, escolha seu projeto,codecatalyst-linter-project.

  2. No painel de navegação, selecione Código e, em seguida, selecione Repositórios de origem.

  3. Na lista de repositórios de origem, escolha seu repositório,. codecatalyst-linter-source-repository

  4. Em Arquivos, escolha Criar arquivo.

  5. Na caixa de texto, insira o seguinte código:

    // const axios = require('axios') // const url = 'http://checkip.amazonaws.com/'; let response; /** * * Event doc: https://docs.aws.amazon.com/apigateway/latest/developerguide/set-up-lambda-proxy-integrations.html#api-gateway-simple-proxy-for-lambda-input-format * @param {Object} event - API Gateway Lambda Proxy Input Format * * Context doc: https://docs.aws.amazon.com/lambda/latest/dg/nodejs-prog-model-context.html * @param {Object} context * * Return doc: https://docs.aws.amazon.com/apigateway/latest/developerguide/set-up-lambda-proxy-integrations.html * @returns {Object} object - API Gateway Lambda Proxy Output Format * */ exports.lambdaHandler = async (event, context) => { try { // const ret = await axios(url); response = { statusCode: 200, 'body': JSON.stringify({ message: 'hello world' // location: ret.data.trim() }) } } catch (err) { console.log(err) return err } return response }
  6. Em Nome do arquivo, insiraapp.js. Mantenha as outras opções padrão.

  7. Escolha Commit (Confirmar).

    Agora você criou um arquivo chamadoapp.js.

Etapa 3: criar um fluxo de trabalho que execute a ação Super-Linter

Nesta etapa, você cria um fluxo de trabalho que executa a ação Super-Linter ao enviar o código para o repositório de origem. O fluxo de trabalho consiste nos seguintes blocos de construção, que você define em um YAML arquivo:

  • Um gatilho — Esse gatilho inicia a execução automática do fluxo de trabalho quando você envia uma alteração ao seu repositório de origem. Para obter mais informações sobre gatilhos, consulte Iniciando um fluxo de trabalho executado automaticamente usando gatilhos.

  • Uma ação “GitHub Ações” — No gatilho, a ação GitHub Ações executa a ação Super-Linter, que por sua vez inspeciona todos os arquivos em seu repositório de origem. Se o linter encontrar um problema, a ação do fluxo de trabalho falhará.

Para criar um fluxo de trabalho que execute a ação Super-Linter
  1. No CodeCatalyst console, escolha seu projeto,codecatalyst-linter-project.

  2. No painel de navegação, escolha CI/CD e, em seguida, escolha Fluxos de trabalho.

  3. Escolha Criar fluxo de trabalho.

  4. Em Repositório de origem, escolhacodecatalyst-linter-source-repository.

  5. Para Branch, escolhamain.

  6. Escolha Criar.

  7. Exclua o código de YAML amostra.

  8. Adicione o seguinteYAML:

    Name: codecatalyst-linter-workflow SchemaVersion: "1.0" Triggers: - Type: PUSH Branches: - main Actions: SuperLinterAction: Identifier: aws/github-actions-runner@v1 Configuration: Steps: github-action-code

    No código anterior, substitua github-action-code com o código de ação Super-Linter, conforme instruído nas etapas a seguir deste procedimento.

  9. Acesse a página Super-Linter no Marketplace GitHub .

  10. Em steps: (minúsculas), localize o código e cole-o no CodeCatalyst fluxo de trabalho em Steps: (maiúsculas).

    Ajuste o código de GitHub ação para se adequar aos CodeCatalyst padrões, conforme mostrado no código a seguir.

    Seu CodeCatalyst fluxo de trabalho agora tem a seguinte aparência:

    Name: codecatalyst-linter-workflow SchemaVersion: "1.0" Triggers: - Type: PUSH Branches: - main Actions: SuperLinterAction: Identifier: aws/github-actions-runner@v1 Configuration: Steps: - name: Lint Code Base uses: github/super-linter@v4 env: VALIDATE_ALL_CODEBASE: "true" DEFAULT_BRANCH: main
  11. (Opcional) Escolha Validar para garantir que o YAML código seja válido antes de confirmar.

  12. Escolha Confirmar, insira uma mensagem de confirmação, selecione seu codecatalyst-linter-source-repository repositório e escolha Confirmar novamente.

    Agora você criou um fluxo de trabalho. A execução de um fluxo de trabalho é iniciada automaticamente devido ao gatilho definido na parte superior do fluxo de trabalho.

Para visualizar a execução do fluxo de trabalho em andamento
  1. No painel de navegação, escolha CI/CD e, em seguida, escolha Fluxos de trabalho.

  2. Escolha o fluxo de trabalho que você acabou de criar:codecatalyst-linter-workflow.

  3. No diagrama do fluxo de trabalho, escolha SuperLinterAction.

  4. Aguarde até que a ação falhe. Essa falha é esperada porque o linter encontrou problemas no código.

  5. Deixe o CodeCatalyst console aberto e vá paraEtapa 4: corrigir problemas encontrados pelo Super-Linter.

Etapa 4: corrigir problemas encontrados pelo Super-Linter

O Super-Linter deve ter encontrado problemas no app.js código, bem como no README.md arquivo incluído no seu repositório de origem.

Para corrigir os problemas encontrados pelo linter
  1. No CodeCatalyst console, escolha a guia Logs e, em seguida, escolha Lint Code Base.

    Os registros gerados pela ação Super-Linter são exibidos.

  2. Nos registros do Super-Linter, role para baixo até a linha 90, onde você encontra o início dos problemas. Eles são parecidos com os seguintes:

    /github/workspace/hello-world/app.js:3:13: Extra semicolon. /github/workspace/hello-world/app.js:9:92: Trailing spaces not allowed. /github/workspace/hello-world/app.js:21:7: Unnecessarily quoted property 'body' found. /github/workspace/hello-world/app.js:31:1: Expected indentation of 2 spaces but found 4. /github/workspace/hello-world/app.js:32:2: Newline required at end of file but not found.
  3. Corrija app.js e README.md em seu repositório de origem e confirme suas alterações.

    dica

    Para corrigir oREADME.md, adicione markdown ao bloco de código, assim:

    ```markdown Setup examples: ... ```

    Suas alterações iniciam outro fluxo de trabalho executado automaticamente. Aguarde até que o fluxo de trabalho termine. Se você corrigiu todos os problemas, o fluxo de trabalho deverá ser bem-sucedido.

Limpeza

Faça uma limpeza CodeCatalyst para remover vestígios deste tutorial do seu ambiente.

Para limpar CodeCatalyst
  1. Abra o CodeCatalyst console em https://codecatalyst.aws/.

  2. Excluircodecatalyst-linter-source-repository.

  3. Excluircodecatalyst-linter-workflow.

Neste tutorial, você aprendeu como adicionar a GitHub ação Super-Linter a um CodeCatalyst fluxo de trabalho para codificar alguns códigos.