Image building tools for OpenStack
Go to file
Ian Wienand b71d1c60d2 package-installs : allow a list of parameters
The change Ia6f10741fa6be24b11d6991c8a6b6e07951ff68d introduced having
"when:" as a list of values.  However, this was actually not
sufficient to express the logic required for arm64/x86_64/xenial
kernel matching we wanted.

Because the package name is a key, we can't have multiple entires in
the package-map YAML files.  This means we can't do more advanced
matching and thus we need to be able to match through multiple
parameters.  Similar to Ia6f10741fa6be24b11d6991c8a6b6e07951ff68d we
modify the matching rules to allow a list.

A an example of using this is provided in the README.rst, and this
same example worked through by the unit tests.

This also slightly updates the matching logic to be more sequential.
After each check we either continue on or log the failure and continue
to the next check (rather than set a list of flags then check that at
the end).  This makes it much easier to understand what is being
matched in the logging output from the tool.

Change-Id: Idff7b067ad4255e6fc4138f7eff313a81b75c8ba
2020-05-27 06:17:57 +10:00
.zuul.d ubuntu-minimal: Add Ubuntu Focal test build 2020-05-21 14:03:54 +10:00
bin dib-lint: use yamllint to parse YAML files 2020-05-26 12:04:09 +10:00
contrib yum-minimal : update mirrors for Centos 8 2019-10-03 00:22:05 +00:00
diskimage_builder package-installs : allow a list of parameters 2020-05-27 06:17:57 +10:00
doc Remove Trusty testing 2020-04-23 10:00:13 +10:00
playbooks functests: use ensure-virtualenv 2020-04-28 10:29:26 +10:00
releasenotes ubuntu-minimal: Add Ubuntu Focal test build 2020-05-21 14:03:54 +10:00
roles yum-minimal : update mirrors for Centos 8 2019-10-03 00:22:05 +00:00
tests run_functests: handle build without tar 2020-03-31 08:56:26 +11:00
.gitignore Import legacy playbooks 2017-10-17 10:41:30 +11:00
.gitreview OpenDev Migration Patch 2019-04-19 19:26:30 +00:00
.testr.conf package-installs: provide for skip from env var 2018-11-30 10:02:47 +11:00
.yamllint dib-lint: use yamllint to parse YAML files 2020-05-26 12:04:09 +10:00
LICENSE Fix copyrights for HP work. 2012-11-15 16:20:32 +13:00
README.rst Remove Trusty testing 2020-04-23 10:00:13 +10:00
bindep.txt bindep: remove lsb-release 2020-03-16 10:33:40 +11:00
lower-constraints.txt Remove Babel and any signs of translations 2020-04-17 17:05:15 +02:00
pylint.cfg Refactor: use lazy logging 2017-05-30 14:39:58 +10:00
requirements.txt Remove Babel and any signs of translations 2020-04-17 17:05:15 +02:00
setup.cfg Remove Babel and any signs of translations 2020-04-17 17:05:15 +02:00
setup.py Updated from global requirements 2017-03-13 19:30:19 +00:00
test-requirements.txt dib-lint: use yamllint to parse YAML files 2020-05-26 12:04:09 +10:00
tox.ini Uncap hacking 2020-02-24 10:34:46 +11:00

README.rst

Image building tools for OpenStack

diskimage-builder is a flexible suite of components for building a wide-range of disk images, filesystem images and ramdisk images for use with OpenStack.

This repository has the core functionality for building such images, both virtual and bare metal. Images are composed using elements; while fundamental elements are provided here, individual projects have the flexibility to customise the image build with their own elements.

For example:

$ DIB_RELEASE=bionic disk-image-create -o ubuntu-bionic.qcow2 vm ubuntu

will create a bootable Ubuntu Trusty based qcow2 image.

diskimage-builder is useful to anyone looking to produce customised images for deployment into clouds. These tools are the components of TripleO that are responsible for building disk images. They are also used extensively to build images for testing OpenStack itself, particularly with nodepool. Platforms supported include Ubuntu, CentOS, RHEL and Fedora.

Full documentation, the source of which is in doc/source/, is published at:

Copyright

Copyright 2012 Hewlett-Packard Development Company, L.P. Copyright (c) 2012 NTT DOCOMO, INC.

All Rights Reserved.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.