1

我是 RPM 包制作的新手,并且正在徘徊如何改进我用于创建包的工作流程。我用的一个我觉得很费力。(幸运的是我只做了一次;-)

  1. 所以,我有一个应用程序目录,其中包含 python 源、配置文件、shell 脚本和一堆其他数据文件。foo_app/ /etc/stuff /bin/stuff /lib/python/foo/stuff /var/stuff
  2. 我将 foo_app 目录复制到 foo_app-1.0.1

  3. 我将其 tar 到 foo_app-1.0.0.tar.gz 并将其复制到 rpmbuild/SOURCES/

  4. 然后我从 SPECS 目录开火: rpmbuild -ba foo_app.spec 就在那里。
  5. 然后我在远程机器上安装并测试包,哎呀,有错误!
  6. 我需要在本地机器上修复它,重新打包整个东西,然后在远程再次测试。

是否有一些工具可以自动化或更容易重复这些步骤?或者有没有办法避免执行第 2 步和第 3 步?

4

1 回答 1

0

我认为,我的主要建议是让应用程序能够在开发目录之外运行,这样您就不必为了尝试而在本地安装它。或者有一个“make install”目标,这样你就可以安装它(在 rpm 之外)进行测试。

但更具体地回答你的问题,这里有两个想法:

从源代码管理导出 .tar.gz 的脚本可能有助于 ( git help archive) 步骤 2-3。

如果 .tar.gz 中有 .spec 文件,则可以使用rpmbuild -ta some.tar.gztar.gz 文件构建 rpm。

于 2013-04-07T07:04:40.207 回答