summaryrefslogtreecommitdiff
path: root/src/s3ql/parse_args.py
diff options
context:
space:
mode:
Diffstat (limited to 'src/s3ql/parse_args.py')
-rw-r--r--src/s3ql/parse_args.py15
1 files changed, 6 insertions, 9 deletions
diff --git a/src/s3ql/parse_args.py b/src/s3ql/parse_args.py
index bc18d44..21bdc7a 100644
--- a/src/s3ql/parse_args.py
+++ b/src/s3ql/parse_args.py
@@ -216,14 +216,11 @@ class ArgumentParser(argparse.ArgumentParser):
def storage_url_type(s):
'''Validate and canonicalize storage url'''
-
+ if not re.match(r'^([a-zA-Z0-9]+)://(.+)$', s):
+ raise argparse.ArgumentTypeError('%s is not a valid storage url.' % s)
+
if s.startswith('local://'):
return 'local://%s' % os.path.abspath(s[len('local://'):])
- elif s.startswith('s3://') or s.startswith('s3rr://'):
- return s
- elif re.match(r'^([a-z]+)://([a-zA-Z0-9.-]+)(?::([0-9]+))?(/[a-zA-Z0-9./_-]+)$',
- s):
- return s
- else:
- msg = '%s is not a valid storage url.' % s
- raise argparse.ArgumentTypeError(msg)
+
+ return s
+