diff --git a/bob/devtools/bootstrap.py b/bob/devtools/bootstrap.py index 744c6a994d49b0d53db37193eb999ba403d18815..53371d3b0ebdfc933c3f9fa0ade14c4118c1fd9d 100644 --- a/bob/devtools/bootstrap.py +++ b/bob/devtools/bootstrap.py @@ -166,12 +166,18 @@ def merge_conda_cache(cache, prefix, name): logger.info('Merging urls.txt files from cache...') urls = [] cached_pkgs_urls_txt = os.path.join(cached_pkgs_dir, 'urls.txt') - logger.info('touch %s', cached_pkgs_urls_txt) - touch(cached_pkgs_urls_txt) #sometimes it does not exist yet - with open(pkgs_urls_txt, 'rb') as f1, \ - open(cached_pkgs_urls_txt, 'rb') as f2: - data = set(f1.readlines() + f2.readlines()) - data = sorted(list(data)) + + if not os.path.exists(cached_pkgs_urls_txt): + with open(pkgs_urls_txt, 'rb') as f1: + data = set(f1.readlines()) + data = sorted(list(data)) + else: + # use both cached and actual conda package caches + with open(pkgs_urls_txt, 'rb') as f1, \ + open(cached_pkgs_urls_txt, 'rb') as f2: + data = set(f1.readlines() + f2.readlines()) + data = sorted(list(data)) + with open(pkgs_urls_txt, 'wb') as f: f.writelines(data)