Compartir a través de


Compilación y publicación de un paquete de Node.js

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

En este inicio rápido, usará una canalización para crear un paquete de Node.js con Node Administrador de paquetes (npm) y publicar un artefacto de canalización. Aprenderá a usar Azure Pipelines para compilar, implementar y probar las aplicaciones de JavaScript.

Requisitos previos

Bifurcar el código de ejemplo

Bifurque el ejemplo Express.js aplicación de servidor.

  1. Vaya al repositorio js-e2e-express-server .
  2. Seleccione Bifurcar en la esquina superior derecha de la página.
  3. Seleccione la cuenta de GitHub. De forma predeterminada, la bifurcación se denomina igual que el repositorio primario, pero puede asignarle un nombre diferente.

Importante

Durante los procedimientos siguientes, es posible que se le pida que cree una conexión de servicio de GitHub o se le redirija a GitHub para iniciar sesión, instalar Azure Pipelines o autorizar Azure Pipelines. Siga las instrucciones en pantalla para completar el proceso. Para obtener más información, consulte Acceso a repositorios de GitHub.

Cree la canalización

  1. En el proyecto de Azure DevOps, seleccione Canalizaciones>crear canalización y, a continuación, seleccione GitHub como ubicación del código fuente.
  2. En la pantalla Seleccionar un repositorio , seleccione el repositorio de ejemplo bifurcada.
  3. En la pantalla Configurar su canalización, seleccione Canalización inicial. Azure Pipelines genera un archivo YAML denominado azure-pipelines.yml para la canalización.
  4. Seleccione el símbolo de intercalación desplegable junto a Guardar y ejecutar, seleccione Guardar y, a continuación, seleccione Guardar de nuevo. El archivo se guarda en el repositorio de GitHub bifurcado.
  5. En la pantalla siguiente, seleccione Editar.

Compilación del paquete y publicación de un artefacto

Edite el archivo azure-pipelines.yml de la manera siguiente.

  1. Reemplace el contenido del archivo por el código siguiente. El código actualiza la tarea del instalador de herramientas de Node.js para usar Node.js versión 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. Agregue las siguientes tareas nuevas a la canalización:

    • La tarea copiar archivos copia el paquete npm y package.json archivos de la ruta de acceso de descarga local en el agente y los guarda en una ruta de acceso provisional de artefacto local en el agente. Solo se copian las carpetas src y públicas .

    • La tarea de artefacto de la canalización de publicación obtiene los archivos de la ubicación de almacenamiento provisional del artefacto y los publica como artefactos que se van a generar con compilaciones de canalización.

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

Ejecución de la canalización

Seleccione Validar y guardar y, después, Guardar, Ejecutar y volver a ejecutar.

Una vez ejecutada la canalización, compruebe que el trabajo se ejecutó correctamente y que ve un artefacto publicado.

Captura de pantalla de la ejecución correcta de la canalización con un artefacto.

Enhorabuena, ha creado y ejecutado correctamente una canalización que creó y probó un paquete de Node.js. Puede compilar, probar e implementar aplicaciones Node.js como parte del sistema de integración continua y entrega continua (CI/CD) de Azure Pipelines.

Pasos siguientes