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-Linterapp.js
. Em seguida, você corrige os problemas relatados e executa o fluxo de trabalho novamente para ver se as correções funcionaram.
Tópicos
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 chamado
codecatalyst-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
Abra o CodeCatalyst console em https://codecatalyst.aws/
. -
Navegue até seu projeto,
codecatalyst-linter-project
. -
No painel de navegação, selecione Código e, em seguida, selecione Repositórios de origem.
-
Escolha Adicionar repositório e selecione Criar repositório.
-
Em Nome do repositório, digite:
codecatalyst-linter-source-repository
-
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
-
No CodeCatalyst console, escolha seu projeto,
codecatalyst-linter-project
. -
No painel de navegação, selecione Código e, em seguida, selecione Repositórios de origem.
-
Na lista de repositórios de origem, escolha seu repositório,.
codecatalyst-linter-source-repository
-
Em Arquivos, escolha Criar arquivo.
-
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 }
-
Em Nome do arquivo, insira
app.js
. Mantenha as outras opções padrão. -
Escolha Commit (Confirmar).
Agora você criou um arquivo chamado
app.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
-
No CodeCatalyst console, escolha seu projeto,
codecatalyst-linter-project
. -
No painel de navegação, escolha CI/CD e, em seguida, escolha Fluxos de trabalho.
-
Escolha Criar fluxo de trabalho.
-
Em Repositório de origem, escolha
codecatalyst-linter-source-repository
. -
Para Branch, escolha
main
. -
Escolha Criar.
Exclua o código de YAML amostra.
-
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. -
Acesse a página Super-Linter
no Marketplace GitHub . -
Em
steps:
(minúsculas), localize o código e cole-o no CodeCatalyst fluxo de trabalho emSteps:
(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
-
(Opcional) Escolha Validar para garantir que o YAML código seja válido antes de confirmar.
-
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
-
No painel de navegação, escolha CI/CD e, em seguida, escolha Fluxos de trabalho.
-
Escolha o fluxo de trabalho que você acabou de criar:
codecatalyst-linter-workflow
. -
No diagrama do fluxo de trabalho, escolha SuperLinterAction.
-
Aguarde até que a ação falhe. Essa falha é esperada porque o linter encontrou problemas no código.
-
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
-
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.
-
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.
-
Corrija
app.js
eREADME.md
em seu repositório de origem e confirme suas alterações.dica
Para corrigir o
README.md
, adicionemarkdown
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
-
Abra o CodeCatalyst console em https://codecatalyst.aws/
. -
Excluir
codecatalyst-linter-source-repository
. -
Excluir
codecatalyst-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.