The structure of the relay agent is straightforward. The main component listens for events on our event bus with the header property 'metadataTo=MyLEAD', and delegates them to the appropriate event handler. Each handler has a reference to the notifier factory and/or workspace manager, responsible for instantiating and invoking the Notifier
and MyLEADAgent
clients.
Actions are taken on these clients, as indicated in the following table:
Event |
Status |
IU/LEAD Client |
Action |
---|---|---|---|
Debug |
|
|
|
Error |
|
|
|
Status |
WORKFLOW SUBMITTED |
|
|
Status |
WORKFLOW CANCELLED |
|
|
Status |
WORKFLOW FAILED |
|
|
Status |
WORKFLOW DONE |
|
|
Status |
NODE PENDING |
|
|
Status |
NODE SUBMITTED |
|
|
Status |
NODE ATTEMPTED |
|
|
Status |
NODE QUEUED |
|
|
Status |
NODE ACTIVE |
|
|
Status |
NODE CANCELLED |
|
|
Status |
NODE FAILED |
|
|
Status |
NODE DONE |
|
|
Progress |
|
|
|
Node |
WORKFLOW |
|
|
Node |
WORKFLOW |
|
|
Node |
NODE |
|
|
Node |
NODE |
|
|
Property |
|
|
|
File |
TRANSFERRED (bulk) |
|
|
File |
CREATED |
|
|
File |
NAMELIST |
|
|
The relay agent is booted with a properties file indicating the appropriate endpoints for WS Event notifications and the MyLEAD Agent service:
#NCSA event bus eventListener.tag.1=loggingListener eventSender.0=tcp://tb1.ncsa.uiuc.edu:61616,ncsa.tools.jms.localevent.JMSLocalEventSender eventReceiver.0=tcp://tb1.ncsa.uiuc.edu:61616,ncsa.tools.jms.localevent.JMSLocalEventReceiver receiveTopic.0=TROLL #IU Message Broker wsmg.broker.url=http://tyr11.cs.indiana.edu:12346/ #loopback=false #MyLEAD agent mylead.agent.url=https://tyr03.cs.indiana.edu:20243/myleadagent?wsdl credential.file=hostcertkey-tb1.ncsa.uiuc.edu.pem trusted.certs.file=trusted_cas.pem fixed.properties.file=fixed.properties dn.properties.file=dn.properties #JDBC gridmap db gridmap.connection.url=jdbc:mysql://localhost/brokerstore gridmap.connection.username=mysql gridmap.connection.password=mysql |
The MyLEAD server security model is GSS; currently, the certificate used for this purpose must be the one obtained through the LEAD portal. Until this mechanism is changed to accept multiple certificates for a given user name, all users wishing to have workflows registered in the MyLEAD Metadata Catalogue must be mapped in a special properties file visible to the relay agent. This mapping is done by hand. In the future, it should be sufficient simply for the agent to access the Workflow Broker's persistent store for the DN associated with the submission.