我想使用Jenkins来创建RPM包,以便将代码和脚本部署到Linux redhat机器上,因此应用程序是多种技术(不需要编译),我只需要打包应用程序,将它们部署到正确的位置,重新启动apache。
对于一个新手来说,有没有人对如何做这些步骤有一些指导:
一些问题:
如果我要创建将部署到linux红帽子机器上的rpm (我希望在windows上安装jenkins ),我需要在本地linux机器上安装jenkins吗?如果我要在本地文件夹(暂时没有源代码控制)创建包的例子中,有谁有过用本地文件夹创建包的例子(暂时没有源代码控制),我只想指定从哪里获取代码的目录,并指定将代码部署到机器上的位置,rpm安装在目标计算机上的
。
谢谢
发布于 2012-06-19 15:54:12
您可以在另一台机器上安装Jenkins,但是通常必须在一台机器上安装一个Jenkins“节点”、“从”、“代理”,该机器可以生成RPM packages.
根据当前作为构建系统的内容,这可能包括用于设置rpm生成树的ant指令、在.spec文件中的复制以及对rpmbuild的可执行调用。
另外,要让yum命令在不使用--localinstall选项的情况下工作,您需要设置一个web服务器,将新的RPM复制到web服务器上的正确文件夹,并重建索引文件(如果我记得正确的话,重新构建就是这样做的脚本)。
在客户端机器上(包将在其中安装),您需要有一个yum配置,该配置指示客户机将web服务器作为已知的yum存储库之一。
发布于 2021-02-08 12:20:40
为什么不使用一个码头映像来构建RPM在其内部,通过一个专门的阶段?您的代码需要提供/rpm/SPEC文件,而在Docker (Jenkins)中,您可以拥有如下所示的Jenkinsfile:
mkdir -p ./rpm/BUILD && cd ./rpm/ && for f in ./SPECS/*; do rpmbuild --define \"_topdir \$(pwd)/\" --define \"_builddir \$(pwd)/BUILD\" -bb \$f;你就完蛋了。
https://stackoverflow.com/questions/11104645
复制相似问题