Bug 1273688 - --make-ostree-live fails in blivet/util.py umount()
Summary: --make-ostree-live fails in blivet/util.py umount()
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Fedora
Classification: Fedora
Component: lorax
Version: 22
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Brian Lane
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2015-10-21 02:55 UTC by Jon Disnard
Modified: 2016-02-11 22:58 UTC (History)
4 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2016-02-11 22:58:08 UTC
Type: Bug
Embargoed:


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

Description Jon Disnard 2015-10-21 02:55:19 UTC
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-21 03:09:11 UTC
Created attachment 1084958 [details]
Anaconda TB file

Here is the Anaconda TB file, compressed.

Comment 2 Radek Vykydal 2015-10-21 07:41:04 UTC
Would this PR fix the problem?
https://github.com/rhinstaller/anaconda/pull/370

Comment 3 Jon Disnard 2015-10-21 15:29:05 UTC
(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.