Bug 20826 – CI breakage: create_dmd_release attempts to copy the complete dmd repo.
Status
RESOLVED
Resolution
FIXED
Severity
blocker
Priority
P1
Component
installer
Product
D
Version
D2
Platform
x86
OS
Windows
Creation time
2020-05-12T19:20:45Z
Last change time
2020-05-14T17:06:01Z
Keywords
pull
Assigned to
No Owner
Creator
Bastiaan Veelo
Comments
Comment #0 by Bastiaan — 2020-05-12T19:20:45Z
Currently the github dlang.installer (Build_Release) check is failing. This happens when create_dmd_release is copying the dmd sources to the release directory [1] with the line
copyDirVersioned(cloneDir~"/dmd/src", releaseDir~"/dmd2/src/dmd");
This causes "git ls-files" to be executed, which _should_ list the versioned files in cloneDir~"/dmd/src". Somehow though, it erroneously lists all versioned files as seen from the root of cloneDir. As a result the copy fails, because the files in the root (such as ".azure-pipelines/lib.sh") do not exist in the dmd/src subdirectory.
I suspect that "git ls-files" is having trouble with mixed directory separators (/ and \). Perhaps git has been updated, because the relevant lines in the installer have not changed in years.
[1] https://github.com/dlang/installer/blob/b4b6697017b6c6942437d8fa8922366677a7edc0/create_dmd_release/create_dmd_release.d#L556
Comment #1 by Bastiaan — 2020-05-12T20:01:37Z
> I suspect that "git ls-files" is having trouble with mixed directory separators (/ and \).
This can't be it, because we're apparently cd-ing into cloneDir~"/dmd/src" before calling "git ls-files". Excerpt of the log:
Entering dir: clones\dmd\src
Running: git ls-files
Entering dir: C:\Users\VssAdministrator\AppData\Local\Temp\tmp.201CBA
Copying the following files from
'C:\Users\VssAdministrator\AppData\Local\Temp\tmp.201CBA\clones/dmd/src' to 'C:\Users\VssAdministrator\AppData\Local\Temp\tmp.201CBA/dmd.master.windows/dmd2/src/dmd':
".azure-pipelines/lib.sh"
".azure-pipelines/windows-msbuild.bat"
Maybe the git bash sub shell does not notice "chdir"? Or is Phobos broken?
Comment #2 by dlang-bot — 2020-05-13T20:06:58Z
@veelo created dlang/installer pull request #452 "Fix CI checks." fixing this issue:
- Fix issue 20826 - CI breakage.
Pass the correct clone directory to create_dmd_release.
https://github.com/dlang/installer/pull/452
Comment #3 by dlang-bot — 2020-05-14T17:06:01Z
dlang/installer pull request #452 "Fix CI checks." was merged into master:
- 697b62d3bdd5951a2b7fad4d5e0feb3d5e9bc97a by Bastiaan Veelo:
Fix issue 20826 - CI breakage: create_dmd_release attempts to copy the complete dmd repo.
Pass the correct clone directory to create_dmd_release.
https://github.com/dlang/installer/pull/452