Image building tools for OpenStack
Go to file
Ian Wienand f60dd38482 Add timestamp output filter
This adds a devstack-inspired output filter to standardise
timestamping.

Currently, python tools timestamp always (timestamp setup in
logging_config.py) but all the surrounding bash does not.

We have extra timestamps added in run_functests.sh for our own
purposes to get the bash timestamps; but this ends up giving us
double-timestamps for the python bits.  Additionally, callers such as
nodepool capture our output and put their own timestamps on it, and
again have the double-timestamps.

This uses a lightly modified outfilter.py from devstack to standardise
this.

All output is run through this filter, which will timestamp it.  I
have removed the places where we double-timestamp -- logging_config.py
and the prefix in dib-run-parts.

An env option is added to turn timestamps off completely (does not
seem worth taking up a command-line option for).  For callers like
nodepool, they can set this and will just have their own timestamps as
they collect the lines.

Since all logging is going through outfilter, it's easy to add a
--logfile option.  I think this will be quite handy; personally I'm
always redirecting dib runs to files for debugging.

I've also added a "quiet" option.  I think this could be useful in
run_tests.sh if we were to start logging the output of each test to
individual files.  This would be much easier to deal with than the
very large log files we get (especially if we wanted to turn on
parallel running...)

Change-Id: I202e1cb200bde17f6d7770cf1e2710bbf4cca64c
2017-06-16 15:58:50 +10:00
bin Remove use of 'which'. 2017-05-19 12:43:36 -07:00
diskimage_builder Add timestamp output filter 2017-06-16 15:58:50 +10:00
doc Remove ccache 2017-05-31 08:28:09 +10:00
releasenotes Add timestamp output filter 2017-06-16 15:58:50 +10:00
tests Add timestamp output filter 2017-06-16 15:58:50 +10:00
.gitignore Use sphinx warning-is-error 2017-03-14 14:49:49 +11:00
.gitreview Update stackforge references to openstack 2013-08-17 22:58:26 -04:00
.testr.conf Fix coverage report 2017-01-18 16:14:01 +11:00
LICENSE Fix copyrights for HP work. 2012-11-15 16:20:32 +13:00
README.rst Use https in docs links 2017-06-05 22:54:23 +07:00
babel.cfg Make it possible for openstack-CI to run tests 2013-02-04 22:26:17 -08:00
bindep.txt Use https in docs links 2017-06-05 22:54:23 +07:00
pylint.cfg Refactor: use lazy logging 2017-05-30 14:39:58 +10:00
requirements.txt Use networkx for digraph 2017-05-26 11:42:10 +10:00
setup.cfg Add timestamp output filter 2017-06-16 15:58:50 +10:00
setup.py Updated from global requirements 2017-03-13 19:30:19 +00:00
test-requirements.txt Updated from global requirements 2017-06-06 12:13:28 +00:00
tox.ini Add env var to dump config graph 2017-06-08 05:04:58 +00: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=trusty disk-image-create -o ubuntu-trusty.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.