Headless Client
planta_headless.py
receives all parameters via command line, except for the authentication secret which is read from a file for security reasons. This file has to contain the PLANTA user's password and is supposed to be readable only by the machine user(s) eligible for launching jobs in the name of that PLANTA user. Confining such auth secret files within the machine user's
$HOME
directory and applying octal permissions
0400
should be sufficient to provide a reasonable level of security, while any further means of access control at the administrator's disposal is encouraged.
The headless client is mostly self-explanatory, that is, invoking with the parameter
--help
will display usage information.
# planta_headless.py --version
planta_headless.py 39 Mars
# planta_headless.py --help
Usage: planta_headless.py [options]
Options:
--version show program's version number and exit
-h, --help show this help message and exit
-q, --quiet suppress all output (default)
-v, --verbose increase verbosity level with each occurrence: info
messages, XML sent, XML received
Connection settings:
-s HOST:PORT, --service=HOST:PORT
service to connect to
Login options:
-u USER_NAME, --user=USER_NAME
name of the user to log on to the PLANTA system
-a TYPE, --auth_type=TYPE
type of authentication used to log on to the PLANTA
system: "osuser" or "challenge"
-p SECRET_FILE, --secret=SECRET_FILE
file containing the authentication secret
Job specifications:
-m MOD_ID, --module=MOD_ID
subsequent job is the ID of a module to invoke on the
server
-f PYTHON_FILE, --py_file=PYTHON_FILE
subsequent job is a python file to execute on the
server
-c PYTHON_CODE, --py_code=PYTHON_CODE
subsequent job is a python code snippet to execute on
the server