diskimage-builder/setup.cfg

52 lines
1.8 KiB
INI
Raw Normal View History

[metadata]
name = diskimage-builder
summary = Golden Disk Image builder.
description_file =
README.rst
author = OpenStack
author_email = openstack-discuss@lists.openstack.org
license: Apache License (2.0)
home_page = https://docs.openstack.org/diskimage-builder/latest/
classifier =
Development Status :: 5 - Production/Stable
License :: OSI Approved :: Apache Software License
Operating System :: POSIX :: Linux
Programming Language :: Python :: 3
Programming Language :: Python :: 3.6
Programming Language :: Python :: 3.7
Programming Language :: Python :: 3.8
Programming Language :: Python :: 3.9
Programming Language :: Python :: 3.10
Environment :: Console
python_requires = >=3.6
[files]
packages =
diskimage_builder
# ramdisk-image-create is a symlink which becomes a
# real file on install; see lp bug #1212482
scripts =
bin/dib-lint
data_files =
share/diskimage-builder/scripts = scripts/*
[entry_points]
console_scripts =
disk-image-create = diskimage_builder.disk_image_create:main
ramdisk-image-create = diskimage_builder.disk_image_create:main
A new diskimage-builder command for yaml image builds The `diskimage-builder` command provides a yaml file based interface to `disk-image-create` and `ramdisk-image-create`. Every argument to these scripts has a YAML equivalent. The command has the following features: - Environment values can be provided from the calling environment as well as YAML - All arguments are validated with jsonschema in the most appropriate YAML type - Schema is self-documenting and printed when running with --help - Multiple YAML files can be specified and each file can have multiple images defined - Entries with duplicate image names will be merged into a single image build, with attributes overwritten, elements appended, and environment values updated/overwritten. A missing image name implies the same image name as the previous entry. - --dry-run and --stop-on-failure flags A simple YAML defintion would resemble: - imagename: centos-minimal checksum: true install-type: package elements: [centos, vm] - imagename: ironic-python-agent elements: - ironic-python-agent-ramdisk - extra-hardware The TripleO project has managed image build options with YAML files and it has proved useful having git history and a diff friendly format, specifically for the following situations: - Managing differences between distros (centos, rhel) - Managing changes in major distro releases (centos-8, centos-9-stream) - Managing the python2 to python3 transition, within and across major distro releases Now that the TripleO toolchain is being retired this tool is being proposed to be used for the image builds of TripleO's successor, as well as the rest of the community. Subsequent commits will add documentation and switch some tests to using `diskimage-builder`. Change-Id: I95cba3530d1b1c6c52cf547338762e33738f7225
2023-03-03 02:34:25 +00:00
diskimage-builder = diskimage_builder.diskimage_builder:main
diskimage_builder.block_device.plugin =
local_loop = diskimage_builder.block_device.level0.localloop:LocalLoop
partitioning = diskimage_builder.block_device.level1.partitioning:Partitioning
lvm = diskimage_builder.block_device.level1.lvm:LVMPlugin
mkfs = diskimage_builder.block_device.level2.mkfs:Mkfs
mount = diskimage_builder.block_device.level3.mount:Mount
fstab = diskimage_builder.block_device.level4.fstab:Fstab
# unit test extensions
diskimage_builder.block_device.plugin_test =
test_a = diskimage_builder.block_device.tests.plugin.test_a:TestA
test_b = diskimage_builder.block_device.tests.plugin.test_b:TestB