缺少构建Node.js应用程序RPM的命令

时间:2015-03-16 15:46:11

标签: node.js jenkins rpmbuild

在.spec文件的install指令中,我有一些命令仅适用于将安装rpm的机器。主要是:

%install
pm2 stop www # problem here
rm -rf $RPM_BUILD_ROOT
cp -r * $RPM_BUILD_ROOT/
rm -rf /home/ec2-user/APP-NAME
mkdir -p /home/ec2-user/APP-NAME
cp -r * /home/ec2-user/APP-NAME/*
pm2 start /home/ec2-user/APP-NAME/bin/www

在运行rpmbuild时,我收到错误消息,指出找不到pm2。由于RPM是建立在jenkins盒子上的,当然没有找到它。我有一个单独的盒子,RPM将安装在其上,当然它安装了pm2。

我的理解是,构建rpm的框不必具有install指令中使用的库或二进制文件。那是对的吗?

也有人能想到更好的方法来编写安装指令的shell脚本吗?这是我的fire node.js部署

1 个答案:

答案 0 :(得分:1)

%install用于将构建的文件安装到临时位置,RPM将捆绑它们。

%post是在安装后在目标计算机上运行命令。

看起来你正试图停止服务。您可以在%pre

中执行此操作