'MyAccount/list_pkgs' => \&list_pkgs,
'MyAccount/order_pkg' => \&order_pkg,
'MyAccount/cancel_pkg' => \&cancel_pkg,
+ 'MyAccount/charge' => \&charge,
);
use vars qw( @cust_main_editable_fields );
);
#store in db?
-my $cache = new Cache::SharedMemoryCache();
+my $cache = new Cache::SharedMemoryCache( {
+ 'namespace' => 'FS::ClientAPI::MyAccount',
+} );
#false laziness w/FS::ClientAPI::passwd::passwd (needs to handle encrypted pw)
sub login {
my $user = shift or die &usage;
my $machine = shift or die &usage;
my $tag = scalar(@ARGV) ? shift : '';
-my $pid_file = "/var/run/freeside-selfservice-server.$user.pid";
-#my $pid_file = "/var/run/freeside-selfservice-server.$user.pid"; $FS::UID::datasrc not posible, but should include machine name at least, hmm
+
+# $FS::UID::datasrc not posible
+my $pid_file = "/var/run/freeside-selfservice-server.$user.$machine.pid";
my $lock_file = "/usr/local/etc/freeside/selfservice.$machine.writelock";
open(LOCKFILE,">$lock_file") or die "can't open $lock_file: $!";
FREESIDE_PATH = `pwd`
SELFSERVICE_USER = fs_selfservice
-SELFSERVICE_MACHINE = localhost
+SELFSERVICE_MACHINES = localhost
+# SELFSERVICE_MACHINES = "web1.example.com web2.example.com"
#---
s/%%%QUEUED_USER%%%/${QUEUED_USER}/g;\
s'%%%FREESIDE_PATH%%%'${FREESIDE_PATH}'g;\
s/%%%SELFSERVICE_USER%%%/${SELFSERVICE_USER}/g;\
- s/%%%SELFSERVICE_MACHINE%%%/${SELFSERVICE_MACHINE}/g;\
+ s/%%%SELFSERVICE_MACHINES%%%/${SELFSERVICE_MACHINES}/g;\
" ${INIT_FILE}
install: install-perl-modules install-docs install-init
FREESIDE_PATH="%%%FREESIDE_PATH%%%"
SELFSERVICE_USER=%%%SELFSERVICE_USER%%%
-SELFSERVICE_MACHINE=%%%SELFSERVICE_MACHINE%%%
+SELFSERVICE_MACHINES="%%%SELFSERVICE_MACHINES%%%"
case "$1" in
start)
freeside-queued $QUEUED_USER
echo "done."
- echo -n "Starting freeside-selfservice-server: "
- freeside-selfservice-server $SELFSERVICE_USER $SELFSERVICE_MACHINE
- echo "done."
+ for MACHINE in $SELFSERVICE_MACHINES; do
+ echo -n "Starting freeside-selfservice-server to $MACHINE: "
+ freeside-selfservice-server $SELFSERVICE_USER $MACHINE
+ echo "done."
+ done
;;
stop)
kill `cat /var/run/freeside-queued.pid`
echo "done."
- echo -n "Stopping freeside-selfservice-server: "
- kill `cat /var/run/freeside-selfservice-server.$SELFSERVICE_USER.pid`
- echo "done."
+ if [ -e /var/run/freeside-selfservice-server.$SELFSERVICE_USER.pid ]
+ then
+ echo -n "Stopping (old) freeside-selfservice-server: "
+ kill `cat /var/run/freeside-selfservice-server.$SELFSERVICE_USER.pid`
+ rm /var/run/freeside-selfservice-server.$SELFSERVICE_USER.pid
+ fi
+
+ for MACHINE in $SELFSERVICE_MACHINES; do
+ echo -n "Stopping freeside-selfservice-server to $MACHINE: "
+ kill `cat /var/run/freeside-selfservice-server.$SELFSERVICE_USER.$MACHINE.pid`
+ echo "done."
+ done
+
;;
restart)