Skip to content

Latest commit

 

History

History
63 lines (41 loc) · 1.82 KB

BUILD.rst

File metadata and controls

63 lines (41 loc) · 1.82 KB

Instructions to create releases

Preconditions

Operating system and Python requirements

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.

Python dependencies

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

Using Invoke

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.

Creating release

  1. Test that everything works with Python 2 and Python 3. Exactly one test ought to fail:

    python2 -m robot .
    python3 -m robot .
    
  2. 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
    
  3. Regenerate also library docs if needed:

    inv kw-docs
    
  4. Move regenerated log, report and library doc to docs:

    inv move-docs
    
  5. If README.rst has changed, generate project documentation based on it:

    inv project-docs