diff --git a/image_creator/dialog_util.py b/image_creator/dialog_util.py index ec5be5ff8998bf0f1f432c16ab02043fc0a0572f..af5e4254c5cd3eaf2903848465e68c393d9229e2 100644 --- a/image_creator/dialog_util.py +++ b/image_creator/dialog_util.py @@ -180,10 +180,10 @@ def extract_image(session): def _check_cloud(session, name, description, url, token): """Checks if the provided info for a cloud are valid""" d = session['dialog'] - regexp = re.compile('^[a-zA-Z0-9_]+$') + regexp = re.compile('^[~@#$:\-\w]+$') if not re.match(regexp, name): - d.msgbox("Allowed characters for name: [a-zA-Z0-9_]", width=WIDTH) + d.msgbox("Allowed characters for name: a-zA-Z0-9_~@#$:-", width=WIDTH) return False if len(url) == 0: diff --git a/image_creator/kamaki_wrapper.py b/image_creator/kamaki_wrapper.py index c515fa65764bc18557747e0b13bdcc157840e180..36695266685b1667d231eda279ee8124e1a7bcd7 100644 --- a/image_creator/kamaki_wrapper.py +++ b/image_creator/kamaki_wrapper.py @@ -38,6 +38,8 @@ The library is used to upload images to and register them with a Synnefo deployment. """ +import sys + from os.path import basename from kamaki.cli.config import Config @@ -46,8 +48,11 @@ from kamaki.clients.image import ImageClient from kamaki.clients.pithos import PithosClient from kamaki.clients.astakos import AstakosClient - -config = Config() +try: + config = Config() +except Exception as e: + sys.stderr.write("Kamaki config error: %s\n" % str(e)) + sys.exit(1) class Kamaki(object):