#
# Purpose: freeze user (cancel user services except email), or unfreeze user.
#
-# Usage (RUN AS _ADMIN USER ON FRITZ WITHOUT SUDO ... but it shouldn't matter where you run it):
+# Usage (RUN AS _ADMIN USER ON GIBRAN WITHOUT SUDO ... but it shouldn't matter where you run it):
#
# Display frozen users or details for one user (one user implies -verbose):
# freeze [user], OR
use constant STORE => "/afs/hcoop.net/common/etc/frozen/cache";
use constant DEFAULT_SHELL => '/bin/bash';
use constant FROZEN_SHELL => '/afs/hcoop.net/common/etc/scripts/frozen_shell';
-use constant PUBLIC_ACCESS => (qw/bog/);
-use constant RUN_SERVER => 'fritz';
+use constant PUBLIC_ACCESS => (qw/marsh/);
+use constant RUN_SERVER => 'gibran';
my $store = {}; # cached info
my $action = 'list'; # list, freeze, unfreeze
# As per adamc's suggestion, I should not be
# running rmdom explicitly.
# https://bugzilla.hcoop.net/show_bug.cgi?id=555
- #if (!DRY) {
- # system("domtool-admin rmdom $_")
- #} else {
- # warn qq|system("domtool-admin rmdom $_")\n|
- #}
- }
-
- if (!DRY) {
- system("domtool-rmuser $u")
- } else {
- warn qq|system("domtool-rmuser $u")\n|
+ # adam was wrong, rmuser is too broad. rmdom + revoke
+ if (!DRY) {
+ system("domtool-admin rmdom $_");
+ system("domtool-admin revoke $u domain $_");
+ } else {
+ warn qq|system("domtool-admin rmdom $_")\n|;
+ warn qq|system("domtool-admin revoke $u domain $_")\n|
+ }
}
push @{ $$store{$u}{modules} }, 'domtool';
elsif ($a =~ /^u/i) {
if (!DRY) {
- system("ssh -K deleuze domtool-adduser $u")
+ system("domtool-adduser $u")
} else {
- warn qq|system("ssh -K deleuze domtool-adduser $u")\n|
+ warn qq|system("domtool-adduser $u")\n|
}
for ( @{ $$store{$u}{domains} } ) {