keg is a command line tool that creates a kiwi image description based on description snippets in a given GIT repository.
keg is written in Python, it uses tox to setup a development environment for the desired Python version. Make sure the Python development headers are installed (e.g. python36-devel). KIWI uses jing for detailed error reporting in case schema validation fails. This cannot be installed by pip, so you may want also make sure this is installed on your system.
Currently, there are 5 targets for tox:
- check: for code quality and integrity
- devel: for development
- doc: for building man pages
- unit_py3_10: to run unit tests with Python version set to 3.10
- unit_py3_6: to run unit tests with Python version set to 3.6
The following procedure describes how to create the development environment:
Let tox create the virtual environment(s):
$ tox -e devel
Activate the virtual environment
$ source .tox/3/bin/activate
Install requirements inside the virtual environment:
$ pip install -U pip setuptools $ pip install -r .virtualenv.dev-requirements.txt
Let setuptools create/update your entrypoints
$ ./setup.py develop
Once the development environment is activated and initialized with the project required Python modules, you are ready to work.
In order to leave the development mode just call:
$ deactivate
To resume your work, change into your local Git repository and run source .tox/3/bin/activate again. Skip step 3 and 4 as the requirements are already installed.