configurationengine/doc/cli/initvariant.rst
author m2lahtel
Tue, 10 Aug 2010 14:29:28 +0300
changeset 3 e7e0ae78773e
permissions -rw-r--r--
ConE 1.2.11 release

ConE initvariant action
=======================

The *initvariant* action is intended for merging a variant CPF back into the
configuration project. It is basically a special-purpose merge action that
merges all customer variant layers (layers with ``custvariant*`` in their path
name) and renames them based on the given variant ID and variant name
(``custvariant_<id>_<name>``).

Examples
--------

**Merging a variant CPF using variant ID and name**::

    > cd configproject_root
    > cone initvariant -r variant.cpf --variant-id 123 --variant-name foobar

This will merge customer variant layers into the project. The configuration
root into which they are merged is also determined automatically based on the
supplied information. The automatically determined root file is named
``<product-name>_custvariant_<variant-id>_<variant-name>_root.confml``,
and the merged layers will have ``custvariant_<variant-id>_<variant-name>``
as part of their layer path.
E.g. the layer ``familyx/productx/customer/custvariant/configurator/root.confml``
is merged as ``familyx/productx/customer/custvariant_123_foobar/configurator/root.confml``
and the configuration root would be ``productx_custvariant_123_foobar_root.confml``.

**Merging a variant CPF into a specific root file**::

    > cd configproject_root
    > cone initvariant -r variant.cpf --variant-id 123 -c foovariant.confml

This does basically the same thing as the previous command, except that the
configuration root into which the merge is done is explicitly specified. Also,
the optional argument ``--variant-name`` is missing, so the layers will be merged
as ``custvariant_<variant-id>``.

Options list
------------
  --version             show program's version number and exit
  -h, --help            show this help message and exit
  --print-settings      Print all the default settings from the current
                        setting container.
  --print-supported-impls
                        Print all supported ImplML XML namespaces and file
                        extensions.
  --print-runtime-info  Print runtime information about ConE.
  -v LEVEL, --verbose=LEVEL
                        Print error, warning and information on system out.
                        Possible choices: Default is 3.
                        NONE (all)    0
                        CRITICAL      1
                        ERROR         2
                        WARNING       3
                        INFO          4
                        DEBUG         5
  --log-file=FILE       Location of the used log file. Default is 'cone.log'
  --log-config=FILE     Location of the used logging configuration file.
                        Default is 'logging.ini'
  --username=USERNAME   Username for webstorage operations. Not needed for
                        filestorage or cpf storage. If the username
                        is not given, the tool will use the logged in
                        username. Example: cone export -p webstorage_url -r .
                        -c sample.confml --username=admin --password=abc123.
  --password=PASSWORD   Password for webstorage operations. Not needed for
                        filestorage or cpf storage. If the password
                        is not given, the tool will prompt for password if
                        needed.
  -p STORAGE, --project=STORAGE
                        Defines the location of current project. Default is
                        the current working directory.

  Initvariant options:
    The initvariant action is intended for merging a variant CPF back into
    the configuration project. It merges all customer variant layers
    (layers with custvariant* in their path name) and renames them based
    on the variant ID and variant name ("custvariant_<id>_<name>").

    -c CONFIG, --configuration=CONFIG
                        Defines the name of the target configuration. By
                        default the configuration file name is composed of
                        product name, variant ID and variant name like this:
                        <product>_custvariant_<id>_<name>_root.confml
    -r STORAGE, --remote=STORAGE
                        Defines the location of remote storage (CPF)
    -s CONFIG, --sourceconfiguration=CONFIG
                        Defines the name of the remote configuration inside
                        the remote storage. Default is the active root of the
                        remote project.
    --variant-id=VARIANT_ID
                        Variant ID, mandatory.
    --variant-name=VARIANT_NAME
                        Variant name, optional.
    --product-name=PRODUCT_NAME
                        Product name, taken from the configuration data by
                        default (i.e. defaults to '${imakerapi.productname}')
    --set-active-root   Set the newly created (or merged) configuration root
                        as the project's active root after the merge is done.