Невозможно запустить pm2 через конвейер jenkins - PullRequest
0 голосов
/ 03 января 2019

на компьютере Windows , я установил очень простой конвейер в Jenkins, который выполняет следующие действия:

  1. клонировать репозиторий git,

  2. установить пакеты,

  3. запустить приложение с помощью « pm2 start command »

Ниже приведен сценарий всего пиплелина:

node {
    stage('dev'){
git credentialsId: 'my-credentials', url: 'git@myurl.git'

bat 'npm install'

bat 'pm2 start src\\index.js --name myapp'

}
}

Все отлично работает, кроме запуска команды pm2 . Ошибка вывода говорит:

'pm2' не распознается как внутренняя или внешняя команда, работающая программа или командный файл.

Тем не менее, я могу легко выполнить ту же самую команду PM2 через CMD, я попытался поместить команду последней строки в файл .bat и попросил jenkins выполнить ее, и получить ту же ошибку.

1 Ответ

0 голосов
/ 06 января 2019

Jenkins не может получить доступ к PM2, который был установлен на компьютере Windows в глобальном масштабе, что связано с тем, что Jenkin работал как системный (root) пользователь, пока pm2 работал с локальным пользователем.Мне пришлось включить PM2 в файл package.config проекта, а затем вызвать его из папки node_module.

\node_modules\.bin\pm2 start src\\index.js --name myapp

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...