Sdílet prostřednictvím


Sestavení a publikování balíčku Node.js

Azure DevOps Services | Azure DevOps Server | Azure DevOps Server 2022 | Azure DevOps Server 2020

V rámci systému kontinuální integrace a průběžného doručování (CI/CD) služby Azure Pipelines můžete vytvářet, testovat a nasazovat Node.js aplikace. Zjistěte, jak pomocí pipeline vytvořit balíček Node.js pomocí Node Package Manageru (npm) a publikovat artefakt pipeline.

Ukázkový kanál automatizuje proces sestavování, testování a balení Node.js aplikace, takže je připravený k dalšímu nasazení nebo distribuci.

Požadavky

Výrobek Požadavky
Azure DevOps Projekt Azure DevOps.
– Možnost spouštět potrubí na Microsoftem hostovaných agentech. Můžete si buď koupit paralelní úlohu, nebo si vyžádat bezplatnou úroveň.
– Základní znalost YAML a Azure Pipelines. Další informace naleznete v tématu Vytvoření prvního potrubí.
- Oprávnění:
     – Chcete-li vytvořit kanál sestavení: Musíte být ve skupině Přispěvatelé a skupina musí mít oprávnění Vytvoření kanálu sestavení nastaveno na hodnotu Povolit. Členové skupiny Správci projektů můžou spravovat kanály.
    - Chcete-li vytvořit připojení služeb: Musíte mít roli Správce nebo Tvůrce pro připojení služeb .
GitHub – Účet GitHubu .
Připojení ke službě GitHub pro autorizaci Azure Pipelines.
Azurový Předplatné Azure.
Výrobek Požadavky
Azure DevOps Projekt Azure DevOps.
- Samostatně hostovaný agent. Pro vytvoření viz agenty s vlastním hostováním.
– Základní znalost YAML a Azure Pipelines. Další informace naleznete v tématu Vytvoření prvního potrubí.
- Oprávnění:
    – Chcete-li vytvořit kanál sestavení: Musíte být ve skupině Přispěvatelé a skupina musí mít oprávnění Vytvoření kanálu sestavení nastaveno na hodnotu Povolit. Členové skupiny Správci projektů můžou spravovat kanály.
    - Chcete-li vytvořit připojení služeb: Musíte mít roli Správce nebo Tvůrce pro připojení služeb .
GitHub – Účet GitHubu .
Připojení ke službě GitHub pro autorizaci Azure Pipelines.
Azurový Předplatné Azure.

Rozvětvěte ukázkový kód

Forkujte ukázkovou serverovou aplikaci Express.js.

  1. Přejděte do úložiště js-e2e-express-server .
  2. V pravém horním rohu stránky vyberte Fork .
  3. Vyberte svůj účet GitHubu. Ve výchozím nastavení má fork stejný název jako nadřazené úložiště, ale můžete mu dát jiný název.

Důležité

Během následujících postupů se může zobrazit výzva k vytvoření připojení ke službě GitHub nebo přesměrování na GitHub, abyste se mohli přihlásit, nainstalovat Azure Pipelines nebo autorizovat Azure Pipelines. Dokončete proces podle pokynů na obrazovce. Další informace najdete v tématu Přístup k úložištím GitHub.

Vytvořte svůj kanál

  1. V projektu Azure DevOps vyberte Pipelines>Create Pipeline a pak jako umístění zdrojového kódu vyberte GitHub .
  2. Na obrazovce Vybrat úložiště vyberte svůj forkovaný ukázkový úložiště.
  3. Na obrazovce Konfigurace kanálu vyberte Počáteční kanál. Azure Pipelines vygeneruje soubor YAML s názvem azure-pipelines.yml pro váš kanál.
  4. Vyberte šipku vedle možnosti Uložit a spustit, vyberte Uložit, a poté znovu vyberte Uložit. Soubor se uloží do vašeho forku úložiště GitHub.
  5. Na další obrazovce vyberte Upravit.

Sestavení balíčku a publikování artefaktu

Upravte soubor azure-pipelines.yml následujícím způsobem.

  1. Obsah souboru nahraďte následujícím kódem.

    trigger:
      - main
    
    pool:
      vmImage: 'ubuntu-latest'
    
    variables:
      nodeVersion: '18.x'
    
    steps:
      # Install Node.js
      - task: UseNode@1
        inputs:
          version: $(nodeVersion)
        displayName: 'Install Node.js'
    
      # Install dependencies
      - script: |
          npm install
        displayName: 'Install dependencies'
    
      # Build the project
      - script: |
          npm run build
        displayName: 'Build project'
    
      # Run tests
      - script: |
          npm test
        displayName: 'Run tests'
    
      # Copy project files to artifact staging directory
      - task: CopyFiles@2
        inputs:
          sourceFolder: '$(Build.SourcesDirectory)'
          contents: |
            src/**
            public/**
          targetFolder: '$(Build.ArtifactStagingDirectory)'
        displayName: 'Copy project files'
    
      # Publish pipeline artifact
      - task: PublishPipelineArtifact@1
        inputs:
          artifactName: 'nodejs-app'
          targetPath: '$(Build.ArtifactStagingDirectory)'
        displayName: 'Publish pipeline artifact'
    

V aktualizovaném procesu budete:

  • Instalace Node.js: Úloha UseNode@1 nainstaluje zadanou verzi Node.js (18.x).
  • Instalace závislostí: Příkaz npm install nainstaluje požadované závislosti pro projekt Node.js.
  • Sestavení projektu: Příkaz npm run build sestaví projekt Node.js.
  • Spustit testy: Příkaz npm test spustí sadu testů projektu.
  • Kopírovat soubory: Úloha CopyFiles@2 zkopíruje potřebné soubory projektu (například src/** a public/**) do přípravného adresáře artefaktů.
  • Publikování artefaktu kanálu: Úloha PublishPipelineArtifact@1 publikuje soubory z adresáře pro přípravu artefaktů jako artefakt kanálu pojmenovaný nodejs-app.

Spusťte svůj pipeline

Vyberte Ověřit a uložit, pak Uložit, Spustit a Spustit znovu.

Po spuštění pipeline ověřte, že se úloha úspěšně spustila a že je viditelný publikovaný artefakt.

Snímek obrazovky úspěšného spuštění kanálu s artefaktem

Blahopřejeme, úspěšně jste vytvořili a spustili řetězec operací, který vytvořil a otestoval balíček pro Node.js. Pro rozšíření pipeline můžete:

Další kroky