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 Azure DevOps Project Creation Wizard.
- De mogelijkheid om pipelines uit te voeren op door Microsoft gehuisveste 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 Azure DevOps-projectaanmaakwizard.
- Een zelf-hostende agent. Om er een te maken, zie Zelfgehoste agents.
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.
- Op het scherm Select a repository, selecteert u uw geforkte voorbeeldrepository.
- 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 bestandenkopiƫren kopieert de bestanden van de src en public mappen naar de faseringsdirectory 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'
Voer uw pijplijn uit
Selecteer Valideren en opslaan, selecteer Opslaan, Uitvoeren en selecteer Opnieuw uitvoeren.
Nadat de pijplijn is uitgevoerd, controleert u of de taak succesvol is uitgevoerd en of u een gepubliceerd artefact ziet.
Gefeliciteerd, u hebt met succes een proces gemaakt en uitgevoerd dat een Node.js-pakket heeft samengesteld 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.