-
Notifications
You must be signed in to change notification settings - Fork 1.8k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Allow passing individual files or sets of files as Task inputs/outputs #259
Comments
@abayer would you expect any files in the container to be fair game, or only those that are mounted at Is it possible to add a use case to demonstrate when we'd see this in action? |
I’d say only those under |
And a use case: Imagine building on Kubernetes, but not targeting Kubernetes. Say we need to build an artifact (let's go with a war file for now), and then for whatever reason, we need to run tests of that war file on different Linux distributions, but we have to use the exact same artifact we built, rather than rebuilding again. Silly, yeah, but this is a contrived example. =) We only need to copy that one file from the Task that built the war to the 1..n other Tasks that are going to run tests against that war in parallel. That make sense? |
Makes sense @abayer ! I updated the description with an example, feel free to fix it if this doesn't reflect what you're looking for. |
The file set resource (#1285 ) might address this? |
Expected Behavior
A file pattern can be given as an output for a
Task
, with the files in the workspace matching that pattern "archived" and able to be used as an input resource for anotherTask
.Use case
Imagine building on Kubernetes, but not targeting Kubernetes. Say we need to build an artifact (let's go with a war file for now), and then for whatever reason, we need to run tests of that war file on different Linux distributions, but we have to use the exact same artifact we built, rather than rebuilding again. Silly, yeah, but this is a contrived example. =) We only need to copy that one file from the Task that built the war to the 1..n other Tasks that are going to run tests against that war in parallel.
Actual Behavior
PipelineResources
would be to use GCS (which would upload and download the files between Tasks) or Git (which would check out the contents of a git repo unnecessarily)Steps to reproduce
The output-pipelinerun.yaml example is a great example of this. The whole point of this example is to write files and share them between Tasks, but a git repo is required to do this.
Additional Info
Depends on #255
The text was updated successfully, but these errors were encountered: