-
Notifications
You must be signed in to change notification settings - Fork 107
Enable minimum RPM version support #2234
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Enable minimum RPM version support #2234
Conversation
ndokos
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I guess I missed these in all the previous reviews :-(
webbnh
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks OK to merge...unless you want to fix any of the items below.
Fixes distributed-system-analysis#2142. We need to support a minimum version of an RPM in addition to an exact version. We use the `rpmdev-vercmp` from the `rpmdevtools` RPM in order to perform the matching. This also fixes a few of the `bench-scripts` to emit proper errors when the required software is not installed (they were emitting debug logs prior to this change).
|
Added @webbnh 's code review feedback as another commit to make it easier to review. |
webbnh
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for committing this last round separately (I wish I'd noticed before doing my review.... :-} ).
It looks like Mr. Jenkins is not happy with you (perhaps the problem is the one that I mention last, below). The other two comments are your call.
webbnh
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good. My one substantial comment would probably best as a follow-on PR.
This fixes distributed-system-analysis#2289, a bug that was introduced in PR distributed-system-analysis#2234 (commit 5794fc1). This is a combination of two main problems. The first was that we incorrectly mocked the output of `rpm --query ...`. It only returns EVRs, which are version strings, which explicitly don't include the queried RPM name. Secondly, we were not formatting the output with a new line, so for RPMs that have multiple versions installed, the code would not work correctly. The second problem was that our `pbench-sysstat` requirement was for `12.0.3`, but the RPMs we have built publicly have version `12.0.3-1`, which won't match exactly.
This fixes distributed-system-analysis#2289, a bug that was introduced in PR distributed-system-analysis#2234 (commit 5794fc1). This is a combination of two main problems. The first was that we incorrectly mocked the output of `rpm --query ...`. It only returns EVRs, which are version strings, which explicitly don't include the queried RPM name. Secondly, we were not formatting the output with a new line, so for RPMs that have multiple versions installed, the code would not work correctly. The second problem was that our `pbench-sysstat` requirement was for `12.0.3`, but the RPMs we have built publicly have version `12.0.3-1`, which won't match exactly.
This fixes distributed-system-analysis#2289, a bug that was introduced in PR distributed-system-analysis#2234 (commit 5794fc1). This is a combination of two main problems. The first was that we incorrectly mocked the output of `rpm --query ...`. It only returns EVRs, which are version strings, which explicitly don't include the queried RPM name. Secondly, we were not formatting the output with a new line, so for RPMs that have multiple versions installed, the code would not work correctly. The second problem was that our `pbench-sysstat` requirement was for `12.0.3`, but the RPMs we have built publicly have version `12.0.3-1`, which won't match exactly.
This fixes distributed-system-analysis#2289, a bug that was introduced in PR distributed-system-analysis#2234 (commit 5794fc1). This is a combination of two main problems. The first was that we incorrectly mocked the output of `rpm --query ...`. It only returns EVRs, which are version strings, which explicitly don't include the queried RPM name. Additionally, we were not formatting the output with a new line, so for RPMs that have multiple versions installed, the code would not work correctly. The second problem was that our `pbench-sysstat` requirement was for `12.0.3`, but the RPMs we have built publicly have version `12.0.3-1`, which won't match exactly. We have also corrected the `rpm` mock for the bench-scripts to behave more closely to the actual `rpm` behavior.
This fixes distributed-system-analysis#2289, a bug that was introduced in PR distributed-system-analysis#2234 (commit 5794fc1). This is a combination of two main problems. The first was that we incorrectly mocked the output of `rpm --query ...`. It only returns EVRs, which are version strings, which explicitly don't include the queried RPM name. Additionally, we were not formatting the output with a new line, so for RPMs that have multiple versions installed, the code would not work correctly. The second problem was that our `pbench-sysstat` requirement was for `12.0.3`, but the RPMs we have built publicly have version `12.0.3-1`, which won't match exactly. We have also corrected the `rpm` mock for the bench-scripts to behave more closely to the actual `rpm` behavior.
This fixes distributed-system-analysis#2289, a bug that was introduced in PR distributed-system-analysis#2234 (commit 5794fc1). This is a combination of two main problems. The first was that we incorrectly mocked the output of `rpm --query ...`. It only returns EVRs, which are version strings, which explicitly don't include the queried RPM name. Additionally, we were not formatting the output with a new line, so for RPMs that have multiple versions installed, the code would not work correctly. The second problem was that our `pbench-sysstat` requirement was for `12.0.3`, but the RPMs we have built publicly have version `12.0.3-1`, which won't match exactly. We have also corrected the `rpm` mock for the bench-scripts to behave more closely to the actual `rpm` behavior.
This fixes distributed-system-analysis#2289, a bug that was introduced in PR distributed-system-analysis#2234 (commit 5794fc1). This is a combination of two main problems. The first was that we incorrectly mocked the output of `rpm --query ...`. It only returns EVRs, which are version strings, which explicitly don't include the queried RPM name. Additionally, we were not formatting the output with a new line, so for RPMs that have multiple versions installed, the code would not work correctly. The second problem was that our `pbench-sysstat` requirement was for `12.0.3`, but the RPMs we have built publicly have version `12.0.3-1`, which won't match exactly. We have also corrected the `rpm` mock for the bench-scripts to behave more closely to, but not exactly as, the actual `rpm` behavior.
This fixes distributed-system-analysis#2289, a bug that was introduced in PR distributed-system-analysis#2234 (commit 5794fc1). This is a combination of two main problems. The first was that we incorrectly mocked the output of `rpm --query ...`. It only returns EVRs, which are version strings, which explicitly don't include the queried RPM name. Additionally, we were not formatting the output with a new line, so for RPMs that have multiple versions installed, the code would not work correctly. The second problem was that our `pbench-sysstat` requirement was for `12.0.3`, but the RPMs we have built publicly have version `12.0.3-1`, which won't match exactly. We have also corrected the `rpm` mock for the bench-scripts to behave more closely to, but not exactly as, the actual `rpm` behavior.
This fixes distributed-system-analysis#2289, a bug that was introduced in PR distributed-system-analysis#2234 (commit 5794fc1). This is a combination of two main problems. The first was that we incorrectly mocked the output of `rpm --query ...`. It only returns EVRs, which are version strings, which explicitly don't include the queried RPM name. Additionally, we were not formatting the output with a new line, so for RPMs that have multiple versions installed, the code would not work correctly. The second problem was that our `pbench-sysstat` requirement was for `12.0.3`, but the RPMs we have built publicly have version `12.0.3-1`, which won't match exactly. We have also corrected the `rpm` mock for the bench-scripts to behave more closely to, but not exactly as, the actual `rpm` behavior.
This fixes distributed-system-analysis#2289, a bug that was introduced in PR distributed-system-analysis#2234 (commit 5794fc1). This is a combination of two main problems. The first was that we incorrectly mocked the output of `rpm --query ...`. It only returns EVRs, which are version strings, which explicitly don't include the queried RPM name. Additionally, we were not formatting the output with a new line, so for RPMs that have multiple versions installed, the code would not work correctly. The second problem was that our `pbench-sysstat` requirement was for `12.0.3`, but the RPMs we have built publicly have version `12.0.3-1`, which won't match exactly. We have also corrected the `rpm` mock for the bench-scripts to behave more closely to, but not exactly as, the actual `rpm` behavior.
This fixes distributed-system-analysis#2289, a bug that was introduced in PR distributed-system-analysis#2234 (commit 5794fc1). This is a combination of two main problems. The first was that we incorrectly mocked the output of `rpm --query ...`. It only returns EVRs, which are version strings, which explicitly don't include the queried RPM name. Additionally, we were not formatting the output with a new line, so for RPMs that have multiple versions installed, the code would not work correctly. The second problem was that our `pbench-sysstat` requirement was for `12.0.3`, but the RPMs we have built publicly have version `12.0.3-1`, which won't match exactly. We have also corrected the `rpm` mock for the bench-scripts to behave more closely to, but not exactly as, the actual `rpm` behavior.
This fixes distributed-system-analysis#2289, a bug that was introduced in PR distributed-system-analysis#2234 (commit 5794fc1). This is a combination of two main problems. The first was that we incorrectly mocked the output of `rpm --query ...`. It only returns EVRs, which are version strings, which explicitly don't include the queried RPM name. Additionally, we were not formatting the output with a new line, so for RPMs that have multiple versions installed, the code would not work correctly. The second problem was that our `pbench-sysstat` requirement was for `12.0.3`, but the RPMs we have built publicly have version `12.0.3-1`, which won't match exactly. We have also corrected the `rpm` mock for the bench-scripts to behave more closely to, but not exactly as, the actual `rpm` behavior.
This fixes distributed-system-analysis#2289, a bug that was introduced in PR distributed-system-analysis#2234 (commit 5794fc1). This is a combination of two main problems. The first was that we incorrectly mocked the output of `rpm --query ...`. It only returns EVRs, which are version strings, which explicitly don't include the queried RPM name. Additionally, we were not formatting the output with a new line, so for RPMs that have multiple versions installed, the code would not work correctly. The second problem was that our `pbench-sysstat` requirement was for `12.0.3`, but the RPMs we have built publicly have version `12.0.3-1`, which won't match exactly. We have also corrected the `rpm` mock for the bench-scripts to behave more closely to, but not exactly as, the actual `rpm` behavior.
This fixes #2289, a bug that was introduced in PR #2234 (commit 5794fc1). This is a combination of two main problems. The first was that we incorrectly mocked the output of `rpm --query ...`. It only returns EVRs, which are version strings, which explicitly don't include the queried RPM name. Additionally, we were not formatting the output with a new line, so for RPMs that have multiple versions installed, the code would not work correctly. The second problem was that our `pbench-sysstat` requirement was for `12.0.3`, but the RPMs we have built publicly have version `12.0.3-1`, which won't match exactly. We have also corrected the `rpm` mock for the bench-scripts to behave more closely to, but not exactly as, the actual `rpm` behavior.
This fixes distributed-system-analysis#2289, a bug that was introduced in PR distributed-system-analysis#2234 (commit 5794fc1). This is a combination of two main problems. The first was that we incorrectly mocked the output of `rpm --query ...`. It only returns EVRs, which are version strings, which explicitly don't include the queried RPM name. Additionally, we were not formatting the output with a new line, so for RPMs that have multiple versions installed, the code would not work correctly. The second problem was that our `pbench-sysstat` requirement was for `12.0.3`, but the RPMs we have built publicly have version `12.0.3-1`, which won't match exactly. We have also corrected the `rpm` mock for the bench-scripts to behave more closely to, but not exactly as, the actual `rpm` behavior.
Fixes #2142.
We need to support a minimum version of an RPM in addition to an exact version. We use the
rpmdev-vercmpfrom therpmdevtoolsRPM in order to perform the matching.This is a proper squash of the borked merge of PR #2210.