microsoft / azure-pipelines-tasks

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

[enhancement]: PublishPipelineArtifact/DownloadPipelineArtifact for On Prem / Server #19698

Open msherms2 opened 8 months ago

msherms2 commented 8 months ago

Task name

PublishPipelineArtifact/DownloadPipelineArtifact

Describe your feature request here

I cannot for the life of me find any reason that this is not available for On Prem / Server. Both equivalent PublishBuildArtifact/DownloadBuildArtifact operations are horribly inefficient and surely can be improved. Given you're able to use it with services and thus over a connection, surely this should easily be supported for On prem.

If you can't just enable them for On Prem, can you improve the disastrous performance of the Build equivalents? For many small files it falls apart, and ultimately seems like an unnecessary problem to have in 2024.

github-actions[bot] commented 2 months ago

This issue is stale because it has been open for 180 days with no activity. Remove the stale label or comment on the issue otherwise this will be closed in 5 days

msherms2 commented 2 months ago

It isn't stale, they're just ignoring it.

sudomoke commented 3 weeks ago

Please provide the version of build agent, and the version of onprem server you are currently using. Are you running your build agents on windows or linux?

sudomoke commented 3 weeks ago

Can you please describe which specific versions of tasks you were attempting to use?

For example, were you attempting to use PublishPipelineArtifact@0 or PublishPipelineArtifact@1 ?

msherms2 commented 3 weeks ago

We just updated over the weekend so I only have the old agent version (2.210.1). We host our own backing VMs or docker containers to use in the pipelines.

https://learn.microsoft.com/en-us/azure/devops/pipelines/tasks/reference/publish-pipeline-artifact-v1?view=azure-pipelines

This straight out says it is not supported, but no reasoning why. Any ideas? I did confirm that if i use it, the error it states does occur.

sudomoke commented 3 weeks ago

Please attempt to use the version 0 of the step. I suspect the documentation is defaulting you to the newer version ( version 1, which is not supported on prem).

https://learn.microsoft.com/en-us/azure/devops/pipelines/tasks/reference/publish-pipeline-artifact-v0?view=azure-pipelines

Edit: This may solve your speed issue, but does nothing to answer why v1 isnt supported. Unfortunately i dont know... long term onprem probably wont exist soon anyhow (just my guess).

msherms2 commented 3 weeks ago

Yeah, I was all set to try it and then realized your link above is for services, as well. As soon as you change it to server 2022 it tells you version 0 is also not supported.

I guess I get not spending effort if they plan to deprecate server, which probably isn't a very good decision given that businesses like DOD stuff exist that can't use cloud. But either way, yeah, fixing DownloadBuildArtifact and PublishBuildArtifact from being so lousy performance wise would be fine, too. I'm hoping that this gets traction but I'm suspecting it won't be investigated. Thank you for at least looking!