ubuntu minimal build fails with: KeyError: 'blockdev'

Bug #1718702 reported by Andreas Scheuring
10
This bug affects 2 people
Affects Status Importance Assigned to Milestone
diskimage-builder
Fix Committed
Undecided
Unassigned

Bug Description

Since yesterday the DIB 2.8 ubuntu-minimal build is failing with KeyError: 'blockdev'

I started a fresh xenial vagrant box and did the following:

     apt-get update
     apt-get install -y python-pip qemu-utils kpartx debootstrap curl
     pip install diskimage-builder
     disk-image-create -x -o test ubuntu-minimal vm

Error message:

2017-09-21 14:54:57.057 DEBUG diskimage_builder.block_device.blockdevice [-] Creating BlockDevice object __init__ /usr/local/lib/python2.7/dist-packages/diskimage_builder/block_device/blockdevice.py:210
2017-09-21 14:54:57.057 DEBUG diskimage_builder.block_device.blockdevice [-] Params [{'root-fs-type': 'ext4', 'root-fs-opts': '-i 4096 -J size=64 ', 'root-label': None, 'build-dir': '/tmp/dib_build.sdCI2QMD', 'image-size': '1302912KiB', 'image-dir': '/tmp/dib_image.HREIv9nr', 'config': '/tmp/dib_build.sdCI2QMD/block-device/config.yaml', 'mount-base': '/tmp/dib_build.sdCI2QMD/mnt'}] __init__ /usr/local/lib/python2.7/dist-packages/diskimage_builder/block_device/blockdevice.py:213
2017-09-21 14:54:57.058 INFO diskimage_builder.block_device.blockdevice [-] Getting value for [image-block-device]
Traceback (most recent call last):
  File "/usr/local/bin/dib-block-device", line 11, in <module>
    sys.exit(main())
  File "/usr/local/lib/python2.7/dist-packages/diskimage_builder/block_device/cmd.py", line 120, in main
    return bdc.main()
  File "/usr/local/lib/python2.7/dist-packages/diskimage_builder/block_device/cmd.py", line 115, in main
    self.args.func()
  File "/usr/local/lib/python2.7/dist-packages/diskimage_builder/block_device/cmd.py", line 33, in cmd_getval
    self.bd.cmd_getval(self.args.symbol)
  File "/usr/local/lib/python2.7/dist-packages/diskimage_builder/block_device/blockdevice.py", line 317, in cmd_getval
    print("%s" % state['blockdev']['image0']['device'])
  File "/usr/local/lib/python2.7/dist-packages/diskimage_builder/block_device/blockdevice.py", line 85, in __getitem__
    return self.state[key]
KeyError: 'blockdev'
2017-09-21 14:54:57.298 DEBUG diskimage_builder.block_device.blockdevice [-] Creating BlockDevice object __init__ /usr/local/lib/python2.7/dist-packages/diskimage_builder/block_device/blockdevice.py:210
2017-09-21 14:54:57.298 DEBUG diskimage_builder.block_device.blockdevice [-] Params [{'root-fs-type': 'ext4', 'root-fs-opts': '-i 4096 -J size=64 ', 'root-label': None, 'build-dir': '/tmp/dib_build.sdCI2QMD', 'image-size': '1302912KiB', 'image-dir': '/tmp/dib_image.HREIv9nr', 'config': '/tmp/dib_build.sdCI2QMD/block-device/config.yaml', 'mount-base': '/tmp/dib_build.sdCI2QMD/mnt'}] __init__ /usr/local/lib/python2.7/dist-packages/diskimage_builder/block_device/blockdevice.py:213
*** /tmp/dib_build.sdCI2QMD/mnt is not a directory

summary: - ubuntu minimal fails with: KeyError: 'blockdev'
+ ubuntu minimal build fails with: KeyError: 'blockdev'
Revision history for this message
Ian Wienand (iwienand) wrote :

This is due to networkx 2.0. changes are in flight to fix this with a pin. please try again with 2.9.0 when it is released shortly

Changed in diskimage-builder:
status: New → Fix Committed
Revision history for this message
Andreas Scheuring (andreas-scheuring) wrote :
Revision history for this message
Saverio Proto (zioproto) wrote :

Hello,
I am testing master and it still fails for me:

Steps to reproduce:
disk-image-create -x -o test ubuntu-minimal vm

the output ends like this:

2017-10-05 16:15:33.898 DEBUG diskimage_builder.block_device.blockdevice [-] Creating BlockDevice object __init__ /usr/local/lib/python2.7/dist-packages/diskimage_builder/block_device/blockdevice.py:210
2017-10-05 16:15:33.898 DEBUG diskimage_builder.block_device.blockdevice [-] Params [{'root-fs-type': 'ext4', 'root-fs-opts': '-i 4096 -J size=64 ', 'root-label': None, 'build-dir': '/tmp/dib_build.13Pf1dpo', 'image-size': '1382464KiB', 'image-dir': '/tmp/dib_image.OX5JYYdu', 'config': '/tmp/dib_build.13Pf1dpo/block-device/config.yaml', 'mount-base': '/tmp/dib_build.13Pf1dpo/mnt'}] __init__ /usr/local/lib/python2.7/dist-packages/diskimage_builder/block_device/blockdevice.py:213
2017-10-05 16:15:33.899 INFO diskimage_builder.block_device.blockdevice [-] Getting value for [image-block-device]
Traceback (most recent call last):
  File "/usr/local/bin/dib-block-device", line 10, in <module>
    sys.exit(main())
  File "/usr/local/lib/python2.7/dist-packages/diskimage_builder/block_device/cmd.py", line 120, in main
    return bdc.main()
  File "/usr/local/lib/python2.7/dist-packages/diskimage_builder/block_device/cmd.py", line 115, in main
    self.args.func()
  File "/usr/local/lib/python2.7/dist-packages/diskimage_builder/block_device/cmd.py", line 33, in cmd_getval
    self.bd.cmd_getval(self.args.symbol)
  File "/usr/local/lib/python2.7/dist-packages/diskimage_builder/block_device/blockdevice.py", line 317, in cmd_getval
    print("%s" % state['blockdev']['image0']['device'])
  File "/usr/local/lib/python2.7/dist-packages/diskimage_builder/block_device/blockdevice.py", line 85, in __getitem__
    return self.state[key]
KeyError: 'blockdev'
2017-10-05 16:15:34.075 DEBUG diskimage_builder.block_device.blockdevice [-] Creating BlockDevice object __init__ /usr/local/lib/python2.7/dist-packages/diskimage_builder/block_device/blockdevice.py:210
2017-10-05 16:15:34.076 DEBUG diskimage_builder.block_device.blockdevice [-] Params [{'root-fs-type': 'ext4', 'root-fs-opts': '-i 4096 -J size=64 ', 'root-label': None, 'build-dir': '/tmp/dib_build.13Pf1dpo', 'image-size': '1382464KiB', 'image-dir': '/tmp/dib_image.OX5JYYdu', 'config': '/tmp/dib_build.13Pf1dpo/block-device/config.yaml', 'mount-base': '/tmp/dib_build.13Pf1dpo/mnt'}] __init__ /usr/local/lib/python2.7/dist-packages/diskimage_builder/block_device/blockdevice.py:213
*** /tmp/dib_build.13Pf1dpo/mnt is not a directory

Revision history for this message
Saverio Proto (zioproto) wrote :

OK, I confirm is fixed. But you have to make sure on the system the version of Networkx is at max 1.11 (not 2.x).

The problem was that the patch of course does not fix a system where networkx was already upgraded ! :)

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.