Skip to content
Snippets Groups Projects
Commit 174e65ce authored by Eesaan Atluri's avatar Eesaan Atluri
Browse files

Merge branch 'develop' into feat-subscribe-mail-lists

parents 1bb3b2b5 9877c0ba
No related branches found
No related tags found
6 merge requests!147Merge previous default branch feat-cod-rmq into main,!85kill nginx process running under user from login node,!51Fix acct create wait,!39WIP:Feat cod rmq,!38WIP: Feat cod rmq,!30Feat subscribe mail lists
...@@ -3,14 +3,22 @@ import sys ...@@ -3,14 +3,22 @@ import sys
import rc_util import rc_util
if len(sys.argv) < 2: if len(sys.argv) < 2:
print("Usage: {} USERNAME [FULL_NAME] [REASON]".format(sys.argv[0]), file=sys.stderr) print("Usage: {} USERNAME [EMAIL] [FULL_NAME] [REASON]".format(sys.argv[0]), file=sys.stderr)
exit(1) exit(1)
domain = 'uab.edu'
user_name = sys.argv[1] user_name = sys.argv[1]
full_name = sys.argv[2] if len(sys.argv) >= 3 else '' email = sys.argv[2] if len(sys.argv) >= 3 else ''
reason = sys.argv[3] if len(sys.argv) >= 4 else '' full_name = sys.argv[3] if len(sys.argv) >= 4 else ''
reason = sys.argv[4] if len(sys.argv) >= 5 else ''
rc_util.add_account(user_name, full=full_name, reason=reason) if email == '':
if '@' in user_name:
email = user_name
else:
email = user_name + '@' + domain
rc_util.add_account(user_name, email=email, full=full_name, reason=reason)
print("Account requested for user: {}".format(user_name)) print("Account requested for user: {}".format(user_name))
print("Waiting for confirmation...") print("Waiting for confirmation...")
......
import logging
import argparse
from rc_rmq import RCRMQ from rc_rmq import RCRMQ
import json import json
rc_rmq = RCRMQ({'exchange': 'RegUsr', 'exchange_type': 'topic'}) rc_rmq = RCRMQ({'exchange': 'RegUsr', 'exchange_type': 'topic'})
tasks = {'ohpc_account': None, 'ood_account': None, 'slurm_account': None} tasks = {'ohpc_account': None, 'ood_account': None, 'slurm_account': None}
logger_fmt = '%(asctime)s [%(module)s] - %(message)s'
def add_account(username, full='', reason=''): def add_account(username, email, full='', reason=''):
rc_rmq.publish_msg({ rc_rmq.publish_msg({
'routing_key': 'request.' + username, 'routing_key': 'request.' + username,
'msg': { 'msg': {
"username": username, "username": username,
"email": email,
"fullname": full, "fullname": full,
"reason": reason "reason": reason
} }
...@@ -43,3 +47,26 @@ def consume(username, callback=worker, debug=False): ...@@ -43,3 +47,26 @@ def consume(username, callback=worker, debug=False):
rc_rmq.disconnect() rc_rmq.disconnect()
return { 'success' : True } return { 'success' : True }
def get_args():
# Parse arguments
parser = argparse.ArgumentParser()
parser.add_argument('-v', '--verbose', action='store_true', help='verbose output')
parser.add_argument('-n', '--dry-run', action='store_true', help='enable dry run mode')
return parser.parse_args()
def get_logger(args=None):
if args is None:
args = get_args()
logger_lvl = logging.WARNING
if args.verbose:
logger_lvl = logging.DEBUG
if args.dry_run:
logger_lvl = logging.INFO
logging.basicConfig(format=logger_fmt, level=logger_lvl)
return logging.getLogger(__name__)
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment