datetime objects are serialized into xml using simply str() and this
is a slightly different format from ISO8601 in that the date isn't
separated from the time using 'T'.
(However, note that the iso8601 library happily accepts this format)
Add a specific regexp for this format so we can test for it in the
places we know it is used. This also means we can remove the generic
%(timestamp)s regexp.
Note that unlike the isotime and strtime formats, whether this format
includes timezone or microsecond information depends on whether the
datetime object had those fields set. The isotime format always
includes a timezone but not microseconds, whereas the strtime format
never includes a timezone but always includes microseconds.
There are a small number of examples where this format is used in JSON
too - e.g. the instance usage audit log extension pre-serializes its
timestamps by doing:
return dict(period_beginning=str(begin),
period_ending=str(end),
Using a name like 'xmltime' for the timestamp format used in cases
like this actually makes sense - it highlights that the format used
in this case is a weird mistake.
Full context here:
http://lists.openstack.org/pipermail/openstack-dev/2014-April/033971.html
Change-Id: I70f839ac17273ed10078b833aeba308bd5e994e1
OpenStack Nova Documentation README
Included documents:
- developer reference guide(devref)
- man pages
Dependencies
Building this documentation can be done in a regular Nova development
environment, such as the virtualenv created by run_tests.sh
or tools/install_venv.py. A leaner but sufficient
environment can be created by starting with one that is suitable for
running Nova (such as the one created by DevStack) and then using pip to
install oslosphinx.
Building the docs
From the root nova directory:
python setup.py build_sphinx
Building just the man pages
from the root nova directory:
python setup.py build_sphinx -b man
Installing the man pages
After building the man pages, they can be found in
doc/build/man/. You can install the man page onto your
system by following the following steps:
Example for nova-scheduler:
mkdir /usr/local/man/man1
install -g 0 -o 0 -m 0644 doc/build/man/nova-scheduler.1 /usr/local/man/man1/nova-scheduler.1
gzip /usr/local/man/man1/nova-scheduler.1
man nova-scheduler