Bug 1273688 - --make-ostree-live fails in blivet/util.py umount()
--make-ostree-live fails in blivet/util.py umount()
Status: CLOSED RAWHIDE
Product: Fedora
Classification: Fedora
Component: lorax (Show other bugs)
22
Unspecified Unspecified
unspecified Severity unspecified
: ---
: ---
Assigned To: Brian Lane
Fedora Extras Quality Assurance
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2015-10-20 22:55 EDT by Jon Disnard
Modified: 2016-02-11 17:58 EST (History)
4 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2016-02-11 17:58:08 EST
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)
The kickstart used for ostree live pxe (1.24 KB, text/plain)
2015-10-20 22:55 EDT, Jon Disnard
no flags Details
Anaconda TB file (51.58 KB, application/x-xz)
2015-10-20 23:09 EDT, Jon Disnard
no flags Details

  None (edit)
Description Jon Disnard 2015-10-20 22:55:19 EDT
Created attachment 1084956 [details]
The kickstart used for ostree live pxe

Description of problem:

Using --make-ostree-live with --no-virt option. So it fails in blivet/util.py umount() which simply shells-out to the system umount command. The issue here is that ostree is apparently leaving sub-mounts under /mnt/sysimage for things like /var or /usr. Obviously one cannot umount a location that is still being used, due to sub-mounts. I was able to work-around the issue by hacking blivet to use recursion (aka umount --recursive /mnt/sysimage), but the issue of ostree leaving stuff mounted under /mnt/sysimage cannot be ignored. I'm not sure if ostree should be changed to cleanup after itself, or if blivet should gain recursive umount. Either way, we need to get those thing umount'ed under /mnt/sysimage.


Version-Release number of selected component (if applicable):

# rpm -q fedora-release python-blivet lorax anaconda ostree
fedora-release-22-1.noarch
lorax-22.12-1.fc22.x86_64
python-blivet-1.0.10-1.fc22.noarch
anaconda-22.20.13-1.fc22.x86_64
ostree-2015.6-2.fc22.x86_64

How reproducible:

100% using the attached kickstart

Steps to Reproduce:
1. livemedia-creator --no-virt --make-ostree-live --ks fedora-cloud-atomic-pxetolive.ks --live-rootfs-keep-size
2.
3.

Actual results:

bails in blivet/util.py:umount()

Expected results:


Additional info:
Comment 1 Jon Disnard 2015-10-20 23:09 EDT
Created attachment 1084958 [details]
Anaconda TB file

Here is the Anaconda TB file, compressed.
Comment 2 Radek Vykydal 2015-10-21 03:41:04 EDT
Would this PR fix the problem?
https://github.com/rhinstaller/anaconda/pull/370
Comment 3 Jon Disnard 2015-10-21 11:29:05 EDT
(In reply to Radek Vykydal from comment #2)
> Would this PR fix the problem?
> https://github.com/rhinstaller/anaconda/pull/370

Yes.

However the PR does not apply cleanly on my F22 test environment, and manually adding does not appear to succeed either. 

But generally speaking the code in rpmostreepayload.py that does umount stuff looks encouraging. Probably minor tweaks to get working in Fedora.

Note You need to log in before you can comment on or make changes to this bug.