|
34 | 34 |
|
35 | 35 | import collections |
36 | 36 | import datetime |
| 37 | +import importlib.resources |
37 | 38 | import io |
38 | 39 | import json |
39 | 40 | import os |
40 | | -import pkg_resources |
41 | 41 | import re |
42 | 42 | import shutil |
43 | 43 | import sys |
|
126 | 126 |
|
127 | 127 |
|
128 | 128 | def __place_template_folder(group, src, dst, gbp=False): |
129 | | - template_files = pkg_resources.resource_listdir(group, src) |
| 129 | + template_files = [os.path.basename(file) |
| 130 | + for file in importlib.resources.files(f'{group}.{src.replace("/", ".")}').iterdir()] |
130 | 131 | # For each template, place |
131 | 132 | for template_file in template_files: |
132 | 133 | if not gbp and os.path.basename(template_file) == 'gbp.conf.em': |
133 | 134 | debug("Skipping template '{0}'".format(template_file)) |
134 | 135 | continue |
135 | 136 | template_path = os.path.join(src, template_file) |
136 | 137 | template_dst = os.path.join(dst, template_file) |
137 | | - if pkg_resources.resource_isdir(group, template_path): |
| 138 | + if importlib.resources.files(group).joinpath(template_path).is_dir(): |
138 | 139 | debug("Recursing on folder '{0}'".format(template_path)) |
139 | 140 | __place_template_folder(group, template_path, template_dst, gbp) |
140 | 141 | else: |
141 | 142 | try: |
142 | 143 | debug("Placing template '{0}'".format(template_path)) |
143 | | - template = pkg_resources.resource_string(group, template_path) |
144 | | - template_abs_path = pkg_resources.resource_filename(group, template_path) |
| 144 | + template = importlib.resources.files(group).joinpath(template_path).open().read() |
| 145 | + template_abs_path = importlib.resources.files(group).joinpath(template_path) |
145 | 146 | except IOError as err: |
146 | 147 | error("Failed to load template " |
147 | 148 | "'{0}': {1}".format(template_file, str(err)), exit=True) |
|
0 commit comments