Redesign RabbitMQ
Ohpc account (uid resolver):
- subscribe pattern request.*
- send out message, uidandgidattached, with routing_keycreate.<username>to other agents ifuidandgidcreate/resolve successfully message body:
{
  "username": "user1010",
  "fullname": "User 1010",
  "reason": "Reason1, 2 and 3",
  "uid": "1234",
  "gid": "1234"
}- send out confirmation with routing_key confirm.<username>message body:
{
  "task": "ohpc_account",
  "success": true // false if task failed
}Ood account:
- subscribe pattern create.*
- send out confirmation with routing_key confirm.<username>message body:
{
  "task": "ood_account",
  "success": true // false if task failed
}Slurm account:
- subscribe pattern create.*
- send out confirmation with routing_key confirm.<username>message body:
{
  "task": "slurm_account",
  "success": true // false if task failed
}Celery Task could be using add_account and consume function defined in rc_util
add_account sent out request message with routint_key request.<username>
consume will subscribe to confirm.<username> to keep tracking status of all tasks.