This commit fixes several issue connected with the use of the <include> directive: First and foremost the XSLT chain was broken in a way that the include XSLT in combination with the PrettyPrinter XSLT were called not in the chain of stylesheets but together. This results in XML descriptions which duplicated the content and went invalid Another change is, when the include XSLT is called in the chain. This commit moves it to become the very first processing instruction such that the included data is part of all subsequent XSLT stylesheets. This also allows to use older schema versions in included XML data and they get automatically converted through the chain of XSLT stylesheets. Last change is the evaluation of the from= attribute value. This value is now interpreted as an URI. Currently only local URIs are supported. The reason to do this is because XSLT when processing a document resolves relative paths according to the file path of the master document. As kiwi does not change the original content that path with will be a /var/tmp location if one of the XSLT stylesheets were used. The documentation for this change was updated as well
111 lines
2.6 KiB
ReStructuredText
111 lines
2.6 KiB
ReStructuredText
.. _image-description:
|
|
|
|
Image Description
|
|
=================
|
|
|
|
.. note::
|
|
|
|
This document explains the toplevel structure of the
|
|
{kiwi} image description document for version |version|
|
|
|
|
.. toctree::
|
|
:maxdepth: 1
|
|
|
|
image_description/elements.rst
|
|
|
|
|
|
Main Root
|
|
---------
|
|
|
|
.. code:: xml
|
|
|
|
<image/>
|
|
|
|
The mandatory :ref:`sec.image` element represents the root (top-level element) of
|
|
an image description. All other elements must be descendants of this
|
|
element. There can be only one `image` element.
|
|
|
|
Image Identity
|
|
--------------
|
|
|
|
.. code:: xml
|
|
|
|
<description/>
|
|
|
|
The mandatory :ref:`sec.description` element contains information about the author,
|
|
contact, license and the specification about the use case of this
|
|
image. All data together forms the identity card of the image.
|
|
There can be only one `description` element
|
|
|
|
Image Preferences
|
|
-----------------
|
|
|
|
.. code:: xml
|
|
|
|
<preferences/>
|
|
|
|
The mandatory :ref:`sec.preferences` element contains information to classify
|
|
the image and to describe the layout. All data about the image type, its
|
|
version, the partition layout and much more is specified here. There can be
|
|
multiple `preferences` elements
|
|
|
|
Image Software Sources
|
|
----------------------
|
|
|
|
.. code:: xml
|
|
|
|
<repository/>
|
|
|
|
The mandatory :ref:`sec.repository` element contains information where to find the
|
|
software packages that are used to build the image. There can be
|
|
multiple `repository` elements
|
|
|
|
Image Content Setup
|
|
-------------------
|
|
|
|
.. code:: xml
|
|
|
|
<packages/>
|
|
|
|
The mandatory :ref:`sec.packages` element contains information to list which
|
|
software should be installed from the configured repositories
|
|
into the image. Software can be defined as names for packages,
|
|
collections, archives or products. There can be multiple
|
|
`packages` elements
|
|
|
|
Image Users
|
|
-----------
|
|
|
|
.. code:: xml
|
|
|
|
<users/>
|
|
|
|
The optional :ref:`sec.users` element contains information about system users
|
|
to be created inside of the image. There can be multiple `users`
|
|
elements
|
|
|
|
Image Namespace
|
|
---------------
|
|
|
|
.. code:: xml
|
|
|
|
<profiles/>
|
|
|
|
The optional :ref:`sec.profiles` element contains information to create one
|
|
or more namespaces to an image description. The namespace can be
|
|
used with any of the above elements and therefore tie them into
|
|
a namespace which can be selected at call time of {kiwi}
|
|
|
|
Image Includes
|
|
--------------
|
|
|
|
.. code:: xml
|
|
|
|
<include from="file://filename.xml"/>
|
|
|
|
The optional :ref:`sec.include` element allows to drop in the contents
|
|
of the specified :file:`filename.xml` file at the place were the `include`
|
|
statement was specified in the document. The `include` statement is
|
|
only allowed as descendant of the root (top-level element) of the
|
|
image description.
|