-
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
feature request: snapshot pipeline data in pipelineRun for historical and repeatability purposes #279
Comments
@pivotal-nader-ziada would this include also caching this (no worries if it makes more sense to tackle that separately) Also @mattmoor 's suggestion about having a similar Any other ideas? |
you mean creating a new version of the pipeline every time its changed? might be too much versions and we then the pipelineRun needs to have the ability to select which version to use if not latest. To clarify, yes, I would expect the PipelineRun to make a copy of the Pipeline and use that in any reconcile until this run is finished. |
I think that having the ability to select the version of a Pipeline/Task to run could be useful in some cases. For example, if you have a Task that is used in a few Pipelines, and you want to update it, you will probably want to test your updates on a single Pipeline to make sure it works before you force all Pipelines to use the new version of the Task for new builds. You can always do this with a kind of poor man's versioning in the Pipeline/Task name manually (i.e. Even if we did have Pipeline/Task versioning, and PipelineRun held references to immutable versions of Pipelines/Tasks, I think you'd still need to copy them into the PipelineRun in some way if we expect users to be getting build info by looking at the PipelineRun directly, so the issue as-described seems like something we definitely want. |
Note that |
I think what we'd do is create a new version of the Pipeline when a PipelineRun is triggered, so something like:
That's an interesting use case @dwnusbaum - thanks for the tip @mattmoor ! - sounds to me like we need to get an issue going to talk about the story around how a person would try out changes to their Pipeline (ideally we can get to a point where you can make changes to your Pipeline yamls and try them out in a PR or similar without effecting your actual Pipeline) |
Playing into this, I just asked a question in slack:
As I said, I could be misreading how this actually works at the moment, but it sure feels like adding a |
In the current behaviour this wouldn't happen (i dont think) b/c what triggers the reconcile to occur is:
(Created #299 to look into this further) |
@imjasonh relevant to your current investigations! |
Stale issues rot after 30d of inactivity. /lifecycle rotten Send feedback to tektoncd/plumbing. |
Expected Behavior
When a PipelineRun is created and it expands the pipeline reference, it should include the complete copy of the pipeline yaml so that if the pipeline changes, a user can tell which actual pipeline the results came from.
Actual Behavior
No information is about the Pipeline is added in the PipelineRun
Steps to Reproduce the Problem
will show the pipelineRun yaml with no information about the contents of the pipeline itself
Additional Info
The text was updated successfully, but these errors were encountered: