[opensuse-ja] [RFC]etckeeperにopenSUSE独自のpatchを当てるべきか? (was: test and review about etckeeper)
etckeeperについて皆さんに相談です。 upstreamにいくつかpullrequestを送付し、 そのうち小さな修正は取り込まれました。 しかし、以下の2つが大きな変更が取り込まれず pendingになっています。 仕様を大きく変更してしまうので、 おそらくupstreamには取り込まれないでしょう。 これらの変更をopenSUSE独自のpatchとして 適応するか否かの判断に迷っています。 etckeeperは割としょっちゅうソースが更新されているので パッチを当てると、後々メンテが面倒になりそうです。 1. ZYpp pluginのタイムアウトに対するパッチ zypperやYaST 1 click installなど、ZYppが動作すると、 etckeeperはプラグインを通じて自動的に起動します。 そして更新前・更新後の/etcの状態をVCSで管理しようとします。 しかしこの動作が遅いという問題が有ります。 30秒かかってpluginがtimeoutしてしまいます。 (インストール自体は成功します。) そして、timeoutした場合、etckeeperの自動commitは成功しません。 原因は解っています。 etckeeperはVCSのログにどのパッケージを追加・削除・変更したのかを 記録します。 この記録をするために、(アン)インストーラの起動前後で 合計2回rpm -qa | sortでパッケージ一覧を取得し、 その差分を取っています。 試しに私の環境で今rpm -qaしてみると24.255秒かかりました。 これを合計2回行うので30秒を超えてしまいZYppのpluginが timeoutします。 そこで、このログにパッケージの増減リストを取るのを諦めて、 rpm -qaをさせないことをconfファイルに定義できるpatchを書きました。 また、ZYppプラグインをサブパッケージにして、 アンインストール可能にしました。 ZYppによるetckeeperの自動commitを必要としない人は プラグインだけをアンインストールできます。 (が、etckeeperの魅力が半減します。) こちらはパッチではなく、サブパッケージなのでリリースします。 2. ZYpp, YUMの2つのパッケージマネージャーに対応するパッチ あまり知られていませんが、openSUSEは パッケージマネージャーとして、ZYppの他にYUMも使えます。 (使っている人がいるかどうかは判りませんが。) しかしetckeeperは複数のパッケージマネージャーを使う ディストリビューションを想定していません。 そこで複数のパッケージマネージャーに対応するパッチを 書いたのですが、仕様変更が大きく、 upstreamに取り込まれていません。 これらのパッチを入れた状態でリリースすべきでしょうか? それとも独自仕様は入れない方が良いでしょうか? 「1.」は機能的に不便なのでパッチを当ててもいいかなと 思うのですが、後々メンテを考えると入れてしまっていいのか どうか悩みます。 「2.」はYUMを使っている人がいるか否か判らないので、 あてないでいいかなと思っています。 皆さんのご意見を聞かせてください。 パッチを当てていない(どのディストリビューションよりも)新しい etckeeperは https://build.opensuse.org/package/show/home:Mitsutoshi:branches:utilities/e... にあります。 2014年7月13日 23:12 1xx <itsango@gmail.com>:
2014年7月13日 16:15 1xx <itsango@gmail.com>:
test仕様書: https://docs.google.com/spreadsheets/d/1kmtjqvCnqNMmuFHRLh0-xh1iBdjhxnvKoYgR...
-- 1xx <ItSANgo@gmail.com> <https://twitter.com/ItSANgo> <http://d.hatena.ne.jp/Itisango/> -- To unsubscribe, e-mail: opensuse-ja+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-ja+owner@opensuse.org
On Wed, Jul 30, 2014 at 07:32:54PM +0900, 1xx wrote:
2. ZYpp, YUMの2つのパッケージマネージャーに対応するパッチ
あまり知られていませんが、openSUSEは パッケージマネージャーとして、ZYppの他にYUMも使えます。 (使っている人がいるかどうかは判りませんが。) しかしetckeeperは複数のパッケージマネージャーを使う ディストリビューションを想定していません。
そこで複数のパッケージマネージャーに対応するパッチを 書いたのですが、仕様変更が大きく、 upstreamに取り込まれていません。
「2.」はYUMを使っている人がいるか否か判らないので、 あてないでいいかなと思っています。
私もそう思います。 openSUSEはzypper,Red Hat(CentOS)はyum という棲み分けでいいんじゃないかと。 ribbon -- To unsubscribe, e-mail: opensuse-ja+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-ja+owner@opensuse.org
2014年7月30日 19:32 1xx <itsango@gmail.com>:
しかし、以下の2つが大きな変更が取り込まれず pendingになっています。 仕様を大きく変更してしまうので、 おそらくupstreamには取り込まれないでしょう。
これらの変更をopenSUSE独自のpatchとして 適応するか否かの判断に迷っています。
etckeeperは割としょっちゅうソースが更新されているので パッチを当てると、後々メンテが面倒になりそうです。
1. ZYpp pluginのタイムアウトに対するパッチ
zypperやYaST 1 click installなど、ZYppが動作すると、 etckeeperはプラグインを通じて自動的に起動します。 そして更新前・更新後の/etcの状態をVCSで管理しようとします。
しかしこの動作が遅いという問題が有ります。 30秒かかってpluginがtimeoutしてしまいます。 (インストール自体は成功します。) そして、timeoutした場合、etckeeperの自動commitは成功しません。
原因は解っています。 etckeeperはVCSのログにどのパッケージを追加・削除・変更したのかを 記録します。 この記録をするために、(アン)インストーラの起動前後で 合計2回rpm -qa | sortでパッケージ一覧を取得し、 その差分を取っています。 試しに私の環境で今rpm -qaしてみると24.255秒かかりました。 これを合計2回行うので30秒を超えてしまいZYppのpluginが timeoutします。
そこで、このログにパッケージの増減リストを取るのを諦めて、 rpm -qaをさせないことをconfファイルに定義できるpatchを書きました。
また、ZYppプラグインをサブパッケージにして、 アンインストール可能にしました。 ZYppによるetckeeperの自動commitを必要としない人は プラグインだけをアンインストールできます。 (が、etckeeperの魅力が半減します。) こちらはパッチではなく、サブパッケージなのでリリースします。
2. ZYpp, YUMの2つのパッケージマネージャーに対応するパッチ
あまり知られていませんが、openSUSEは パッケージマネージャーとして、ZYppの他にYUMも使えます。 (使っている人がいるかどうかは判りませんが。) しかしetckeeperは複数のパッケージマネージャーを使う ディストリビューションを想定していません。
そこで複数のパッケージマネージャーに対応するパッチを 書いたのですが、仕様変更が大きく、 upstreamに取り込まれていません。
これらのパッチを入れた状態でリリースすべきでしょうか? それとも独自仕様は入れない方が良いでしょうか?
「1.」は機能的に不便なのでパッチを当ててもいいかなと 思うのですが、後々メンテを考えると入れてしまっていいのか どうか悩みます。 「2.」はYUMを使っている人がいるか否か判らないので、 あてないでいいかなと思っています。
私だったらbug reportを出すlevelだと思うので、悩んだ末 「1.」のパッチを当てることにしました。 「2.」についてはパッチを当てるのを見送ります。 現状の最新は https://build.opensuse.org/package/show/home:Mitsutoshi:branches:utilities/e... にあります。 テストを協力していただける方がいらっしゃれば幸いです。 今晩からテスト項目を考えます。 https://docs.google.com/spreadsheets/d/1kmtjqvCnqNMmuFHRLh0-xh1iBdjhxnvKoYgR... -- 1xx <ItSANgo@gmail.com> <https://twitter.com/ItSANgo> <http://d.hatena.ne.jp/Itisango/> -- To unsubscribe, e-mail: opensuse-ja+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-ja+owner@opensuse.org
2014年8月9日 18:34 1xx <itsango@gmail.com>:
2014年7月30日 19:32 1xx <itsango@gmail.com>:
しかし、以下の2つが大きな変更が取り込まれず pendingになっています。 仕様を大きく変更してしまうので、 おそらくupstreamには取り込まれないでしょう。
これらの変更をopenSUSE独自のpatchとして 適応するか否かの判断に迷っています。
etckeeperは割としょっちゅうソースが更新されているので パッチを当てると、後々メンテが面倒になりそうです。
1. ZYpp pluginのタイムアウトに対するパッチ
zypperやYaST 1 click installなど、ZYppが動作すると、 etckeeperはプラグインを通じて自動的に起動します。 そして更新前・更新後の/etcの状態をVCSで管理しようとします。
しかしこの動作が遅いという問題が有ります。 30秒かかってpluginがtimeoutしてしまいます。 (インストール自体は成功します。) そして、timeoutした場合、etckeeperの自動commitは成功しません。
原因は解っています。 etckeeperはVCSのログにどのパッケージを追加・削除・変更したのかを 記録します。 この記録をするために、(アン)インストーラの起動前後で 合計2回rpm -qa | sortでパッケージ一覧を取得し、 その差分を取っています。 試しに私の環境で今rpm -qaしてみると24.255秒かかりました。 これを合計2回行うので30秒を超えてしまいZYppのpluginが timeoutします。
そこで、このログにパッケージの増減リストを取るのを諦めて、 rpm -qaをさせないことをconfファイルに定義できるpatchを書きました。
また、ZYppプラグインをサブパッケージにして、 アンインストール可能にしました。 ZYppによるetckeeperの自動commitを必要としない人は プラグインだけをアンインストールできます。 (が、etckeeperの魅力が半減します。) こちらはパッチではなく、サブパッケージなのでリリースします。
2. ZYpp, YUMの2つのパッケージマネージャーに対応するパッチ
あまり知られていませんが、openSUSEは パッケージマネージャーとして、ZYppの他にYUMも使えます。 (使っている人がいるかどうかは判りませんが。) しかしetckeeperは複数のパッケージマネージャーを使う ディストリビューションを想定していません。
そこで複数のパッケージマネージャーに対応するパッチを 書いたのですが、仕様変更が大きく、 upstreamに取り込まれていません。
これらのパッチを入れた状態でリリースすべきでしょうか? それとも独自仕様は入れない方が良いでしょうか?
「1.」は機能的に不便なのでパッチを当ててもいいかなと 思うのですが、後々メンテを考えると入れてしまっていいのか どうか悩みます。 「2.」はYUMを使っている人がいるか否か判らないので、 あてないでいいかなと思っています。
私だったらbug reportを出すlevelだと思うので、悩んだ末 「1.」のパッチを当てることにしました。 「2.」についてはパッチを当てるのを見送ります。
現状の最新は https://build.opensuse.org/package/show/home:Mitsutoshi:branches:utilities/e... にあります。
昨晩の内にetckeeper 1.13がリリースされました。 http://ftp.de.debian.org/debian/pool/main/e/etckeeper/ 内容はGit版とほとんど変わらないようです。 こちらに差し替えた上で「1.」のパッチを当てた版をこれから作ります。
テストを協力していただける方がいらっしゃれば幸いです。
今晩からテスト項目を考えます。 https://docs.google.com/spreadsheets/d/1kmtjqvCnqNMmuFHRLh0-xh1iBdjhxnvKoYgR...
-- 1xx <ItSANgo@gmail.com> <https://twitter.com/ItSANgo> <http://d.hatena.ne.jp/Itisango/> -- To unsubscribe, e-mail: opensuse-ja+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-ja+owner@opensuse.org
participants (2)
-
1xx
-
ribbon