Revision f15a6b03 lib/hypervisor/hv_base.py

b/lib/hypervisor/hv_base.py
83 83
_FILE_CHECK = (utils.IsNormAbsPath, "must be an absolute normalized path",
84 84
               os.path.isfile, "not found or not a file")
85 85

  
86
# must be a file or a URL
87
_FILE_OR_URL_CHECK = (utils.IsNormAbsPathOrURL,
88
                      "must be an absolute normalized path or a URL",
89
                      lambda x: os.path.isfile(x) or
90
                      re.match(r'(https?|ftps?)://', x),
91
                      "not found or not a file or URL")
92

  
86 93
# must be a directory
87 94
_DIR_CHECK = (utils.IsNormAbsPath, "must be an absolute normalized path",
88 95
              os.path.isdir, "not found or not a directory")
......
108 115
# nice wrappers for users
109 116
REQ_FILE_CHECK = (True, ) + _FILE_CHECK
110 117
OPT_FILE_CHECK = (False, ) + _FILE_CHECK
118
REQ_FILE_OR_URL_CHECK = (True, ) + _FILE_OR_URL_CHECK
119
OPT_FILE_OR_URL_CHECK = (False, ) + _FILE_OR_URL_CHECK
111 120
REQ_DIR_CHECK = (True, ) + _DIR_CHECK
112 121
OPT_DIR_CHECK = (False, ) + _DIR_CHECK
113 122
REQ_NET_PORT_CHECK = (True, ) + _NET_PORT_CHECK

Also available in: Unified diff