bootstrap-vz/bootstrapvz/plugins/commands
2018-02-25 04:12:24 +00:00
..
__init__.py fix pylint W0403(relative-import) 2018-02-25 04:12:24 +00:00
manifest-schema.yml Fix mentions to the commands plugin name 2015-05-02 13:12:33 -03:00
README.rst Update doc 2017-09-11 16:45:31 +02:00
tasks.py commands plugin: Run copy files before running commands 2017-08-02 15:42:13 +02:00

Commands
--------------

This plugin allows you to run arbitrary commands during the bootstrap process.
The commands are run at an indeterminate point *after* packages have been
installed, but *before* the volume has been unmounted.

Settings
~~~~~~~~

-  ``commands``: A list of lists containing strings. Each top-level item
   is a single command, while the strings inside each list comprise
   parts of a command. This allows for proper shell argument escaping.
   To circumvent escaping, simply put the entire command in a single
   string, the command will additionally be evaluated in a shell
   (e.g. globbing will work).
   In addition to the manifest variables ``{root}`` is also available.
   It points at the root of the image volume.
   ``chroot {root}`` should be used for the command to run in the images' environment.
   ``required``
   ``manifest vars``

Example
~~~~~~~

Create an empty `index.html` in `/var/www` and delete all locales except english.

.. code-block:: yaml

  commands:
    commands:
      - [touch, '{root}/var/www/index.html']
      - ['chroot {root} rm -rf /usr/share/locale/[^en]*']