Бөлісу құралы:


Создание и публикация пакета Node.js

Azure DevOps Services | Azure DevOps Server 2022 — Azure DevOps Server 2019

В этом кратком руководстве вы используете конвейер для создания пакета Node.js с помощью node диспетчер пакетов (npm) и публикации артефакта конвейера. Вы узнаете, как использовать Azure Pipelines для создания, развертывания и тестирования приложений JavaScript.

Необходимые компоненты

Вилка примера кода

Вилку примера Express.js серверного приложения.

  1. Перейдите в репозиторий js-e2e-express-server .
  2. Выберите Вилку в правом верхнем углу страницы.
  3. Выберите учетную запись GitHub. По умолчанию вилка называется так же, как родительский репозиторий, но его можно назвать другим.

Внимание

В следующих процедурах может потребоваться создать подключение службы GitHub или перенаправить на GitHub для входа, установки Azure Pipelines или авторизации Azure Pipelines. Следуйте инструкциям на экране, чтобы завершить процесс. Дополнительные сведения см. в разделе Access к репозиториям GitHub.

Создание конвейера

  1. В проекте Azure DevOps выберите Pipelines Create Pipelines>, а затем выберите GitHub в качестве расположения исходного кода.
  2. На экране "Выбор репозитория" выберите вилку репозитория.
  3. На экране "Настройка конвейера" выберите "Начальный конвейер". Azure Pipelines создает файл YAML с именем azure-pipelines.yml для конвейера.
  4. Выберите раскрывающийся список рядом с пунктом "Сохранить и запустить", нажмите кнопку "Сохранить" и снова нажмите кнопку "Сохранить ". Файл сохраняется в вилку репозитория GitHub.
  5. На следующем экране нажмите кнопку "Изменить".

Создание пакета и публикация артефакта

Измените файл azure-pipelines.yml следующим образом.

  1. Замените содержимое файла на код, приведенный ниже. Код обновляет задачу установщика средств Node.js, чтобы использовать Node.js версии 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'
    
  2. Добавьте следующие новые задачи в конвейер:

    • Задача копирования файлов копирует пакет npm и package.json файлы из локального пути загрузки агента и сохраняет их в локальном промежуточном пути артефакта на агенте. Копируются только src и общедоступные папки.

    • Задача артефакта конвейера публикации получает файлы из промежуточного расположения артефакта и публикует их как артефакты, которые будут выводиться с помощью сборок конвейера.

    - 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'
    

Выполнение конвейера

Выберите " Проверить и сохранить", а затем нажмите кнопку "Сохранить", " Запустить" и " Выполнить снова".

После выполнения конвейера убедитесь, что задание успешно выполнено и отображается опубликованный артефакт.

Снимок экрана: успешный запуск конвейера с артефактом.

Поздравляем, вы успешно создали и запустили конвейер, который создал и проверил пакет Node.js. Вы можете создавать, тестировать и развертывать приложения Node.js в рамках системы непрерывной интеграции Azure Pipelines и непрерывной доставки (CI/CD).

Следующие шаги