【发布时间】:2019-01-26 09:54:35
【问题描述】:
在过去的几年中,我们的应用程序已打包到一个 rpm 文件中,并带有通常的编号更新。现在我想将一些文件分离到第二个 RPM 中,用于产品管理。
从旧.spec 文件的%files 部分中删除文件并将它们添加到新.spec 文件中的正确方法是什么?
例如,我们现在有 myApp.rpm 构建自:
/usr/local/myApp
+ bin/ {bunch of files here}
+ config/ {bunch of files here}
+ branding/
因此,当前的规范文件在其%files 指令中列出了上述所有内容。
要将branding 拆分为单独的 rpm 而不弄乱包装?例如。
myApp.spec
Name: myApp
%install
{make directories, copy everything but branding}
%files
/%{_prefix}/myApp
/%{_prefix}/myApp/bin/*
/%{_prefix}/myApp/config/*
和
branding.spec
Name: myApp_branding
Requires: myApp
%install
{copy branding to rpm tree}
%files
/%{_prefix}/myApp/branding/*
升级现有安装后,品牌文件的包成员现在是否为 myApp_branding 包?
这种方法有什么缺点或风险吗?
谢谢
【问题讨论】: