Мой ecosystem.config.js выглядит следующим образом:
module.exports = {
apps: [{
name: 'production',
script: '/home/username/sites/Website/source/server.js',
env: { NODE_ENV: 'PRODUCTION' },
args: '--run-server'
}, {
name: 'staging',
script: '/home/username/sites/WebsiteStaging/source/server.js',
env: { NODE_ENV: 'STAGING' },
args: '--run-server'
}],
deploy: {
production: {
user: 'username',
host: ['XXX.XXX.XX.XXX'],
ref: 'origin/production',
repo: 'git@github.com:ghuser/Website.git',
path: '/home/username/sites/Website',
'post-deploy': 'npm install && pm2 reload ecosystem.config.js --only production',
env: { NODE_ENV: 'PRODUCTION' }
},
staging: {
user: 'username',
host: ['XXX.XXX.XX.XXX'],
ref: 'origin/staging',
repo: 'git@github.com:ghuser/Website.git',
path: '/home/username/sites/WebsiteStaging',
'post-deploy': 'npm install && pm2 reload ecosystem.config.js --only staging',
env: { NODE_ENV: 'STAGING' }
}
}
};
Когда я разверну приложение, я ожидаю увидеть два процесса - один называется «производственный», а другой - «промежуточный».Они запускают код из того же репо, но из разных ветвей.
Я вижу два процесса, однако, когда я запускаю pm2 desc production
, я вижу, что путь к сценарию /home/username/sites/WebsiteStaging/source/server.js
.Этот путь должен быть /home/username/sites/Website/source/server.js
согласно файлу конфигурации.
Я попытался установить сценарий на ./server.js
и использовать параметр cwd
, но результат был таким же.
Используемые команды развертывания: pm2 deploy production
и pm2 deploy staging
и я убедился, что на моем сервере присутствуют как папки Website
, так и WebsiteStaging
.
Есть ли что-то, чего я здесь не хватает?Почему это по умолчанию для промежуточной папки, как это?