回答編集履歴
2
コメントを追記
test
CHANGED
@@ -26,6 +26,8 @@
|
|
26
26
|
# rc=0
|
27
27
|
# out=(none):cyrus-sasl-lib-2.1.26-24.el7_9.i686
|
28
28
|
# err=warning: cyrus-sasl-lib-2.1.26-24.el7_9.i686.rpm: Header V3 RSA/SHA256 Signature, key ID f4a80eb5: NOKEY
|
29
|
+
# pkgspecがxxx.rpmとファイル名が指定されている場合、"xxx is not installed"という表示には絶対ならず、指定したファイルの情報が単純に出力されます
|
30
|
+
# 「インストール済みか否か」を調べるには、".rpm"を除いた "xxx" の部分のみをコマンドに渡して評価すべきです (ここがバグ)
|
29
31
|
|
30
32
|
# ↓rc = 0, outに "is not installed" が含まれないので、ここはスルーされます
|
31
33
|
# 本来であればi686版のrpmはインストールされていないので、ここの部分が評価され、「未インストール」扱いになってほしかったのかなと思います
|
1
少し見やすくしました
test
CHANGED
@@ -22,8 +22,10 @@
|
|
22
22
|
qf = "%{epoch}:%{name}-%{version}-%{release}.%{arch}\n"
|
23
23
|
cmd = [rpmbin, '-q', '--qf', qf, pkgspec]
|
24
24
|
rc, out, err = self.module.run_command(cmd, environ_update=lang_env)
|
25
|
-
# ここでrpmコマンドを実行しています
|
25
|
+
# ここでrpmコマンドを実行しています。恐らく結果は以下のようになります
|
26
|
+
# rc=0
|
27
|
+
# out=(none):cyrus-sasl-lib-2.1.26-24.el7_9.i686
|
26
|
-
|
28
|
+
# err=warning: cyrus-sasl-lib-2.1.26-24.el7_9.i686.rpm: Header V3 RSA/SHA256 Signature, key ID f4a80eb5: NOKEY
|
27
29
|
|
28
30
|
# ↓rc = 0, outに "is not installed" が含まれないので、ここはスルーされます
|
29
31
|
# 本来であればi686版のrpmはインストールされていないので、ここの部分が評価され、「未インストール」扱いになってほしかったのかなと思います
|