ecflow.AvisoAttr

class ecflow.AvisoAttr

Bases: instance

An aviso attribute, assigned to a node, represents an external trigger holding the node queued untilan Aviso notification matching the attribute configuration is detected.

Although aviso attributes can be set at any level (Suite, Family, Task), it only makes sense to assign aviso attributes to tasks, and only one aviso attribute per node is allowed.

Constructors:

AvisoAttr(name, listener) (1)
AvisoAttr(name, listener, url)
AvisoAttr(name, listener, url, schema)
AvisoAttr(name, listener, url, schema, polling)
AvisoAttr(name, listener, url, schema, polling, auth)
 with:
   string name: The Aviso attribute name
   string listener: The Aviso listener configuration (in JSON format)
   string url: The URL used to contact the Aviso server
   string schema: The path to the Aviso schema
   string polling: The polling interval used to contact the Aviso server
   string auth: The path to the Aviso Authentication credentials

Note: Default values, based on %ECF_AVISO_…% variables, will be used for the calls where the parameters url, schema, polling, and auth are not provided

We suggest to specify %ECF_AVISO_***% variables once (at suite level), and then create the Aviso attributes passing just the name and the listener definition as per call (1).

Note

The listener parameter is expected to be a valid single line JSON string, enclosed in single quotes. As a convenience, missing surrounding single quotes are detected and will automatically be added.

Details regarding the format of listener are in the section describing the aviso attribute.

Usage:

t1 = Task('t1', AvisoAttr('name', "'{...}'"))

t2 = Task('t2')
t2.add_aviso('name', "'{...}'", 'http://aviso.com', '60', '/path/to/auth')

The parameters url, schema, polling, and auth are optional

AvisoAttr.auth((AvisoAttr)arg1) str :

Returns the path to Authentication credentials used to contact the Aviso server

AvisoAttr.listener((AvisoAttr)arg1) str :

Returns the Aviso listener configuration

AvisoAttr.name((AvisoAttr)arg1) str :

Returns the name of the Aviso attribute

AvisoAttr.polling((AvisoAttr)arg1) str :

Returns polling interval used to contact the Aviso server

AvisoAttr.schema((AvisoAttr)arg1) str :

Returns the path to the schema used to contact the Aviso server

AvisoAttr.url((AvisoAttr)arg1) str :

Returns the URL used to contact the Aviso server