Skip to content

Commit

Permalink
user_update: Fix mistake in log messages in quota
Browse files Browse the repository at this point in the history
Add option to check if current group is not the requested change
  • Loading branch information
astrochun committed Jul 24, 2020
1 parent e0474f4 commit 6699787
Showing 1 changed file with 73 additions and 67 deletions.
140 changes: 73 additions & 67 deletions requiam/user_update
Original file line number Diff line number Diff line change
Expand Up @@ -128,88 +128,94 @@ if __name__ == '__main__':

# Portal update
if vargs['portal'] != '(unset)':
# First remove from current portal group
if current_dict['portal'] == '':
log.info("Currently not assigned to a portal. Skipping removal")
if current_dict['portal'] == vargs['portal']:
log.warning("Specified portal identical to current portal. Skipping!")
else:
log.info(f"Removing from current {current_dict['portal']} portal")
# First remove from current portal group
if current_dict['portal'] == '':
log.info("Currently not assigned to a portal. Skipping removal")
else:
log.info(f"Removing from current {current_dict['portal']} portal")

d = grouper_delta_user(current_dict['portal'], 'portal',
vargs['netid'], user_uaid, 'remove',
grouper_dict, delta_dict, log)

log.info(f"ldap and grouper have {len(d.common)} members in common")
log.info(f"synchronization will drop {len(d.drops)} entries from Grouper {current_dict['portal']} group")
log.info(f"synchronization will add {len(d.adds)} entries to Grouper {current_dict['portal']} group")

if args.sync:
log.info('synchronizing ...')
d.synchronize()
else:
log.info('dry run, not performing synchronization')

# Add to new portal group
if vargs['portal'] != 'root':
log.info(f"Adding to {vargs['portal']} portal")

d = grouper_delta_user(vargs['portal'], 'portal',
vargs['netid'], user_uaid, 'add',
grouper_dict, delta_dict, log)

log.info(f"ldap and grouper have {len(d.common)} members in common")
log.info(f"synchronization will drop {len(d.drops)} entries to Grouper {vargs['portal']} group")
log.info(f"synchronization will add {len(d.adds)} entries to Grouper {vargs['portal']} group")

if args.sync:
log.info('synchronizing ...')
d.synchronize()

# Update manual CSV file
mo.update_dataframe(vargs['netid'], user_uaid, vargs['portal'], 'portal')
else:
log.info('dry run, not performing synchronization')
else:
# Remove entry from manual CSV file for 'root' case
mo.update_dataframe(vargs['netid'], user_uaid, vargs['portal'], 'portal')

d = grouper_delta_user(current_dict['portal'], 'portal',
vargs['netid'], user_uaid, 'remove',
grouper_dict, delta_dict, log)
# Quota update
if vargs['quota'] != '(unset)':
if current_dict['quota'] == vargs['quota']:
log.warning("Specified quota identical to current quota. Skipping!")
else:
# First remove from current quota group
if current_dict['quota'] == '':
log.info("Currently not assigned to a quota. Skipping removal")
else:
log.info(f"Removing from current {current_dict['quota']} quota")

log.info(f"ldap and grouper have {len(d.common)} members in common")
log.info(f"synchronization will drop {len(d.drops)} entries from Grouper {current_dict['portal']} group")
log.info(f"synchronization will add {len(d.adds)} entries to Grouper {current_dict['portal']} group")
d = grouper_delta_user(current_dict['quota'], 'quota',
vargs['netid'], user_uaid, 'remove',
grouper_dict, delta_dict, log)

if args.sync:
log.info('synchronizing ...')
d.synchronize()
else:
log.info('dry run, not performing synchronization')
log.info(f"ldap and grouper have {len(d.common)} members in common")
log.info(f"synchronization will drop {len(d.drops)} entries from Grouper {current_dict['quota']} group")
log.info(f"synchronization will add {len(d.adds)} entries to Grouper {current_dict['quota']} group")

if args.sync:
log.info('synchronizing ...')
d.synchronize()
else:
log.info('dry run, not performing synchronization')

# Add to new portal group
if vargs['portal'] != 'root':
log.info(f"Adding to {vargs['portal']} portal")
# Add to new quota group
log.info(f"Updating {vargs['quota']} quota")

d = grouper_delta_user(vargs['portal'], 'portal',
d = grouper_delta_user(vargs['quota'], 'quota',
vargs['netid'], user_uaid, 'add',
grouper_dict, delta_dict, log)

log.info(f"ldap and grouper have {len(d.common)} members in common")
log.info(f"synchronization will drop {len(d.drops)} entries to Grouper {vargs['portal']} group")
log.info(f"synchronization will add {len(d.adds)} entries to Grouper {vargs['portal']} group")
log.info(f"synchronization will drop {len(d.drops)} entries from Grouper {vargs['quota']} group")
log.info(f"synchronization will add {len(d.adds)} entries to Grouper {vargs['quota']} group")

if args.sync:
log.info('synchronizing ...')
d.synchronize()

# Update manual CSV file
mo.update_dataframe(vargs['netid'], user_uaid, vargs['portal'], 'portal')
mo.update_dataframe(vargs['netid'], user_uaid, vargs['quota'], 'quota')
else:
log.info('dry run, not performing synchronization')
else:
# Remove entry from manual CSV file for 'root' case
mo.update_dataframe(vargs['netid'], user_uaid, vargs['portal'], 'portal')

# Quota update
if vargs['quota'] != '(unset)':
# First remove from current quota group
if current_dict['quota'] == '':
log.info("Currently not assigned to a quota. Skipping removal")
else:
log.info(f"Removing from current {current_dict['quota']} quota")

d = grouper_delta_user(current_dict['quota'], 'quota',
vargs['netid'], user_uaid, 'remove',
grouper_dict, delta_dict, log)

log.info(f"ldap and grouper have {len(d.common)} members in common")
log.info(f"synchronization will drop {len(d.drops)} entries from Grouper {current_dict['quota']} group")
log.info(f"synchronization will add {len(d.adds)} entries to Grouper {current_dict['quota']} group")

if args.sync:
log.info('synchronizing ...')
d.synchronize()
else:
log.info('dry run, not performing synchronization')

# Add to new quota group
log.info(f"Updating {vargs['quota']} quota")

d = grouper_delta_user(vargs['quota'], 'quota',
vargs['netid'], user_uaid, 'add',
grouper_dict, delta_dict, log)

log.info(f"ldap and grouper have {len(d.common)} members in common")
log.info(f"synchronization will drop {len(d.drops)} entries from Grouper {vargs['quota']} group")
log.info(f"synchronization will add {len(d.adds)} entries to Grouper {vargs['quota']} group")

if args.sync:
log.info('synchronizing ...')
d.synchronize()

# Update manual CSV file
mo.update_dataframe(vargs['netid'], user_uaid, vargs['quota'], 'quota')
else:
log.info('dry run, not performing synchronization')

0 comments on commit 6699787

Please sign in to comment.