GUEST PLUGIN README
===================

[![pipeline status](https://gitlab.obspm.fr/ROC/Pipelines/Plugins/GUEST/badges/develop/pipeline.svg)](https://gitlab.obspm.fr/ROC/Pipelines/Plugins/GUEST/pipelines)


INTRODUCTION
-------------

This directory contains the source files of the RPW Gse data ReqUESTer (GUEST), a plugin used to handle data from GSE for RPW/Solar Orbiter (MEB GSE, ADS GSE).

GUEST is designed to be run in an instance of the ROC Ground Test SGSE (RGTS).

GUEST is developed with and run under the POPPY framework.

CONTENT
--------

::

    roc/                    plugin source files
    .editorconfig           EditorConfig config file
    .gitignore              .gitignore file
    .pre-commit-config.yaml pre-commit config file
    bump_descriptor.py      Python script to synchronize roc/film/descriptor.json content with the pyproject.toml data
    poetry.lock             used by poetry package
    pyproject.toml          pyproject.toml file (PEP518)
    README.rst              readme file
    setup.py                setup.py (required for editable mode. Automatically generated by dephell)

HOWTO
------

How to install the plugin?
..........................

The roc.guest plugin is designed to be installed and run inside an instance of the ROC RGTS pipeline.
However it can be installed manually, by entering:

.. code::

    python -m pip install /path_to_plugin

N.B. To install the plugin in editable mode, run the command:

.. code::

    python -m pip install -e /path_to_plugin

The editable mode can only used if the setup.py file exits. Use the dephell module to generate it from the pyproject.toml file (dephell deps convert).

What to do before committing a new version of the plugin?
...........................................................

First update metadata (version) in the plugin `pyproject.toml` file.

Then be sure the descriptor.json and the setup.py files are up-to-date.

To update the descriptor file, just run the command

.. code::

    python bump_descriptor.py -m <message>

Where `<message>` is a change log for new version.

How to call the plugin?
..........................

The roc.guest plugin can only by called from a POPPy-like pipeline (i.e, RGTS).

The main command is

.. code::

    python manage.py guest

Notes:

* The :code:`manage.py` file is inside the pipeline root directory (depending of the pipeline installation the alias :code:`pop` can be also used).
* The command below will return the help message if no sub-command is passed
