The winfs-injector fails on the last step when attempting to rename the tile from a .pivotal.zip to a .pivotal file.
This issue is only reproducible on Windows (Windows 10, Windows Server 2019/2022).
Error Output:
rename C:\Temp\pas-windows-4.0.21-build.3-injected.pivotal.zip C:\Temp\pas-windows-4.0.21-build.3-injected.pivotal: The process cannot access the file because it is being used by another process.
Reproduction steps
Run the winfs-injector on Windows
Last step produces an error
File remains pivotal.zip
Expected behavior
The injector should not fail on Windows and the output tile should have the extension .pivotal
Additional context
It seems that the github.com/jhoonb/archivex dependency used to create the zip is not correctly closing the zip file after completion. While it does seem to close the writer from zip.NewWriter, it does not close the file from os.Create.
https://github.com/jhoonb/archivex/blob/master/archivex.go#L64
On windows, this results in a permission denied because the file is still opened.
Local testing with a revised version of archivex seems to fix the issue.
We have created an issue in Pivotal Tracker to manage this. Unfortunately, the Pivotal Tracker project is private so you may be unable to view the contents of the story.
The labels on this github issue will be updated when the story is started.
Describe the bug
The winfs-injector fails on the last step when attempting to rename the tile from a
.pivotal.zip
to a.pivotal
file. This issue is only reproducible on Windows (Windows 10, Windows Server 2019/2022).Error Output:
Reproduction steps
pivotal.zip
Expected behavior
The injector should not fail on Windows and the output tile should have the extension
.pivotal
Additional context
It seems that the
github.com/jhoonb/archivex
dependency used to create the zip is not correctly closing the zip file after completion. While it does seem to close the writer fromzip.NewWriter
, it does not close the file fromos.Create
. https://github.com/jhoonb/archivex/blob/master/archivex.go#L64 On windows, this results in a permission denied because the file is still opened.Local testing with a revised version of
archivex
seems to fix the issue.