#1712 ostree container compose failing on: [Errno 17] File exists: '/mnt/koji/compose/rawhide/Fedora-Rawhide-20240117.n.0/work/ostree-2/config_repo/.git'
Closed: Fixed by lsedlar. Opened by siosm.

We've merged https://pagure.io/pungi-fedora/pull-request/1227 and we got a build, which failed in https://pagure.io/releng/failed-composes/issue/5814.

The logs (https://kojipkgs.fedoraproject.org/compose/rawhide/Fedora-Rawhide-20240117.n.0/logs/global/pungi.global.log) show:

2024-01-17 21:15:01 [INFO    ] [BEGIN] OSTree phase for variant Kinoite, arch x86_64
2024-01-17 21:15:01 [INFO    ] [BEGIN] OSTree phase for variant Kinoite, arch ppc64le
2024-01-17 21:15:01 [INFO    ] [BEGIN] OSTree phase for variant Kinoite, arch aarch64
2024-01-17 21:15:01 [INFO    ] [BEGIN] OSTree phase for variant Onyx, arch x86_64
2024-01-17 21:15:01 [INFO    ] [BEGIN] OSTree phase for variant Sericea, arch x86_64
2024-01-17 21:15:01 [INFO    ] [BEGIN] OSTree phase for variant Sericea, arch aarch64
2024-01-17 21:15:01 [INFO    ] [BEGIN] OSTree phase for variant Silverblue, arch x86_64
2024-01-17 21:15:01 [INFO    ] [BEGIN] OSTree phase for variant Silverblue, arch ppc64le
2024-01-17 21:15:01 [INFO    ] [BEGIN] OSTree phase for variant Silverblue, arch aarch64
2024-01-17 21:15:02 [DEBUG   ] Exporting directory . from git https://pagure.io/workstation-ostree-config.git (branch main)...
2024-01-17 21:15:02 [DEBUG   ] Exporting directory . from git https://pagure.io/workstation-ostree-config.git (branch main)...
2024-01-17 21:15:02 [DEBUG   ] Exporting directory . from git https://pagure.io/workstation-ostree-config.git (branch main)...
2024-01-17 21:15:02 [DEBUG   ] Exporting directory . from git https://pagure.io/workstation-ostree-config.git (branch main)...
2024-01-17 21:15:02 [DEBUG   ] Exporting directory . from git https://pagure.io/workstation-ostree-config.git (branch main)...
2024-01-17 21:15:02 [DEBUG   ] Exporting directory . from git https://pagure.io/workstation-ostree-config.git (branch main)...
2024-01-17 21:15:02 [DEBUG   ] Exporting directory . from git https://pagure.io/workstation-ostree-config.git (branch main)...
2024-01-17 21:15:02 [DEBUG   ] Exporting directory . from git https://pagure.io/workstation-ostree-config.git (branch main)...
2024-01-17 21:15:02 [DEBUG   ] Exporting directory . from git https://pagure.io/workstation-ostree-config.git (branch main)...
2024-01-17 21:15:02 [ERROR   ] [FAIL] Ostree container (variant Kinoite, arch ppc64le) failed, but going on anyway.
2024-01-17 21:15:02 [ERROR   ] [Errno 17] File exists: '/mnt/koji/compose/rawhide/Fedora-Rawhide-20240117.n.0/work/ostree-2/config_repo/.git'
2024-01-17 21:15:02 [DEBUG   ] Traceback (most recent call last):
  File "/usr/lib/python3.12/site-packages/pungi/util.py", line 596, in failable
    yield
  File "/usr/lib/python3.12/site-packages/pungi/phases/ostree_container.py", line 68, in process
    self.worker(compose, variant, arch, config)
  File "/usr/lib/python3.12/site-packages/pungi/phases/ostree_container.py", line 78, in worker
    self._clone_repo(
  File "/usr/lib/python3.12/site-packages/pungi/phases/ostree_container.py", line 184, in _clone_repo
    scm.get_dir_from_scm(
  File "/usr/lib/python3.12/site-packages/pungi/wrappers/scm.py", line 505, in get_dir_from_scm
    files_copied = copy_all(tmp_dir, target_path)
                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.12/site-packages/pungi/util.py", line 674, in copy_all
    shutil.copytree(source, destination)
  File "/usr/lib64/python3.12/shutil.py", line 588, in copytree
    return _copytree(entries=entries, src=src, dst=dst, symlinks=symlinks,
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib64/python3.12/shutil.py", line 486, in _copytree
    os.makedirs(dst, exist_ok=dirs_exist_ok)
  File "<frozen os>", line 225, in makedirs
FileExistsError: [Errno 17] File exists: '/mnt/koji/compose/rawhide/Fedora-Rawhide-20240117.n.0/work/ostree-2/config_repo/.git'
2024-01-17 21:15:02 [ERROR   ] [FAIL] Ostree container (variant Silverblue, arch x86_64) failed, but going on anyway.
2024-01-17 21:15:02 [ERROR   ] [Errno 17] File exists: '/mnt/koji/compose/rawhide/Fedora-Rawhide-20240117.n.0/work/ostree-7/config_repo/.git'
2024-01-17 21:15:02 [DEBUG   ] Traceback (most recent call last):
  File "/usr/lib/python3.12/site-packages/pungi/util.py", line 596, in failable
    yield
  File "/usr/lib/python3.12/site-packages/pungi/phases/ostree_container.py", line 68, in process
    self.worker(compose, variant, arch, config)
  File "/usr/lib/python3.12/site-packages/pungi/phases/ostree_container.py", line 78, in worker
    self._clone_repo(
  File "/usr/lib/python3.12/site-packages/pungi/phases/ostree_container.py", line 184, in _clone_repo
    scm.get_dir_from_scm(
  File "/usr/lib/python3.12/site-packages/pungi/wrappers/scm.py", line 505, in get_dir_from_scm
    files_copied = copy_all(tmp_dir, target_path)
                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.12/site-packages/pungi/util.py", line 674, in copy_all
    shutil.copytree(source, destination)
  File "/usr/lib64/python3.12/shutil.py", line 588, in copytree
    return _copytree(entries=entries, src=src, dst=dst, symlinks=symlinks,
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib64/python3.12/shutil.py", line 486, in _copytree
    os.makedirs(dst, exist_ok=dirs_exist_ok)
  File "<frozen os>", line 225, in makedirs
FileExistsError: [Errno 17] File exists: '/mnt/koji/compose/rawhide/Fedora-Rawhide-20240117.n.0/work/ostree-7/config_repo/.git'
2024-01-17 21:15:02 [ERROR   ] [FAIL] Ostree container (variant Sericea, arch x86_64) failed, but going on anyway.
2024-01-17 21:15:02 [ERROR   ] [Errno 17] File exists: '/mnt/koji/compose/rawhide/Fedora-Rawhide-20240117.n.0/work/ostree-5/config_repo/.git'
2024-01-17 21:15:02 [DEBUG   ] Traceback (most recent call last):
  File "/usr/lib/python3.12/site-packages/pungi/util.py", line 596, in failable
    yield
  File "/usr/lib/python3.12/site-packages/pungi/phases/ostree_container.py", line 68, in process
    self.worker(compose, variant, arch, config)
  File "/usr/lib/python3.12/site-packages/pungi/phases/ostree_container.py", line 78, in worker
    self._clone_repo(
  File "/usr/lib/python3.12/site-packages/pungi/phases/ostree_container.py", line 184, in _clone_repo
    scm.get_dir_from_scm(
  File "/usr/lib/python3.12/site-packages/pungi/wrappers/scm.py", line 505, in get_dir_from_scm
    files_copied = copy_all(tmp_dir, target_path)
                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.12/site-packages/pungi/util.py", line 674, in copy_all
    shutil.copytree(source, destination)
  File "/usr/lib64/python3.12/shutil.py", line 588, in copytree
    return _copytree(entries=entries, src=src, dst=dst, symlinks=symlinks,
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib64/python3.12/shutil.py", line 486, in _copytree
    os.makedirs(dst, exist_ok=dirs_exist_ok)
  File "<frozen os>", line 225, in makedirs
FileExistsError: [Errno 17] File exists: '/mnt/koji/compose/rawhide/Fedora-Rawhide-20240117.n.0/work/ostree-5/config_repo/.git'
2024-01-17 21:15:02 [ERROR   ] [FAIL] Ostree container (variant Sericea, arch aarch64) failed, but going on anyway.
2024-01-17 21:15:02 [ERROR   ] [Errno 17] File exists: '/mnt/koji/compose/rawhide/Fedora-Rawhide-20240117.n.0/work/ostree-6/config_repo/.git'
2024-01-17 21:15:02 [DEBUG   ] Traceback (most recent call last):
  File "/usr/lib/python3.12/site-packages/pungi/util.py", line 596, in failable
    yield
  File "/usr/lib/python3.12/site-packages/pungi/phases/ostree_container.py", line 68, in process
    self.worker(compose, variant, arch, config)
  File "/usr/lib/python3.12/site-packages/pungi/phases/ostree_container.py", line 78, in worker
    self._clone_repo(
  File "/usr/lib/python3.12/site-packages/pungi/phases/ostree_container.py", line 184, in _clone_repo
    scm.get_dir_from_scm(
  File "/usr/lib/python3.12/site-packages/pungi/wrappers/scm.py", line 505, in get_dir_from_scm
    files_copied = copy_all(tmp_dir, target_path)
                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.12/site-packages/pungi/util.py", line 674, in copy_all
    shutil.copytree(source, destination)
  File "/usr/lib64/python3.12/shutil.py", line 588, in copytree
    return _copytree(entries=entries, src=src, dst=dst, symlinks=symlinks,
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib64/python3.12/shutil.py", line 486, in _copytree
    os.makedirs(dst, exist_ok=dirs_exist_ok)
  File "<frozen os>", line 225, in makedirs
FileExistsError: [Errno 17] File exists: '/mnt/koji/compose/rawhide/Fedora-Rawhide-20240117.n.0/work/ostree-6/config_repo/.git'
2024-01-17 21:15:02 [ERROR   ] [FAIL] Ostree container (variant Silverblue, arch ppc64le) failed, but going on anyway.
2024-01-17 21:15:02 [ERROR   ] [Errno 17] File exists: '/mnt/koji/compose/rawhide/Fedora-Rawhide-20240117.n.0/work/ostree-8/config_repo/.git'
2024-01-17 21:15:02 [DEBUG   ] Traceback (most recent call last):
  File "/usr/lib/python3.12/site-packages/pungi/util.py", line 596, in failable
    yield
  File "/usr/lib/python3.12/site-packages/pungi/phases/ostree_container.py", line 68, in process
    self.worker(compose, variant, arch, config)
  File "/usr/lib/python3.12/site-packages/pungi/phases/ostree_container.py", line 78, in worker
    self._clone_repo(
  File "/usr/lib/python3.12/site-packages/pungi/phases/ostree_container.py", line 184, in _clone_repo
    scm.get_dir_from_scm(
  File "/usr/lib/python3.12/site-packages/pungi/wrappers/scm.py", line 505, in get_dir_from_scm
    files_copied = copy_all(tmp_dir, target_path)
                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.12/site-packages/pungi/util.py", line 674, in copy_all
    shutil.copytree(source, destination)
  File "/usr/lib64/python3.12/shutil.py", line 588, in copytree
    return _copytree(entries=entries, src=src, dst=dst, symlinks=symlinks,
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib64/python3.12/shutil.py", line 486, in _copytree
    os.makedirs(dst, exist_ok=dirs_exist_ok)
  File "<frozen os>", line 225, in makedirs
FileExistsError: [Errno 17] File exists: '/mnt/koji/compose/rawhide/Fedora-Rawhide-20240117.n.0/work/ostree-8/config_repo/.git'
2024-01-17 21:15:02 [ERROR   ] [FAIL] Ostree container (variant Silverblue, arch aarch64) failed, but going on anyway.
2024-01-17 21:15:02 [ERROR   ] [Errno 17] File exists: '/mnt/koji/compose/rawhide/Fedora-Rawhide-20240117.n.0/work/ostree-9/config_repo/.git'
2024-01-17 21:15:02 [DEBUG   ] Traceback (most recent call last):
  File "/usr/lib/python3.12/site-packages/pungi/util.py", line 596, in failable
    yield
  File "/usr/lib/python3.12/site-packages/pungi/phases/ostree_container.py", line 68, in process
    self.worker(compose, variant, arch, config)
  File "/usr/lib/python3.12/site-packages/pungi/phases/ostree_container.py", line 78, in worker
    self._clone_repo(
  File "/usr/lib/python3.12/site-packages/pungi/phases/ostree_container.py", line 184, in _clone_repo
    scm.get_dir_from_scm(
  File "/usr/lib/python3.12/site-packages/pungi/wrappers/scm.py", line 505, in get_dir_from_scm
    files_copied = copy_all(tmp_dir, target_path)
                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.12/site-packages/pungi/util.py", line 674, in copy_all
    shutil.copytree(source, destination)
  File "/usr/lib64/python3.12/shutil.py", line 588, in copytree
    return _copytree(entries=entries, src=src, dst=dst, symlinks=symlinks,
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib64/python3.12/shutil.py", line 486, in _copytree
    os.makedirs(dst, exist_ok=dirs_exist_ok)
  File "<frozen os>", line 225, in makedirs
FileExistsError: [Errno 17] File exists: '/mnt/koji/compose/rawhide/Fedora-Rawhide-20240117.n.0/work/ostree-9/config_repo/.git'
2024-01-17 21:15:02 [ERROR   ] [FAIL] Ostree container (variant Kinoite, arch aarch64) failed, but going on anyway.
2024-01-17 21:15:02 [ERROR   ] [Errno 17] File exists: '/mnt/koji/compose/rawhide/Fedora-Rawhide-20240117.n.0/work/ostree-3/config_repo/.git'
2024-01-17 21:15:02 [DEBUG   ] Traceback (most recent call last):
  File "/usr/lib/python3.12/site-packages/pungi/util.py", line 596, in failable
    yield
  File "/usr/lib/python3.12/site-packages/pungi/phases/ostree_container.py", line 68, in process
    self.worker(compose, variant, arch, config)
  File "/usr/lib/python3.12/site-packages/pungi/phases/ostree_container.py", line 78, in worker
    self._clone_repo(
  File "/usr/lib/python3.12/site-packages/pungi/phases/ostree_container.py", line 184, in _clone_repo
    scm.get_dir_from_scm(
  File "/usr/lib/python3.12/site-packages/pungi/wrappers/scm.py", line 505, in get_dir_from_scm
    files_copied = copy_all(tmp_dir, target_path)
                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.12/site-packages/pungi/util.py", line 674, in copy_all
    shutil.copytree(source, destination)
  File "/usr/lib64/python3.12/shutil.py", line 588, in copytree
    return _copytree(entries=entries, src=src, dst=dst, symlinks=symlinks,
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib64/python3.12/shutil.py", line 486, in _copytree
    os.makedirs(dst, exist_ok=dirs_exist_ok)
  File "<frozen os>", line 225, in makedirs
FileExistsError: [Errno 17] File exists: '/mnt/koji/compose/rawhide/Fedora-Rawhide-20240117.n.0/work/ostree-3/config_repo/.git'
2024-01-17 21:15:02 [ERROR   ] [FAIL] Ostree container (variant Kinoite, arch x86_64) failed, but going on anyway.
2024-01-17 21:15:02 [ERROR   ] [Errno 17] File exists: '/mnt/koji/compose/rawhide/Fedora-Rawhide-20240117.n.0/work/ostree-1/config_repo/.git'
2024-01-17 21:15:02 [DEBUG   ] Traceback (most recent call last):
  File "/usr/lib/python3.12/site-packages/pungi/util.py", line 596, in failable
    yield
  File "/usr/lib/python3.12/site-packages/pungi/phases/ostree_container.py", line 68, in process
    self.worker(compose, variant, arch, config)
  File "/usr/lib/python3.12/site-packages/pungi/phases/ostree_container.py", line 78, in worker
    self._clone_repo(
  File "/usr/lib/python3.12/site-packages/pungi/phases/ostree_container.py", line 184, in _clone_repo
    scm.get_dir_from_scm(
  File "/usr/lib/python3.12/site-packages/pungi/wrappers/scm.py", line 505, in get_dir_from_scm
    files_copied = copy_all(tmp_dir, target_path)
                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.12/site-packages/pungi/util.py", line 674, in copy_all
    shutil.copytree(source, destination)
  File "/usr/lib64/python3.12/shutil.py", line 588, in copytree
    return _copytree(entries=entries, src=src, dst=dst, symlinks=symlinks,
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib64/python3.12/shutil.py", line 486, in _copytree
    os.makedirs(dst, exist_ok=dirs_exist_ok)
  File "<frozen os>", line 225, in makedirs
FileExistsError: [Errno 17] File exists: '/mnt/koji/compose/rawhide/Fedora-Rawhide-20240117.n.0/work/ostree-1/config_repo/.git'
2024-01-17 21:15:02 [ERROR   ] [FAIL] Ostree container (variant Onyx, arch x86_64) failed, but going on anyway.
2024-01-17 21:15:02 [ERROR   ] [Errno 17] File exists: '/mnt/koji/compose/rawhide/Fedora-Rawhide-20240117.n.0/work/ostree-4/config_repo/.git'
2024-01-17 21:15:02 [DEBUG   ] Traceback (most recent call last):
  File "/usr/lib/python3.12/site-packages/pungi/util.py", line 596, in failable
    yield
  File "/usr/lib/python3.12/site-packages/pungi/phases/ostree_container.py", line 68, in process
    self.worker(compose, variant, arch, config)
  File "/usr/lib/python3.12/site-packages/pungi/phases/ostree_container.py", line 78, in worker
    self._clone_repo(
  File "/usr/lib/python3.12/site-packages/pungi/phases/ostree_container.py", line 184, in _clone_repo
    scm.get_dir_from_scm(
  File "/usr/lib/python3.12/site-packages/pungi/wrappers/scm.py", line 505, in get_dir_from_scm
    files_copied = copy_all(tmp_dir, target_path)
                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.12/site-packages/pungi/util.py", line 674, in copy_all
    shutil.copytree(source, destination)
  File "/usr/lib64/python3.12/shutil.py", line 588, in copytree
    return _copytree(entries=entries, src=src, dst=dst, symlinks=symlinks,
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib64/python3.12/shutil.py", line 486, in _copytree
    os.makedirs(dst, exist_ok=dirs_exist_ok)
  File "<frozen os>", line 225, in makedirs
FileExistsError: [Errno 17] File exists: '/mnt/koji/compose/rawhide/Fedora-Rawhide-20240117.n.0/work/ostree-4/config_repo/.git'
2024-01-17 21:15:02 [INFO    ] [DONE ] ---------- PHASE: OSTREE_CONTAINER ----------
2024-01-17 21:15:02 [INFO    ] PHASE OSTREE_CONTAINER took 6 seconds

Not sure why those folders would already be there or why it's failing at this step.

I'm investigating more.

Thanks


Potential fix in https://pagure.io/pungi/pull-request/1713

@lsedlar made the same fix in https://pagure.io/pungi/pull-request/1711

The patch is merged and included in a F39 build.

Metadata Update from @lsedlar:
- Issue close_status updated to: Fixed
- Issue status updated to: Closed (was: Open)

This issue has been migrated to Fedora Forge:
https://forge.fedoraproject.org/pungi/pungi/issues/1712

Please continue any further discussion there.

Metadata
Related Pull Requests