Bug 1695732 - [OSP 13] diskimage-builder fails when overcloud-secure-uefi element is used and docker package is installed.
Summary: [OSP 13] diskimage-builder fails when overcloud-secure-uefi element is used a...
Keywords:
Status: CLOSED DUPLICATE of bug 1688316
Alias: None
Product: Red Hat OpenStack
Classification: Red Hat
Component: diskimage-builder
Version: 13.0 (Queens)
Hardware: x86_64
OS: Linux
medium
medium
Target Milestone: ---
: ---
Assignee: Ben Nemec
QA Contact: Arik Chernetsky
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2019-04-03 17:15 UTC by Matt Flusche
Modified: 2019-04-16 16:03 UTC (History)
3 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2019-04-16 16:03:52 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)

Description Matt Flusche 2019-04-03 17:15:22 UTC
Description of problem:

I am tracking down an issue with a failure to build a UEFI overcloud image with DIB.  I've traced the following failure to the element: overcloud-secure-uefi along with the docker rpm being installed.

The failure in the log:

2019-04-03 16:41:55.231 | trying grub2-install
2019-04-03 16:41:55.236 | Installing GRUB2...
2019-04-03 16:41:55.248 | Installing for x86_64-efi platform.
2019-04-03 16:41:55.956 | File descriptor 4 (/dev/loop0) leaked on vgs invocation. Parent PID 23944: /usr/sbin/grub2-install
2019-04-03 16:41:55.962 |   WARNING: Failed to connect to lvmetad. Falling back to device scanning.
2019-04-03 16:42:05.990 |   WARNING: Device /dev/loop0 not initialized in udev database even after waiting 10000000 microseconds.
2019-04-03 16:42:16.025 |   WARNING: Device /dev/vda not initialized in udev database even after waiting 10000000 microseconds.
2019-04-03 16:42:26.049 |   WARNING: Device /dev/var-lib_vg/var-lib_lv not initialized in udev database even after waiting 10000000 microseconds.
2019-04-03 16:42:36.071 |   WARNING: Device /dev/vda1 not initialized in udev database even after waiting 10000000 microseconds.
2019-04-03 16:42:46.095 |   WARNING: Device /dev/mapper/loop0p1 not initialized in udev database even after waiting 10000000 microseconds.
2019-04-03 16:42:56.121 |   WARNING: Device /dev/mapper/loop0p2 not initialized in udev database even after waiting 10000000 microseconds.
2019-04-03 16:43:06.149 |   WARNING: Device /dev/mapper/loop0p3 not initialized in udev database even after waiting 10000000 microseconds.
2019-04-03 16:43:16.173 |   WARNING: Device /dev/vg/lv_root not initialized in udev database even after waiting 10000000 microseconds.
2019-04-03 16:43:26.200 |   WARNING: Device /dev/vg/lv_tmp not initialized in udev database even after waiting 10000000 microseconds.

This will loop for a period of time before a complete failure.

The simplified config file:

$ cat overcloud-hardened-images-uefi.yaml
disk_images:
  -
    imagename: overcloud-hardened-full
    type: qcow2
    distro: rhel7
    elements:
      - stable-interface-names
      - bootloader
      - element-manifest
      - dynamic-login
      - enable-packages-install
      - pip-and-virtualenv-override
      - dracut-regenerate
      - remove-machine-id
      - remove-resolvconf
      - modprobe-blacklist
      - overcloud-secure-uefi
    packages:
      - docker
    options:
      - "--min-tmpfs=7"
    environment:
      DIB_PYTHON_VERSION: '2'
      DIB_MODPROBE_BLACKLIST: 'usb-storage cramfs freevxfs jffs2 hfs hfsplus squashfs udf bluetooth'
      DIB_BOOTLOADER_DEFAULT_CMDLINE: 'nofb nomodeset vga=normal console=tty0 console=ttyS0,115200 audit=1 nousb'
      DIB_IMAGE_SIZE: '25'
      COMPRESS_IMAGE: '1'
      DIB_BLOCK_DEVICE: 'efi'



openstack --debug overcloud image build --image-name overcloud-hardened-full --config-file /home/stack/tmp/overcloud-hardened-images-uefi.yaml 

 
If docker is removed from the packages list the build completes successfully.

Version-Release number of selected component (if applicable):
OSP 13
diskimage-builder-2.16.0-4.el7ost.noarch


How reproducible:
100%

Steps to Reproduce:
1.  See above


Additional info:
I'll attach the full DIB log.

Comment 1 Matt Flusche 2019-04-03 17:16:36 UTC
export DIB_BLOCK_DEVICE_CONFIG='''
- local_loop:
    name: image0
- partitioning:
    base: image0
    label: gpt
    partitions:
      - name: ESP
        type: 'EF00'
        size: 8MiB
        mkfs:
          type: vfat
          mount:
            mount_point: /boot/efi
            fstab:
              options: "defaults"
              fsck-passno: 1
      - name: BSP
        type: 'EF02'
        size: 8MiB
      - name: root
        flags: [ boot ]
        size: 18G
- lvm:
    name: lvm
    base: [ root ]
    pvs:
        - name: pv
          base: root
          options: [ "--force" ]
    vgs:
        - name: vg
          base: [ "pv" ]
          options: [ "--force" ]
    lvs:
        - name: lv_root
          base: vg
          extents: 23%VG
        - name: lv_tmp
          base: vg
          extents: 4%VG
        - name: lv_var
          base: vg
          extents: 45%VG
        - name: lv_log
          base: vg
          extents: 23%VG
        - name: lv_audit
          base: vg
          extents: 4%VG
        - name: lv_home
          base: vg
          extents: 1%VG
- mkfs:
    name: fs_root
    base: lv_root
    type: xfs
    label: "img-rootfs"
    mount:
        mount_point: /
        fstab:
            options: "rw,relatime"
            fsck-passno: 1
- mkfs:
    name: fs_tmp
    base: lv_tmp
    type: xfs
    mount:
        mount_point: /tmp
        fstab:
            options: "rw,nosuid,nodev,noexec,relatime"
            fsck-passno: 2
- mkfs:
    name: fs_var
    base: lv_var
    type: xfs
    mount:
        mount_point: /var
        fstab:
            options: "rw,relatime"
            fsck-passno: 2
- mkfs:
    name: fs_log
    base: lv_log
    type: xfs
    mount:
        mount_point: /var/log
        fstab:
            options: "rw,relatime"
            fsck-passno: 3
- mkfs:
    name: fs_audit
    base: lv_audit
    type: xfs
    mount:
        mount_point: /var/log/audit
        fstab:
            options: "rw,relatime"
            fsck-passno: 4
- mkfs:
    name: fs_home
    base: lv_home
    type: xfs
    mount:
        mount_point: /home
        fstab:
            options: "rw,nodev,relatime"
            fsck-passno: 2

'''

Comment 3 Brian Smith 2019-04-16 15:29:12 UTC
It looks like the issue is occurring with the overcloud-secure element as well (in addition to the overcloud-secure-uefi element).

Comment 4 Matt Flusche 2019-04-16 16:02:12 UTC
I traced the issue down to this bug:

https://bugzilla.redhat.com/show_bug.cgi?id=1688316

To verify, I pre-installed the latest lvm2 build (lvm2-2.02.180-10.el7_6.7.x86_64.rpm) into the base image.

https://brewweb.engineering.redhat.com/brew/buildinfo?buildID=875915

And the build completes successfully with the uefi config:

2019-04-16 15:59:52.742 | Build completed successfully
clean_up BuildOvercloudImage: 
END return value: None

Comment 5 Matt Flusche 2019-04-16 16:03:52 UTC

*** This bug has been marked as a duplicate of bug 1688316 ***


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