7446c32197
It has always been a weird thing that dib is a python package, but is totally driven by the disk-image-create script. It creates this strange division that is hard to explain. This moves disk-image-create to a regular python entry-point Currently, this simply exec()s the original disk-image-create script. However, we now have a (private) interface between disk-image-create written in python and the driver shell script. Here's some things we could do, for example: * Argument parsing is generally nicer in Python, and then end result is mostly just setting environment variables to flag different things in the shell script. I could see us moving the argument-parsing into diskimage_builder.disk_image_create:main() and just setting things in os.environ before the exec()). * I7092e1845942f249175933d67ab121188f3511fd sets IMAGE_ELEMENT_YAML in disk-image-create by calling-back to element-info. We can just call element_dependencies.find_all_elements() in here an export is to os.environ before disk-image-create starts. * remove need for ramdisk-image-create symlink by just exporting IS_RAMDISK based on sys.argv[1] value * you could even unit test some of this :) Change-Id: I69ca3d26fede0506a6353c077c69f735c8d84d28 |
||
---|---|---|
.. | ||
elements/fake-os | ||
install_test_deps.sh | ||
README.rst | ||
run_dib_library_tests.sh | ||
run_functests.sh | ||
run_output_format_test.sh |
DIB Testing =========== There are several interfaces for testing various parts of DIB * run_dib_library_tests.sh : run unit-tests for internal diskimage-builder library functions * run_functests.sh : run functional testing provided by elements * run_output_format_test.sh : run a test of image conversion (requires docker)