Master node USB setup failed due to anaconda can't mount partition

Bug #1538335 reported by Maksym Strukov
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Fuel for OpenStack
Fix Released
Critical
Dmitry Teselkin
8.0.x
Fix Released
Critical
Dmitry Teselkin

Bug Description

Steps:
1. Write Fuel to usb stick or attach iso image to qemu as usb drive
2. Boot Fuel from usb
3. On grub menu press Esc and use custom cmd (due to bug https://bugs.launchpad.net/fuel/+bug/1538313) as following:
vmlinuz initrd=initrd.img biosdevname=0 repo=hd:LABEL=Mirantis_Fuel:/ ks=hd:LABEL=Mirantis_Fuel:/ks.cfg ip=10.109.25.2::10.109.25.1:255.255.255.0:nailgun.test.domain.local:enp0s3:off::: dns1=8.8.8.8 showmenu=0 wait_for_external_config=yes build_images=0
4. Press Enter (to boot) and wait

Expected:
After setup completed master node available via SSH

Actual:
master node not available via SSH, connections to 22 port rejected

/root/anaconda-post-configure-repos.log contain following:
...
+ SOURCE=/tmp/source
+ FS=/tmp/fs
+ mkdir -p /tmp/source
+ mkdir -p /tmp/fs
+ test -e /dev/disk/by-label/Mirantis_Fuel
+ mount /dev/disk/by-label/Mirantis_Fuel /tmp/source
mount: /dev/sda1 is write-protected, mounting read-only
mount: /dev/sda1 is already mounted or /tmp/source busy
...
cp -r /tmp/source/images /var/www/nailgun/liberty-8.0/centos/x86_64
cp: cannot stat '/tmp/source/images': No such file or directory
...

Env: 8.0-482

Tags: area-linux
Revision history for this message
Nastya Urlapova (aurlapova) wrote :

Installation from a USB stick is a basic functionality, so priority is Critical.

Changed in fuel:
milestone: none → 9.0
importance: High → Critical
Changed in fuel:
assignee: nobody → Fuel Python Team (fuel-python)
status: New → Confirmed
importance: Critical → High
importance: High → Critical
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Related fix proposed to fuel-main (master)

Related fix proposed to branch: master
Review: https://review.openstack.org/273251

Changed in fuel:
assignee: Fuel Python Team (fuel-python) → Dmitry Teselkin (teselkin-d)
status: Confirmed → In Progress
tags: added: area-linux
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to fuel-main (master)

Reviewed: https://review.openstack.org/273251
Committed: https://git.openstack.org/cgit/openstack/fuel-main/commit/?id=c2bae141ba2c08a1c5c9416cf941f27043c609ea
Submitter: Jenkins
Branch: master

commit c2bae141ba2c08a1c5c9416cf941f27043c609ea
Author: Dmitry Teselkin <email address hidden>
Date: Thu Jan 28 00:43:40 2016 +0300

    Fix USB installation

    The follwing errors during installation from USB stick/image
    caused by the attempt to mount partition that already used

      + mount /dev/disk/by-label/Mirantis_Fuel /tmp/source
      mount: /dev/sda1 is write-protected, mounting read-only
      mount: /dev/sda1 is already mounted or /tmp/source busy

    Anaconda mounts paritions from 'repo' automatically (not sure
    about nfs partitions but there is a code to mount is explicitely),
    so it's not possible to re-mount it. However, we can mount it
    with 'bind' option to make avaible in another path.

    This commit collects all the logic to mount SOURCE path
    in one place and adds additional checks to avoid mointing when
    SOURCE path set up already.

    Change-Id: Idd7f56f23a8bab604d78f2b83f0290e8006482dc
    Closes-bug: #1538335

Changed in fuel:
status: In Progress → Fix Committed
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to fuel-main (stable/8.0)

Fix proposed to branch: stable/8.0
Review: https://review.openstack.org/274055

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to fuel-main (stable/8.0)

Reviewed: https://review.openstack.org/274055
Committed: https://git.openstack.org/cgit/openstack/fuel-main/commit/?id=94507c5e4dad6d8cfbd8f5d41aa8389d5335990a
Submitter: Jenkins
Branch: stable/8.0

commit 94507c5e4dad6d8cfbd8f5d41aa8389d5335990a
Author: Dmitry Teselkin <email address hidden>
Date: Thu Jan 28 00:43:40 2016 +0300

    Fix USB installation

    The follwing errors during installation from USB stick/image
    caused by the attempt to mount partition that already used

      + mount /dev/disk/by-label/Mirantis_Fuel /tmp/source
      mount: /dev/sda1 is write-protected, mounting read-only
      mount: /dev/sda1 is already mounted or /tmp/source busy

    Anaconda mounts paritions from 'repo' automatically (not sure
    about nfs partitions but there is a code to mount is explicitely),
    so it's not possible to re-mount it. However, we can mount it
    with 'bind' option to make avaible in another path.

    This commit collects all the logic to mount SOURCE path
    in one place and adds additional checks to avoid mointing when
    SOURCE path set up already.

    Change-Id: Idd7f56f23a8bab604d78f2b83f0290e8006482dc
    Closes-bug: #1538335
    (cherry picked from commit c2bae141ba2c08a1c5c9416cf941f27043c609ea)

Revision history for this message
Roman Podoliaka (rpodolyaka) wrote :

https://review.openstack.org/#/c/274055/ is merged, closing the bug

Revision history for this message
Maksym Strukov (unbelll) wrote :
Revision history for this message
Maksym Strukov (unbelll) wrote :
Revision history for this message
Maksym Strukov (unbelll) wrote :

Verified as fixed in 9.0-8

Changed in fuel:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.