AcademySoftwareFoundation / rez

An integrated package configuration, build and deployment system for software
https://rez.readthedocs.io
Apache License 2.0
932 stars 329 forks source link

Access denied while renaming folder via rez cp from Windows #1665

Closed loonghao closed 5 months ago

loonghao commented 6 months ago

We get a Access denied issue when using rez cp on our windows virtual ci machine.

I found some similar issue. https://github.com/conan-io/conan/issues/6560

Environment

Error logs

rez cp --overwrite --paths=S:\ci\tmp\tmpxj33kx9cthm_ci_builds\temp\build_uxpfuk0z --dest-path=S:\ci\tmp\tmpsard1kmdthm_ci_builds\temp\egp04vyq --reversion=7.3.133 --force --allow-empty marvelous_designer-7.3.133
Traceback (most recent call last):
  File "s:\rez-cache\rez\3.0.0\platform-windows\Vendor\Python\Lib\runpy.py", line 197, in _run_module_as_main
    return _run_code(code, main_globals, None,
  File "s:\rez-cache\rez\3.0.0\platform-windows\Vendor\Python\Lib\runpy.py", line 87, in _run_code
    exec(code, run_globals)
  File "s:\rez-cache\rez\3.0.0\platform-windows\Scripts\rez_exe\rez.exe\__main__.py", line 7, in <module>
  File "s:\rez-cache\rez\3.0.0\platform-windows\rez\cli\_entry_points.py", line 69, in run_rez
    return run()
  File "s:\rez-cache\rez\3.0.0\platform-windows\rez\cli\_main.py", line 191, in run
    returncode = run_cmd()
  File "s:\rez-cache\rez\3.0.0\platform-windows\rez\cli\_main.py", line 183, in run_cmd
    return func(opts, opts.parser, extra_arg_groups)
  File "s:\rez-cache\rez\3.0.0\platform-windows\rez\cli\cp.py", line 156, in command
    result = copy_package(
  File "s:\rez-cache\rez\3.0.0\platform-windows\rez\package_copy.py", line 198, in copy_package
    _copy_variant_payload(
  File "s:\rez-cache\rez\3.0.0\platform-windows\rez\package_copy.py", line 335, in _copy_variant_payload
    maybe_symlink(src_path, dest_path)
  File "s:\rez-cache\rez\3.0.0\platform-windows\rez\utils\filesystem.py", line 273, in replacing_copy
    replace_file_or_dir(dest, tmp_dest)
  File "s:\rez-cache\rez\3.0.0\platform-windows\rez\utils\filesystem.py", line 286, in replace_file_or_dir
    os.rename(source, dest)
PermissionError: [WinError 5] 拒绝访问。: 's:\\ci\\tmp\\tmpsard1kmdthm_ci_builds\\temp\\egp04vyq\\marvelous_designer\\7.3.133\\platform-windows\\_tmp-bin-1080e263bb71424ba81d97ffe57ee5b6' -> 's:\\ci\\tmp\\tmpsard1kmdthm_ci_builds\\temp\\egp04vyq\\marvelous_designer\\7.3.133\\platform-windows\\bin'