dotnet / dotnet/arcade-services
PushToAzureDevOpsArtifacts should check for rooted paths for Blobs
- Dominant language
- C#
- Stars
- 86
- Forks
- 86
- Avg merge
- 1d 8h
- Merged PRs (30d)
- 35
Description
- [ ] This issue is blocking
- [ ] This issue is causing unreasonable pain
For blob artifacts published, the RelativeBlobPath specifies where a blob gets published in the output storage container. If this path is rooted, for example /wixpack/foobarbaz.zip, publishing still works. you end up with an empty virtual folder at the root of the container, then one called wixpack, etc. However, signing will not work.
This is because gather-drop attempts to download and put artifacts under //. This is done by doing a `Path.Combine` between the relative blob path and the drop root. When the RelativeBlobPath is rooted, though...the drop-root and shipping/nonshipping elements are ignored and the file ends up at the root of the drive. This technically 'works', but is incorrect. In addition, signing will attempt to find files specified in the manifest for signing in the drop output. It can't find things in the expected location, and then fails.
When calling PushToAzureDevOpsArtifacts, there should be a check that each RelativeBlobPath is not rooted.
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.