Tutorial: codice Lint utilizzando un' GitHubazione in un flusso di lavoro - Amazon CodeCatalyst

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Tutorial: codice Lint utilizzando un' GitHubazione in un flusso di lavoro

In questo tutorial, aggiungi l' GitHub azione Super-Linter a un flusso di lavoro Amazon. CodeCatalyst L'azione Super-Linter ispeziona il codice, trova le aree in cui il codice presenta errori, problemi di formattazione e costrutti sospetti, quindi invia i risultati alla console). CodeCatalyst Dopo aver aggiunto il linter al flusso di lavoro, esegui il flusso di lavoro per lint un'applicazione Node.js di esempio (). app.js Quindi risolvete i problemi segnalati ed eseguite nuovamente il flusso di lavoro per vedere se le correzioni hanno funzionato.

Prerequisiti

Prima di iniziare, avrai bisogno di:

  • Uno CodeCatalyst spazio con un connesso Account AWS. Per ulteriori informazioni, consulta Creare uno spazio.

  • Un progetto vuoto nel tuo CodeCatalyst spazio chiamatocodecatalyst-linter-project. Scegli l'opzione Inizia da zero per creare questo progetto.

    Per ulteriori informazioni, consulta Creare un progetto vuoto in Amazon CodeCatalyst.

Fase 1: Creare un archivio di sorgenti

In questo passaggio, si crea un repository di origine in. CodeCatalyst Utilizzerai questo repository per archiviare il file sorgente dell'applicazione di esempioapp.js, per questo tutorial.

Per ulteriori informazioni sui repository dei sorgenti, consulta. Creazione di un repository di sorgenti

Per creare un archivio di sorgenti
  1. Apri la CodeCatalyst console all'indirizzo https://codecatalyst.aws/.

  2. Vai al tuo progetto,codecatalyst-linter-project.

  3. Nel riquadro di navigazione, scegli Codice, quindi scegli Archivi di origine.

  4. Scegli Aggiungi repository, quindi scegli Crea repository.

  5. Nel nome del repository, inserisci:

    codecatalyst-linter-source-repository
  6. Scegli Crea.

Passaggio 2: aggiungere un file app.js

In questo passaggio, aggiungi un app.js file al tuo repository di origine. app.jsContiene un codice di funzione che contiene alcuni errori che il linter troverà.

Per aggiungere il file app.js
  1. Nella CodeCatalyst console, scegli il tuo progetto,codecatalyst-linter-project.

  2. Nel riquadro di navigazione, scegli Codice, quindi scegli Archivi di origine.

  3. Dall'elenco dei repository di origine, scegli il tuo repository,. codecatalyst-linter-source-repository

  4. In File, scegli Crea file.

  5. Nella casella di testo, inserisci il seguente codice:

    // 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. Per Nome file, immettereapp.js. Mantieni le altre opzioni predefinite.

  7. Scegli Applica.

    Ora hai creato un file chiamatoapp.js.

Passaggio 3: Creare un flusso di lavoro che esegua l'azione Super-Linter

In questo passaggio, crei un flusso di lavoro che esegua l'azione Super-Linter quando invii il codice al tuo repository di origine. Il flusso di lavoro è costituito dai seguenti blocchi predefiniti, definiti in un file YAML:

  • Un trigger: questo trigger avvia l'esecuzione automatica del flusso di lavoro quando invii una modifica al tuo repository di origine. Per ulteriori informazioni sui trigger, consulta L'avvio di un flusso di lavoro viene eseguito automaticamente con i trigger.

  • Un'azione «GitHub Azioni»: all'attivazione, l'azione GitHub Azioni esegue l'azione Super-Linter, che a sua volta ispeziona tutti i file nel repository di origine. Se il linter rileva un problema, l'azione del flusso di lavoro fallisce.

Per creare un flusso di lavoro che esegua l'azione Super-Linter
  1. Nella CodeCatalyst console, scegli il tuo progetto,. codecatalyst-linter-project

  2. Nel riquadro di navigazione, scegli CI/CD, quindi scegli Flussi di lavoro.

  3. Scegli Crea flusso di lavoro.

  4. Per Source repository, sceglicodecatalyst-linter-source-repository.

  5. Per Branch, sceglimain.

  6. Scegli Crea.

  7. Elimina il codice di esempio YAML.

  8. Aggiungi il seguente YAML:

    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

    Nel codice precedente, sostituiscilo github-action-codecon il codice d'azione Super-Linter, come indicato nei seguenti passaggi di questa procedura.

  9. Vai alla pagina Super-Linter nel Marketplace. GitHub

  10. In steps: (minuscolo), trova il codice e incollalo nel CodeCatalyst flusso di lavoro sotto (maiuscolo). Steps:

    Modifica il codice GitHub Action per renderlo conforme agli CodeCatalyst standard, come mostrato nel codice seguente.

    Il tuo CodeCatalyst flusso di lavoro ora ha questo aspetto:

    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. (Facoltativo) Scegli Convalida per assicurarti che il codice YAML sia valido prima di eseguire il commit.

  12. Scegli Commit, inserisci un messaggio di Commit, seleziona il tuo codecatalyst-linter-source-repository Repository e scegli nuovamente Commit.

    Ora hai creato un flusso di lavoro. L'esecuzione di un flusso di lavoro viene avviata automaticamente a causa del trigger definito nella parte superiore del flusso di lavoro.

Per visualizzare il flusso di lavoro in corso
  1. Nel riquadro di navigazione, scegli CI/CD, quindi scegli Flussi di lavoro.

  2. Scegli il flusso di lavoro che hai appena creato:. codecatalyst-linter-workflow

  3. Nel diagramma del flusso di lavoro, scegli SuperLinterAction.

  4. Attendi che l'azione fallisca. Questo errore è previsto perché il linter ha riscontrato problemi nel codice.

  5. Lascia la CodeCatalyst console aperta e vai a. Passaggio 4: Risolvi i problemi rilevati da Super-Linter

Passaggio 4: Risolvi i problemi rilevati da Super-Linter

Super-Linter dovrebbe aver riscontrato problemi nel app.js codice e nel README.md file incluso nel repository dei sorgenti.

Per risolvere i problemi rilevati da Linter
  1. Nella CodeCatalyst console, scegli la scheda Registri, quindi scegli Lint Code Base.

    Vengono visualizzati i registri generati dall'azione Super-Linter.

  2. Nei log di Super-Linter, scorri verso il basso fino alla riga 90, dove trovi l'inizio dei problemi. Sembrano simili ai seguenti:

    /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. Correggi app.js e README.md inserisci le modifiche nel tuo archivio di origine e conferma le modifiche.

    Suggerimento

    Per risolvere il problemaREADME.md, aggiungi markdown al blocco di codice, in questo modo:

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

    Le modifiche avviano automaticamente un altro flusso di lavoro. Attendi il completamento del flusso di lavoro. Se hai risolto tutti i problemi, il flusso di lavoro dovrebbe avere esito positivo.

Eliminazione

Pulisci CodeCatalyst per rimuovere le tracce di questo tutorial dal tuo ambiente.

Per pulire CodeCatalyst
  1. Apri la CodeCatalyst console all'indirizzo https://codecatalyst.aws/.

  2. Eliminacodecatalyst-linter-source-repository.

  3. Eliminarecodecatalyst-linter-workflow.

In questo tutorial, hai imparato come aggiungere l' GitHub azione Super-Linter a un CodeCatalyst flusso di lavoro per inserire del codice.