X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=catalog%2Fpub%2Futils%2Ffileutil.py;h=e6eb6f227ee2db59f6b7fa062ac2fb8e03ee2f66;hb=6215857a5a88907c2ba522b862992815e47f4960;hp=6ddfc72c84faeda8997162102729f849f71c6d77;hpb=a32c2b20207885d895bd96204cc166fca14db97b;p=modeling%2Fetsicatalog.git diff --git a/catalog/pub/utils/fileutil.py b/catalog/pub/utils/fileutil.py index 6ddfc72..e6eb6f2 100644 --- a/catalog/pub/utils/fileutil.py +++ b/catalog/pub/utils/fileutil.py @@ -19,7 +19,6 @@ import traceback import urllib import zipfile - logger = logging.getLogger(__name__) @@ -55,7 +54,9 @@ def download_file_from_http(url, local_dir, file_name): def unzip_file(zip_src, dst_dir, csar_path): + logger.debug("unzip_file %s to %s.", zip_src, dst_dir) if os.path.exists(zip_src): + logger.debug("unzip_file %s.", zip_src) fz = zipfile.ZipFile(zip_src, 'r') for file in fz.namelist(): fz.extract(file, dst_dir) @@ -64,6 +65,17 @@ def unzip_file(zip_src, dst_dir, csar_path): return "" +def unzip_csar(zip_src, dst_dir): + if os.path.exists(zip_src): + fz = zipfile.ZipFile(zip_src, 'r') + for file in fz.namelist(): + fz.extract(file, dst_dir) + return dst_dir + else: + logger.error("%s doesn't exist", zip_src) + return "" + + def unzip_csar_to_tmp(zip_src): dirpath = tempfile.mkdtemp() zip_ref = zipfile.ZipFile(zip_src, 'r') @@ -76,3 +88,36 @@ def get_artifact_path(vnf_path, artifact_file): if artifact_file in files: return os.path.join(root, artifact_file) return None + + +def end_with(_s_in, *suffix): + array = map(_s_in.endswith, suffix) + if True in array: + return True + return False + + +def filter_files(search_path, suffix): + f_find = [] + file_list = os.listdir(search_path) + for file_item in file_list: + if end_with(file_item, suffix): + f_find.append(file_item) + return f_find + + +def recreate_dir(path): + if os.path.exists(path): + shutil.rmtree(path) + os.makedirs(path, mode=0o777) + + +def copy(src_file, dest_dir, new_file_name=None): + if not os.path.exists(dest_dir): + os.makedirs(dest_dir) + if new_file_name is None: + dst = os.path.join(dest_dir, os.path.basename(src_file)) + else: + dst = os.path.join(dest_dir, new_file_name) + shutil.copyfile(src_file, dst) + shutil.copymode(src_file, dst)