互いを置き換えるアプリケーションのさまざまな構成用のrpm / debパッケージを作成します。

互いを置き換えるアプリケーションのさまざまな構成用のrpm / debパッケージを作成します。

TL; DR基本パッケージと追加モジュールを含む完全パッケージという2つの構成でアプリケーションを公開したいと思います。どうすればいいですか?

私のCentOSアプリケーションには2つのパッケージがあります。app.rpm1つは軽量構成で、app_full.rpmもう1つは追加モジュールを含む完全な構成です。新しいパッケージのバージョンがインストールされているパッケージのバージョンと同じか最新の場合は、インストール時に互いに交換するようにしたいと思います。Obsoletes:写真のように使ってみました。ここ。問題は、私のアプリケーションが/opt/app/2つのパッケージにあることです。したがって、Yumは新しいパッケージをインストールし、古いファイルを上書きしてから/opt/app/(大丈夫です)、古いパッケージ(および/opt/app/

私は実際にインストールする前に、多くのタスク(システム要件に応じてリポジトリを追加するか、.rpm / .debをダウンロードする)を実行するこのアプリケーションをインストールするためにスクリプトを使用します。したがって、ここで表示される解決策は、このスクリプトを使用して他のパッケージがインストールされていることを確認し、インストールされているパッケージと新しいパッケージのバージョンを確認してから実行することyum uninstallですyum install。しかし、これは汚い解決策のようです。

私が考えることができるもう一つのことは、app_additions.rpmアドオンモジュールapp_full.rpmapp.rpm作成しますapp_additions.rpm。私はまだそれを試していません。これはうまくいくでしょうか?app_fullパッケージをインストールして削除するとappどうなりますか? 「アプリ」でこれらのパッケージを削除する方法はありますか?app_additionsapp_full

それでは、これを行う正しい方法は何ですか?
.debパッケージについても知りたいです。

関連情報