Since symlinks are not preserved, we abandoned using stash and instead we are now allocating a node for the entire pipeline, even when that node could be released back to the pool during certain stages. I would love to revisit our workaround and improve node utilization, having stash handle symlinks would make this very easy. Are there other alternative ideas to allow a pipeline to save state containing symlinks across stages on different nodes/workspaces?
Use tar and decide in your script which options to pass to get the desired behavior: preserving symlinks, preserving other special files, preserving owner, preserving mode, etc.