Een Node.js-pakket bouwen en publiceren
Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019
In deze quickstart gebruikt u een pijplijn om een Node.js-pakket te maken met Node Pakketbeheer (npm) en een pijplijnartefact te publiceren. U leert hoe u Azure Pipelines gebruikt om uw JavaScript-apps te bouwen, implementeren en testen.
Vereisten
- Een GitHub-account waar u een opslagplaats kunt maken. Maak gratis een GitHub-account.
- een Azure DevOps-organisatie. Maak gratis een account.
- Een Azure DevOps-project. Maak er een met behulp van de wizard Azure DevOps-project maken.
- De mogelijkheid om pijplijnen uit te voeren op door Microsoft gehoste agents. U moet de gratis toekenning van parallelle taken aanvragen of een parallelle taak aanschaffen.
- Een GitHub-account waar u een opslagplaats kunt maken. Maak gratis een GitHub-account.
- een Azure DevOps-organisatie. Maak gratis een account.
- Een Azure DevOps-project. Maak er een met behulp van de wizard Azure DevOps-project maken.
- Een zelf-hostende agent. Zie Zelf-hostende agents om er een te maken.
De voorbeeldcode forken
Fork de voorbeeld-Express.js-server-app.
- Ga naar de opslagplaats js-e2e-express-server .
- Selecteer Fork in de rechterbovenhoek van de pagina.
- Selecteer uw GitHub-account. Standaard krijgt de fork dezelfde naam als de bovenliggende opslagplaats, maar u kunt deze een andere naam opgeven.
Belangrijk
Tijdens de volgende procedures wordt u mogelijk gevraagd om een GitHub-serviceverbinding te maken of omgeleid naar GitHub om u aan te melden, Azure Pipelines te installeren of Azure Pipelines te autoriseren. Volg de instructies op het scherm om het proces te voltooien. Zie Toegang tot GitHub-opslagplaatsen voor meer informatie.
Uw pijplijn maken
- Selecteer in uw Azure DevOps-project pijplijnen>maken en selecteer vervolgens GitHub als de locatie van uw broncode.
- Selecteer in het scherm Een opslagplaats selecteren uw geforkte voorbeeldopslagplaats.
- Selecteer Starter-pijplijn in het scherm Uw pijplijn configureren. Azure Pipelines genereert een YAML-bestand met de naam azure-pipelines.yml voor uw pijplijn.
- Selecteer de vervolgkeuzelijst naast Opslaan en uitvoeren, selecteer Opslaan en selecteer vervolgens Opnieuw opslaan . Het bestand wordt opgeslagen in uw geforkte GitHub-opslagplaats.
- Selecteer Bewerken in het volgende scherm.
Het pakket bouwen en een artefact publiceren
Bewerk het azure-pipelines.yml bestand als volgt.
Vervang de inhoud van het bestand door de volgende code. Met de code wordt de installatietaak van het Node.js hulpprogramma bijgewerkt om Node.js versie 16 LTS te gebruiken.
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'
Voeg de volgende nieuwe taken toe aan de pijplijn:
De taak bestanden kopiƫren kopieert de bestanden van de src en openbare mappen naar de faseringsmap voor buildartefacten.
De taak voor het publiceren van pijplijnartefacten haalt de bestanden op van de faseringslocatie van het artefact en publiceert deze als artefacten die moeten worden uitgevoerd met pijplijn-builds.
- 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'
Uw pijplijn uitvoeren
Selecteer Valideren en opslaan, selecteer Opslaan, Uitvoeren en selecteer Opnieuw uitvoeren.
Nadat de pijplijn is uitgevoerd, controleert u of de taak is uitgevoerd en of u een gepubliceerd artefact ziet.
Gefeliciteerd, u hebt een pijplijn gemaakt en uitgevoerd die een Node.js-pakket heeft gebouwd en getest. U kunt Node.js apps bouwen, testen en implementeren als onderdeel van uw CI/CD-systeem (continue integratie en continue levering) van Azure Pipelines.