Bug 1083597
Summary: | [RFE] create rlCheckMakefileRequires | ||
---|---|---|---|
Product: | [Fedora] Fedora | Reporter: | Dalibor Pospíšil <dapospis> |
Component: | beakerlib | Assignee: | Dalibor Pospíšil <dapospis> |
Status: | CLOSED ERRATA | QA Contact: | Fedora Extras Quality Assurance <extras-qa> |
Severity: | medium | Docs Contact: | |
Priority: | low | ||
Version: | 20 | CC: | azelinka, ksrot, mcermak, pmuller, psplicha |
Target Milestone: | --- | Keywords: | Reopened |
Target Release: | --- | ||
Hardware: | Unspecified | ||
OS: | Unspecified | ||
Whiteboard: | Release | ||
Fixed In Version: | beakerlib-1.9-3.fc20 | Doc Type: | Bug Fix |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2014-07-30 06:58:11 UTC | Type: | Bug |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: | |||
Bug Depends On: | |||
Bug Blocks: | 1116308, 1116317 |
Description
Dalibor Pospíšil
2014-04-02 14:27:50 UTC
Remember that requires in Makefile is a superset of "requires on rhel5" + "requires on rhel6" etc. So in case requirements differ between rhel5 and rhel6 you would be getting errors in the test. What Karel said. I'd like to be able to check all requires without having to enumerate them twice (and do that in harness, not in test). But it's AFAIK not possible with Makefile reqs implementation as it is now. Maybe if/when we start defining requirements per test environment. AFAIK that's what RHSCL folks call dynamic requirements? Well, that's something I did not consider. I usually do not face these issues. If this is implemented it should be definitely done other way. As my routine actually does not check rpms but requirements in general it should be called rlAssertRequirements or so. Ok, your arguments are better than mine so I'll keep current model by putting it directly into test code. Thanks for comments. Still, I think that having that information would be useful. Just not to have it as an test Assert (if we cannot distinguish what is really needed). What about filing a RFE for beaker to store those package versions in a separate test log? It would be easier to access and more precise that mining this info from an install log. What about non-assertish version of this functionality? = based on rlCheckRpm instead of rlAssertRpm? function rlCheckMakefileRequires{ rlLogInfo "checking all Makefile requires" for each package from Makefile's Requires{ all+ rlCheckRpm package && found++ } rlLog "found %d out of %d makefile requires" % (found,all) } Sure, non-arrest one can be easily done. I just do not use existing function as I want to be compatible with requirements specified by path to binary and as I do some checks similar to those in rlCheckRpm I think it is not necessary to do them again. So if you find such a function useful I can change my code so it does only rlLog and set exit code accordingly. I would use it in rlRun or so. (In reply to Dalibor Pospíšil from comment #6) > as I want to be compatible with requirements specified by path to binary and Ah, right, didn't think about this. So this function would have to work with everything Makefile's Requires support and people use in tests: * package names * paths to binaries * virtual provides (e.g. perl(Some-module)) Basically the 'yum provides' inputs. Be sure to use 'yum provides --disablerepo=\*', otherwise it would be terribly slow. hmm, according to this: https://bugzilla.redhat.com/show_bug.cgi?id=952635#c5 any Makefile 'Requires' that is not a package name won't work. According to my test it is not true, see https://bugzilla.redhat.com/show_bug.cgi?id=952635#c10. I have tried path to binary which works. We could check also other provides strings. fixed by https://git.fedorahosted.org/cgit/beakerlib.git/commit/?id=be1ab4ba0aabb1a6f7da5412f9cab226d30837ca Made it more flexible by https://git.fedorahosted.org/cgit/beakerlib.git/commit/?id=0798489230e33b71401a3a1c4f5ff8d926b61d3a beakerlib-1.9-1.fc20 has been submitted as an update for Fedora 20. https://admin.fedoraproject.org/updates/beakerlib-1.9-1.fc20 Package beakerlib-1.9-1.fc20: * should fix your issue, * was pushed to the Fedora 20 testing repository, * should be available at your local mirror within two days. Update it with: # su -c 'yum update --enablerepo=updates-testing beakerlib-1.9-1.fc20' as soon as you are able to. Please go to the following url: https://admin.fedoraproject.org/updates/FEDORA-2014-7442/beakerlib-1.9-1.fc20 then log in and leave karma (feedback). beakerlib-1.9-2.fc20 has been submitted as an update for Fedora 20. https://admin.fedoraproject.org/updates/beakerlib-1.9-2.fc20 Please consider the package fixing this bug available in Fedora stable repos once bz1116308 is closed and RHEL stable repos once bz1116317 is closed. Fixed in: beakerlib-1.9-2.fc19 beakerlib-1.9-2.fc20 beakerlib-1.9-2.fc21 beakerlib-1.9-3.el5 beakerlib-1.9-2.el6 beakerlib-1.9-2.el7 beakerlib-1.9-3.fc20 has been submitted as an update for Fedora 20. https://admin.fedoraproject.org/updates/beakerlib-1.9-3.fc20 beakerlib-1.9-3.fc20 has been pushed to the Fedora 20 stable repository. If problems still persist, please make note of it in this bug report. |