microsoft / azure-pipelines-tasks

Tasks for Azure Pipelines
https://aka.ms/tfbuild
MIT License
3.51k stars 2.62k forks source link

[enhancement]: DownloadFileshareArtifactsV1 - should not fallback on FileShare (or it should be an option) #20666

Open dcrespo-isaac opened 6 days ago

dcrespo-isaac commented 6 days ago

Task name

DownloadFileshareArtifactsV1

Describe your feature request here

Hi Team,


Context

I have a classic build pipeline that creates an artifact and publishes it to a file share each time it succeeds. To deploy this artifact, I created a nightly scheduled release pipeline based on it, the configuration of the artifact :

Default version : "Latest from specific branch with tags" Branch : Master | V6.00 | V5.12 .... Tags :

The pipeline failed the first night because the artifact was not found on the file share. The cleaning task ran over it and delete the minor version. That's expected sometimes. What I did not expect is the behavior that the pipeline had: it tried to download the whole file share, and let the system drive of the machine's agent with no space. The DownloadFileshareArtifactsV1 task downloads the whole fileshare instead of failing when not found.

Potential issues

Workarounds

Enhancement

The task should simply try to download the artifact. If not found, then fail the pipeline and let the team do their troubleshooting. Provide an option to fallback to the fileshare or another group of tasks in the release pipeline.

Since it's been like this for 6 years, people may be used to it. I understand if this enhancement is taken in reverse and the option becomes "Fail pipeline if artifact not found in fileshare." That would be obvious, but the whole point of this request is to make visible a default behavior that is not that predictable.

When adding an artifact to the release pipeline, the form should contain a checkbox for this option. The same should apply to other views that might use this task.


Thank you for the time taken with this issue Have a great day.