Generating releases has only been tested on Linux, but it ought to work the same way also on OSX and other unixes. Creating releases is only supported with Python 3.6 or newer.
The pip
and invoke
commands below are also expected to run on Python
3.6+. Alternatively, it's possible to use the python3.6 -m pip
approach
to run these commands.
Many steps are automated using the generic Invoke tool with a help by our rellu utilities, but also other tools and modules are needed. A pre-condition is installing all these, and that's easiest done using pip and the provided requirements.txt file:
pip install -r requirements.txt
Invoke tasks are defined in the tasks.py file and they are executed from the command line like:
inv[oke] task [options]
Run invoke
without arguments for help. All tasks can be listed using
invoke --list
and each task's usage with invoke --help task
.
Test that everything works with Python 2 and Python 3. Exactly one test ought to fail:
python2 -m robot . python3 -m robot .
Regenerate log and report if needed using the command documented in wiki:
robot --name Robot --loglevel DEBUG keyword_driven.robot data_driven.robot gherkin.robot
Regenerate also library docs if needed:
inv kw-docs
Move regenerated log, report and library doc to docs:
inv move-docs
If README.rst has changed, generate project documentation based on it:
inv project-docs