Compilare e pubblicare un pacchetto Node.js
Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019
In questa guida introduttiva si usa una pipeline per creare un pacchetto Node.js con Node Gestione pacchetti (npm) e pubblicare un artefatto della pipeline. Si apprenderà come usare Azure Pipelines per compilare, distribuire e testare le app JavaScript.
Prerequisiti
- Un account GitHub in cui è possibile creare un repository. Creare gratuitamente un account GitHub.
- Un'organizzazione di Azure DevOps. Crearne una gratuitamente.
- Un progetto Azure DevOps. Crearne uno usando la Creazione guidata progetto Azure DevOps.
- Possibilità di eseguire pipeline negli agenti ospitati da Microsoft. È necessario richiedere la concessione gratuita di processi paralleli o acquistare un processo parallelo.
- Un account GitHub in cui è possibile creare un repository. Creare gratuitamente un account GitHub.
- Un'organizzazione di Azure DevOps. Crearne una gratuitamente.
- Un progetto Azure DevOps. Crearne uno usando la Creazione guidata progetto Azure DevOps.
- Agente self-hosted. Per crearne uno, vedere Agenti self-hosted.
Creare una copia tramite fork del codice di esempio
Creare una copia tramite fork dell'app server di esempio Express.js.
- Passare al repository js-e2e-express-server .
- Selezionare Fork nell'angolo superiore destro della pagina.
- Selezionare l'account GitHub. Per impostazione predefinita, il fork è denominato come repository padre, ma è possibile denominarlo in modo diverso.
Importante
Durante le procedure seguenti, potrebbe essere richiesto di creare una connessione al servizio GitHub o reindirizzare a GitHub per accedere, installare Azure Pipelines o autorizzare Azure Pipelines. Seguire le istruzioni visualizzate per completare il processo. Per altre informazioni, vedere Accedere ai repository GitHub.
Creare la pipeline
- Nel progetto Azure DevOps selezionare Pipeline>di creazione pipeline e quindi Selezionare GitHub come percorso del codice sorgente.
- Nella schermata Selezionare un repository selezionare il repository di esempio con fork.
- Nella schermata Configura la pipeline, selezionare Pipeline di base. Azure Pipelines genera un file YAML denominato azure-pipelines.yml per la pipeline.
- Selezionare il cursore a discesa accanto a Salva ed esegui, selezionare Salva e quindi selezionare di nuovo Salva . Il file viene salvato nel repository GitHub con fork.
- Nella schermata successiva selezionare Modifica.
Compilare il pacchetto e pubblicare un artefatto
Modificare il file azure-pipelines.yml come indicato di seguito.
Sostituire il contenuto del file con il codice seguente. Il codice aggiorna l'attività del programma di installazione dello strumento di Node.js per usare Node.js versione 16 LTS.
trigger: - main pool: vmImage: 'ubuntu-latest' steps: - task: UseNode@1 inputs: version: '16.x' displayName: 'Install Node.js' - script: | npm install displayName: 'npm install' - script: | npm run build displayName: 'npm build' - script: npm test displayname: 'npm test'
Aggiungere le nuove attività seguenti alla pipeline:
L'attività Copia file copia i file dalle cartelle src e pubbliche nella directory di gestione temporanea dell'artefatto di compilazione.
L'attività dell'artefatto della pipeline di pubblicazione ottiene i file dal percorso di gestione temporanea dell'artefatto e li pubblica come artefatti da restituire con le compilazioni della pipeline.
- task: CopyFiles@2 inputs: sourceFolder: '$(Build.SourcesDirectory)' contents: | src/* public/* targetFolder: '$(Build.ArtifactStagingDirectory)' displayName: 'Copy project files' - task: PublishPipelineArtifact@1 inputs: artifactName: e2e-server targetPath: '$(Build.ArtifactStagingDirectory)' publishLocation: 'pipeline' displayName: 'Publish npm artifact'
Eseguire la pipeline
Selezionare Convalida e salva, quindi salva, selezionare Esegui e selezionare di nuovo Esegui.
Dopo l'esecuzione della pipeline, verificare che il processo sia stato eseguito correttamente e che venga visualizzato un artefatto pubblicato.
È stata creata ed eseguita correttamente una pipeline che ha compilato e testato un pacchetto Node.js. È possibile compilare, testare e distribuire app Node.js come parte del sistema di integrazione continua e recapito continuo (CI/CD) di Azure Pipelines.