Traceback (most recent call last):
File "/usr/lib/python3.6/site-packages/pungi/scripts/pungi_koji.py", line 648, in cli_main
main()
File "/usr/lib/python3.6/site-packages/pungi/scripts/pungi_koji.py", line 338, in main
latest_link_components=latest_link_components,
File "/usr/lib/python3.6/site-packages/pungi/scripts/pungi_koji.py", line 491, in run_compose
init_phase.start()
File "/usr/lib/python3.6/site-packages/pungi/phases/base.py", line 63, in start
self.run()
File "/usr/lib/python3.6/site-packages/pungi/phases/init.py", line 46, in run
global_comps = write_global_comps(self.compose)
File "/usr/lib/python3.6/site-packages/pungi/phases/init.py", line 107, in write_global_comps
shutil.rmtree(tmp_dir)
File "/usr/lib64/python3.6/shutil.py", line 490, in rmtree
onerror(os.rmdir, path, sys.exc_info())
File "/usr/lib64/python3.6/shutil.py", line 488, in rmtree
os.rmdir(path)
OSError: [Errno 39] Directory not empty: '/mnt/koji/compose/9/9.2/OpenCloudOS-9.2-updates-20240715.0/work/global/tmp/comps_0b4ujglo'
Frame rmtree in /usr/lib64/python3.6/shutil.py at line 488
481 except Exception:
482 onerror(os.lstat, path, sys.exc_info())
483 return
484 try:
485 if os.path.samestat(orig_st, os.fstat(fd)):
486 _rmtree_safe_fd(fd, path, onerror)
487 try:
--> 488 os.rmdir(path)
489 except OSError:
490 onerror(os.rmdir, path, sys.exc_info())
491 else:
492 try:
493 # symlinks to directories are forbidden, see bug #1669
494 raise OSError("Cannot call rmtree on a symbolic link")
fd = 8
ignore_errors = False
onerror = .onerror at 0x7f3a0fe57510>
orig_st =
path = '/mnt/koji/compose/9/9.2/OpenCloudOS-9.2-updates-20240715.0/work/global/tmp/comps_0b4ujglo'
Frame rmtree in /usr/lib64/python3.6/shutil.py at line 490
483 return
484 try:
485 if os.path.samestat(orig_st, os.fstat(fd)):
486 _rmtree_safe_fd(fd, path, onerror)
487 try:
488 os.rmdir(path)
489 except OSError:
--> 490 onerror(os.rmdir, path, sys.exc_info())
491 else:
492 try:
493 # symlinks to directories are forbidden, see bug #1669
494 raise OSError("Cannot call rmtree on a symbolic link")
495 except OSError:
496 onerror(os.path.islink, path, sys.exc_info())
fd = 8
ignore_errors = False
onerror = .onerror at 0x7f3a0fe57510>
orig_st =
path = '/mnt/koji/compose/9/9.2/OpenCloudOS-9.2-updates-20240715.0/work/global/tmp/comps_0b4ujglo'
Frame write_global_comps in /usr/lib/python3.6/site-packages/pungi/phases/init.py at line 107
100 comps_name = os.path.basename(scm_dict)
101 scm_dict = os.path.join(compose.config_dir, scm_dict)
102
103 compose.log_debug("Writing global comps file: %s", comps_file_global)
104 tmp_dir = compose.mkdtemp(prefix="comps_")
105 get_file_from_scm(scm_dict, tmp_dir, compose=compose)
106 shutil.copy2(os.path.join(tmp_dir, comps_name), comps_file_global)
--> 107 shutil.rmtree(tmp_dir)
108
109 return comps_file_global
110
111
112 def write_arch_comps(compose, arch):
113 comps_file_arch = compose.paths.work.comps(arch=arch)
compose =
comps_file_global = '/mnt/koji/compose/9/9.2/OpenCloudOS-9.2-updates-20240715.0/work/global/comps/comps-global.xml'
comps_name = 'comps-oc-9.xml'
scm_dict = {'scm': 'git', 'repo': 'https://gitee.com/src-opencloudos-rpms/comps.git', 'branch': 'ff1535b6a764f0e0377c2b07937f6de526f87ae1', 'file': 'comps-oc-9.xml', 'command': ''}
tmp_dir = '/mnt/koji/compose/9/9.2/OpenCloudOS-9.2-updates-20240715.0/work/global/tmp/comps_0b4ujglo'
Frame run in /usr/lib/python3.6/site-packages/pungi/phases/init.py at line 46
39 # INIT must never be skipped,
40 # because it generates data for LIVEIMAGES
41 return False
42
43 def run(self):
44 if self.compose.has_comps:
45 # write global comps and arch comps, create comps repos
--> 46 global_comps = write_global_comps(self.compose)
47 validate_comps(global_comps)
48 num_workers = self.compose.conf["createrepo_num_threads"]
49 run_in_threads(
50 _arch_worker,
51 [(self.compose, arch) for arch in self.compose.get_arches()],
52 threads=num_workers,
self =
self._skipped = False
self.compose =
self.finished = False
self.msg = '---------- PHASE: INIT ----------'
self.name = 'init'
self.used_patterns = None
Frame start in /usr/lib/python3.6/site-packages/pungi/phases/base.py at line 63
56 self._skipped = self.skip()
57 if self._skipped:
58 self.compose.log_warning("[SKIP ] %s" % self.msg)
59 self.finished = True
60 return
61 self.compose.log_info("[BEGIN] %s" % self.msg)
62 self.compose.notifier.send("phase-start", phase_name=self.name)
--> 63 self.run()
64
65 def get_config_block(self, variant, arch=None):
66 """In config for current phase, find a block corresponding to given
67 variant and arch. The arch should be given if and only if the config
68 uses variant/arch mapping.
69 """
self =
self._skipped = False
self.compose =
self.finished = False
self.msg = '---------- PHASE: INIT ----------'
self.name = 'init'
self.used_patterns = None
Frame run_compose in /usr/lib/python3.6/site-packages/pungi/scripts/pungi_koji.py at line 491
484 if compose.conf["release_name"] == combination[0] and compose.conf["release_version"] == combination[1]:
485 print("In RV_SPECAIL?set system enviroment ENV_PUNGI_RELEASE_SPECIAL")
486 os.environ['ENV_PUNGI_RELEASE_SPECIAL'] = 'true'
487 break
488 else:
489 print("Not in RV_SPECAIL")
490
--> 491 init_phase.start()
492 init_phase.stop()
493
494 pkgset_phase.start()
495 pkgset_phase.stop()
496
497 # WEAVER phase - launches other phases which can safely run in parallel
buildinstall_phase =
combination =
compose =
config_copy_path = '/mnt/koji/compose/9/9.2/OpenCloudOS-9.2-updates-20240715.0/logs/global/config-copy'
config_dump_full = '/mnt/koji/compose/9/9.2/OpenCloudOS-9.2-updates-20240715.0/logs/global/config-dump.global.log'
config_file = '/root/opencloudos/compose/pungi-opencloudos/opencloudos/override.conf'
create_latest_link = True
createiso_phase =
createrepo_phase =
errors = []
extra_isos_phase =
extrafiles_phase =
f = <_io.TextIOWrapper name='/mnt/koji/compose/9/9.2/OpenCloudOS-9.2-updates-20240715.0/logs/global/config-dump.global.log' mode='w' encoding='UTF-8'>
gather_phase =
image_build_phase =
image_checksum_phase =
image_container_phase =
init_phase =
latest_link_components = -1
latest_link_status = None
liveimages_phase =
livemedia_phase =
osbs_phase =
osbuild_phase =
ostree_installer_phase =
ostree_phase =
phase =
pkgset_phase =
pungi =
repoclosure_phase =
test_phase =
Frame main in /usr/lib/python3.6/site-packages/pungi/scripts/pungi_koji.py at line 338
331 notifier.compose = compose
332 COMPOSE = compose
333 try:
334 run_compose(
335 compose,
336 create_latest_link=create_latest_link,
337 latest_link_status=latest_link_status,
--> 338 latest_link_components=latest_link_components,
339 )
340 except UnsignedPackagesError:
341 # There was an unsigned package somewhere. It is not safe to reuse any
342 # package set from this compose (since we could leak the unsigned
343 # package). Let's make sure all reuse files are deleted.
344 for fp in glob.glob(compose.paths.work.pkgset_reuse_file("*")):
Compose =
PHASES_NAMES_MODIFIED = ['buildinstall', 'createiso', 'createrepo', 'extra_files', 'extra_isos', 'gather', 'image_build', 'image_checksum', 'image_container', 'init', 'live_images', 'live_media', 'osbs', 'osbuild', 'ostree',
abort = .abort at 0x7f3a01a75ea0>
compose =
compose_dir = '/mnt/koji/compose/9/9.2/OpenCloudOS-9.2-updates-20240715.0'
compose_type = 'production'
conf = {'RELEASE_NAME': 'OpenCloudOS', 'RELEASE_SHORT': 'OpenCloudOS', 'RELEASE_VERSION': '9.2', 'PKGSET_KOJI_TAG': 'dist-oc9-compose', 'RUNROOT_CHANNEL': 'image', 'RUNROOT_TAG': 'dist-oc9-build', 'RELEASE_V
create_latest_link = True
errors = []
fail_to_start = .fail_to_start at 0x7f3a01a75e18>
group =
kobo =
latest_link_components = -1
latest_link_status = None
logger =
notifier =
opts = Namespace(compose_dir=None, compose_type='production', config='/root/opencloudos/compose/pungi-opencloudos/oc-updates.conf', just_phase=[], koji_event=None, label='RC-9.2', latest_link_components=-1,
parser = ArgumentParser(prog='pungi-koji', usage=None, description=None, formatter_class=, conflict_handler='error', add_help=True)
productmd =
pungi =
warning = 'WARNING: Unrecognized config option: EXTRA_ISOS_ARCHES.'
warnings = ["WARNING: Config option runroot was removed and has no effect; remove it. Please specify 'runroot_method' if you want to enable runroot, otherwise run things locally.", 'WARNING: Config option bootab
Frame cli_main in /usr/lib/python3.6/site-packages/pungi/scripts/pungi_koji.py at line 648
641
642
643 def cli_main():
644 signal.signal(signal.SIGINT, sigterm_handler)
645 signal.signal(signal.SIGTERM, sigterm_handler)
646
647 try:
--> 648 main()
649 except (Exception, KeyboardInterrupt) as ex:
650 if COMPOSE:
651 tb_path = COMPOSE.paths.log.log_file("global", "traceback")
652 COMPOSE.log_error("Compose run failed: %s" % ex)
653 COMPOSE.log_error("Extended traceback in: %s" % tb_path)
654 COMPOSE.log_critical("Compose failed: %s" % COMPOSE.topdir)
ex = OSError(39, 'Directory not empty')
f = <_io.BufferedWriter name='/mnt/koji/compose/9/9.2/OpenCloudOS-9.2-updates-20240715.0/logs/global/traceback.global.log'>
kobo =
tb_path = '/mnt/koji/compose/9/9.2/OpenCloudOS-9.2-updates-20240715.0/logs/global/traceback.global.log'