summaryrefslogtreecommitdiff
path: root/tools/check.py
diff options
context:
space:
mode:
Diffstat (limited to 'tools/check.py')
-rw-r--r--tools/check.py91
1 files changed, 0 insertions, 91 deletions
diff --git a/tools/check.py b/tools/check.py
deleted file mode 100644
index efa2449..0000000
--- a/tools/check.py
+++ /dev/null
@@ -1,91 +0,0 @@
-import ConfigParser, os, getopt, sys, config
-
-ini = ConfigParser.ConfigParser()
-
-# Parse parameters
-def get_opts(argv):
- try:
- opts, args = getopt.getopt(argv,"ha:c:d:l",["conf=","action=","device=","list-devices"])
- except getopt.GetoptError:
- usage()
- sys.exit(2)
- for opt, arg in opts:
- if opt == '-h':
- return usage()
- sys.exit()
- elif opt in ("-l", "--list-devices"):
- print "You have configured these devices: " + list_devices()
- sys.exit()
- elif opt in ("-a", "--action"):
- config.action = arg
- elif opt in ("-c", "--conf"):
- config.configfile = arg
- elif opt in ("-d", "--device"):
- config.device = arg
-
-# Check parameters for errors
-def check_opts():
- get_opts(sys.argv[1:])
- if not config.action:
- print "Error: No action has been specified. Use -a."
- return usage()
- sys.exit(2)
- if not config.action == "pull" or config.action == "push":
- print "Error: Action \"" + config.action + "\" is invalid."
- return usage()
- sys.exit(2)
- if not config.device:
- print "Error: No device has been specified. Use -d."
- return usage()
- sys.exit(2)
- if config.device:
- load_config(config.configfile)
- if not ini.has_section(config.device):
- print "Error: Device \"" + config.device + "\" not configured. Add it to\"" + config.configfile + "."
- sys.exit(2)
-
-# Load provided config file or use default
-def load_config(configfile):
- if not configfile:
- config.configfile = "/etc/sync-rpi.conf"
- try:
- ini.read([config.configfile])
- except:
- sys.exit(2)
-
-# Check if configuration file is sane
-def check_config(configfile):
- get_opts(sys.argv[1:])
- load_config(config.configfile)
- error = 0
- #print config.configfile
- #print ini.items('config')
- #print ini.items('alcor-01')
- #print config.options_config
- #print config.options_device
- for option in config.options_config:
- if not ini.has_option('config', option):
- print "Error: Option \"" + option + "\" not set in [config]."
- error = 1
- for section in ini.sections():
- for option in config.options_device:
- if section != 'config' and not ini.has_option(section, option):
- print "Error: Option " + option + " not set in [" + section + "]."
- error = 1
-
- if error == 1:
- sys.exit(2)
-
-# List all devices defined in config.configfile
-def list_devices():
- load_config(config.configfile)
- return " ".join(ini.sections()[1:])
-
-# Prin usage
-def usage():
- print """Usage: sync-rpi-config -a ACTION -d DEVICE [ -c [FILE] ] [ -l ]
- Options
- -a, --action ACTION can be either pull or push. You are pushing config from you workstation to device or pulling it back.
- -d, --device DEVICE is set in configuration file. It is the machine you wish to push config to or pull from.
- -c, --conf Path to configuration file.
- -l, --list-devices List all devices defined in current configuration file."""