Note: This is a public test instance of Red Hat Bugzilla. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback at bugzilla.redhat.com.
Bug 1880673
Summary: | iSCSI target add fails since iscsi-initiator-utils-6.2.1.2-0.git802688d.fc34 | ||
---|---|---|---|
Product: | [Fedora] Fedora | Reporter: | Adam Williamson <awilliam> |
Component: | python-blivet | Assignee: | Blivet Maintenance Team <blivet-maint-list> |
Status: | CLOSED RAWHIDE | QA Contact: | Fedora Extras Quality Assurance <extras-qa> |
Severity: | high | Docs Contact: | |
Priority: | unspecified | ||
Version: | rawhide | CC: | anaconda-maint-list, blivet-maint-list, cglombek, dlehman, japokorn, jkonecny, jonathan, kellin, lnie, mkolman, robatino, rvykydal, tbzatek, vanmeeuwen+fedora, vponcova, vslavik, vtrefny, wwoods |
Target Milestone: | --- | ||
Target Release: | --- | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | openqa | ||
Fixed In Version: | python-blivet-3.3.1-1.fc34 | Doc Type: | If docs needed, set a value |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2020-10-20 08:43:03 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: | 1829024 |
Description
Adam Williamson
2020-09-18 23:43:58 UTC
Sorry, I meant iscsi-initiator-utils , not iscsi-initiator-tools . Proposing as an F34 Final blocker as a violation of Final criterion "The installer must be able to detect (if possible) and install to supported network-attached storage devices." > Failed to open file “/etc/iscsi/initiatorname.iscsi”: No such file or directory The problem is the "initiatorname.iscsi" file is no longer created in iscsi-initiator-utils %post section. It is now created by the new iscsi-init service which is required only by iscsi service and we are starting iscsid in blivet. We could simply start the service in blivet, but I'm not sure if this is the right place. Maybe UDisks should do that or iscsid should also require iscsi-init. Related iscsi bug https://bugzilla.redhat.com/show_bug.cgi?id=1493296 and upstream PR https://github.com/open-iscsi/open-iscsi/pull/207 Christian who do you think should start the service to make sure the initiatorname.iscsi file exists? (In reply to Vojtech Trefny from comment #2) > > Failed to open file “/etc/iscsi/initiatorname.iscsi”: No such file or directory > > Maybe UDisks should do that or iscsid should also require iscsi-init. The only rpm spec requirement that would make sense would be a presence of the iscsi-init.service systemd service. Would simple `Requires: %{_unitdir}/etc/systemd/iscsi-init.service` work or is there a specific rpm systemd macro available? I think returning an error in case no initiator name has been set and preventing further access to UDisks2 iscsi module API is a proper way to go. There's no monitoring for initiator name change either. Normally I would say something like "but for portability reasons..." however the open-iscsi's libiscsi is still downstream only. Foreign system service management should not be part of UDisks however, we would need to deal with supporting the number of init systems out there. The iscsi.service unit declares a dependency on iscsi-init.service - i.e. if the service is started with systemd, the init service is started automatically. Since the init service is installed as part of the RPM, I don't think an RPM Requires for it makes sense on the same package. I am not familiar with the way openQA tests this, can it not start the service via systemd? *** Bug 1882888 has been marked as a duplicate of this bug. *** Christian: this is in the installer environment. openQA imitates a normal person running an interactive install and expects to be able to use an iSCSI device in the usual and documented way in the installer interface. No normal person running a Fedora install to an iSCSI target would expect to need to drop to a console and start a systemd service in order to be able to run the install. To extend that a bit - yes, technically I *could* make the openQA test drop to a console and enable the service, but to do so would be nonsensical because it would defeat the purpose of the test. The purpose of the test is to ensure that a normal person installing in the normal way meets with success, thus it makes no sense to add workarounds to the test which we would not expect our users to have to do in order to install successfully. If using systemd is not a viable option here, then I guess Anaconda will have to learn how to populate the `/etc/iscsi/initiatorname.iscsi` file itself, in a way similar to how the init service does it: https://github.com/open-iscsi/open-iscsi/blob/master/etc/systemd/iscsi-init.service#L8 To give some context on why this change was made: Initialization of that file in the RPM's %post directive as it was done before is incompatible with rpm-ostree images, because there %post is run server-side at compose time and the generated name would be hardcoded in the image and thus the same on every install. Using an init service instead is what the packaging guidelines suggest in such a case. Fixed in a pull request: https://github.com/storaged-project/blivet/pull/903 The PR has been merged, but it seems a new release/build of blivet hasn't yet been done. Could we get one, please? Thanks! |