#!/usr/bin/python # # Just change the three variables below and you are all set! # @author Matthew A. Johnston (WarmWaffles) # your user name API_USERNAME = "username" # your api key API_KEY = "api-key" # Load balancer Region LB_REGION = "region" import sys import cloudlb def print_balancers(balancers) : for lb in lbs: print "[%s] => %s" % (lb.id, lb.name) clb = cloudlb.CloudLoadBalancer(API_USERNAME, API_KEY, LB_REGION); lbs = clb.loadbalancers.list() print "Choose an action..." print "[1] - Set the error page" print "[2] - Remove the error page" print "[X] - Exit (really any value other than 1 or 2" try: mode = int(sys.stdin.readline()) except ValueError: print "Good bye..." sys.exit() # ################################################################################################## # ################################################################################################## if mode == 1: print "Set the error page..." print_balancers(lbs) print "Type one of the ID's above..." id = 0 try: try: id = int(sys.stdin.readline()) except ValueError: print "Invalid entry..." sys.exit() except IOError: print "Good bye..." sys.exit() try: balancer = clb.loadbalancers.get(id) except cloudlb.errors.ResponseError: print "Invalid load balancer ID..." sys.exit() print "Path to the error.html page..." print "It has to be absolute for now..." try: file_path = sys.stdin.readline().rstrip('\n') error_file = open(file_path) error_page = error_file.read() except IOError: print "I can't do that Dave..." sys.exit() print "====== OLD ERROR PAGE ======" print balancer.errorpage().get() balancer.errorpage().add(error_page) print "====== NEW ERROR PAGE ======" print balancer.errorpage().get() # ################################################################################################## # ################################################################################################## elif mode == 2: print "Remove the error page" print_balancers(lbs) print "Type one of the ID's above..." id = 0 try: try: id = int(sys.stdin.readline()) except ValueError: print "Invalid entry..." sys.exit() except IOError: print "Good bye..." sys.exit() try: balancer = clb.loadbalancers.get(id) except cloudlb.errors.ResponseError: print "Invalid load balancer ID..." sys.exit() print "====== OLD ERROR PAGE ======" print balancer.errorpage().get() balancer.errorpage().delete() print "====== RESET TO ======" print balancer.errorpage().get() # ################################################################################################## # ################################################################################################## else: print "Good bye..." sys.exit()