Программа Node.js в конвейере выпуска DevOps Azure? - PullRequest
0 голосов
/ 07 декабря 2018

Я только начал программировать в Node.js и в DevOps Azure.Я попытался запустить простой пример Node.js, чтобы увидеть, как все работает в DevOps Azure, но я столкнулся с ошибкой и не знаю, как ее устранить.У меня есть этот файл, импортированный из Github (File1.js):

const http = require('http');

const hostname = '127.0.0.1';
const port = 3000;

const server = http.createServer((req, res) => {
  res.statusCode = 200;
  res.setHeader('Content-Type', 'text/plain');
  res.end('Hello World\n');
});

server.listen(port, hostname, () => {
  console.log('Server running at http://${hostname}:${port}/');
});

И в моем azure-pipelines.yml у меня есть следующий код:

# Node.js
# Build a general Node.js project with npm.
# Add steps that analyze code, save build artifacts, deploy, and more:
# https://docs.microsoft.com/azure/devops/pipelines/languages/javascript

pool:
  vmImage: 'Ubuntu 16.04'

steps:
- task: NodeTool@0
  inputs:
    versionSpec: '11.x'
  displayName: 'Install Node.js'

- task: Npm@1
  displayName: 'npm install'
  inputs:
    command: install

- script: npm compile 'File1.js'

Я знаю последнюю строкуиз файла .yml генерирует ошибку, но я не знаю, как установить соединение с файлом .js для его запуска.Если я уберу эту строку, все будет нормально, но ... файл не запускается ... Пожалуйста, помогите с любыми решениями / подсказками.Они будут очень цениться!Спасибо!

1 Ответ

0 голосов
/ 07 декабря 2018

К сожалению, я не эксперт по узлам, поэтому я не совсем понимаю, что вы пытаетесь сделать, но в целом рабочий процесс такой:

  1. код коммита
  2. сборка запуска, запускает компиляцию \ тесты.упаковывает все в архив или в какой-то пакет
  3. релиз начинает отправлять результаты сборки на сервер, который будет выполнять код и обслуживать клиентов.

У меня есть пример конвейерадля nodejs.

pool:
  vmImage: 'Ubuntu 16.04'

steps:
- task: NodeTool@0
  inputs:
    versionSpec: '8.x'
  displayName: 'Install Node.js'

- script: |
    npm install
    npm run build
  displayName: 'npm install and build'

- script: |
    zip -r result.zip . -x .git/**\* > /dev/null
  displayName: 'package results'

- task: PublishBuildArtifacts@1
  inputs:
    pathtoPublish: '$(Build.SourcesDirectory)/result.zip' 
    artifactName: 'drop' 
  displayName: 'upload artifacts'
...