Skip to content
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

Query: How do people run pipelines concurrently with defined PVC workspaces? #5412

Open
chabeezy opened this issue Sep 1, 2022 · 12 comments
Labels
lifecycle/frozen Indicates that an issue or PR should not be auto-closed due to staleness.

Comments

@chabeezy
Copy link

chabeezy commented Sep 1, 2022

Hi,

First of all great work on tekton, it's a great product!

I was just curious, and I've struggled to find out a way to do this. I want to be able to run multiple pipelines at once, our use case is we run a set of tests on PR's when they are created/updated. It's possible for people to be pushing to different PR's at the same time. Thus triggering pipelines to run at the same time

Currently the pipeline queues up, I imagine this is because the workspace is in use.

Just wondering if its possible to give a selection of workspaces, or something similar? As in a pipeline has workspaces x,y and z. If x and y are in use, use z?

I've read you can use templates that will be deleted if you delete the pipeline run.. however I think we need to hold onto the pipeline runs for too long for that to work for us. Can you tear them down at the end of a pipeline run?

@jerop
Copy link
Member

jerop commented Sep 15, 2022

Just wondering if its possible to give a selection of workspaces, or something similar? As in a pipeline has workspaces x,y and z. If x and y are in use, use z?

@chabeezy wondering if you have a selection of pre-defined workspaces only because they aren't torn down when the pipelinerun are completed...or if there are other reasons

@chabeezy
Copy link
Author

chabeezy commented Sep 16, 2022

@jerop

Yes currently we don’t tear down the pipelines after each run, as we need to preserve the logs for a while.

We don’t have lots of space either so can’t create pvc templates as we’ll soon run out, or lose logs too soon due to deleting the pipeline run.

I’ve not implemented it yet, but my plan is

  • Send the logs to elasticsearch
  • I can then use a template for pvc and implement the cron job that deletes pipeline runs periodically.

@jerop
Copy link
Member

jerop commented Sep 16, 2022

@chabeezy you may be interested in the work that @adambkaplan is doing to persist logs in tekton - https://github.com/tektoncd/community/blob/main/teps/0117-tekton-results-logs.md

@austinzhao-go
Copy link
Contributor

thanks @jerop for linking my question to this discussion.

perhaps a related use case from my problem

Use Case
need a pvc to pass fetched secrets between Tasks in a PipelineRun

Expected:
pvc will be deleted upon the completion of PipelineRun as "grinding" the fetched creds   
Current:
pvc will be kept and only deleted when deleting the TaskRun/PipelineRun files

thank you @chabeezy for bringing up this FR discussion!

@tekton-robot
Copy link
Collaborator

Issues go stale after 90d of inactivity.
Mark the issue as fresh with /remove-lifecycle stale with a justification.
Stale issues rot after an additional 30d of inactivity and eventually close.
If this issue is safe to close now please do so with /close with a justification.
If this issue should be exempted, mark the issue as frozen with /lifecycle frozen with a justification.

/lifecycle stale

Send feedback to tektoncd/plumbing.

@tekton-robot tekton-robot added the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Jan 15, 2023
@tekton-robot
Copy link
Collaborator

Stale issues rot after 30d of inactivity.
Mark the issue as fresh with /remove-lifecycle rotten with a justification.
Rotten issues close after an additional 30d of inactivity.
If this issue is safe to close now please do so with /close with a justification.
If this issue should be exempted, mark the issue as frozen with /lifecycle frozen with a justification.

/lifecycle rotten

Send feedback to tektoncd/plumbing.

@tekton-robot tekton-robot added lifecycle/rotten Denotes an issue or PR that has aged beyond stale and will be auto-closed. and removed lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. labels Feb 14, 2023
@tekton-robot
Copy link
Collaborator

Rotten issues close after 30d of inactivity.
Reopen the issue with /reopen with a justification.
Mark the issue as fresh with /remove-lifecycle rotten with a justification.
If this issue should be exempted, mark the issue as frozen with /lifecycle frozen with a justification.

/close

Send feedback to tektoncd/plumbing.

@tekton-robot
Copy link
Collaborator

@tekton-robot: Closing this issue.

In response to this:

Rotten issues close after 30d of inactivity.
Reopen the issue with /reopen with a justification.
Mark the issue as fresh with /remove-lifecycle rotten with a justification.
If this issue should be exempted, mark the issue as frozen with /lifecycle frozen with a justification.

/close

Send feedback to tektoncd/plumbing.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

@jerop
Copy link
Member

jerop commented Apr 18, 2023

/reopen
/lifecycle frozen

issue is not addressed

@tekton-robot tekton-robot reopened this Apr 18, 2023
@tekton-robot
Copy link
Collaborator

@jerop: Reopened this issue.

In response to this:

/reopen
/lifecycle frozen

issue is not addressed

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

@tekton-robot tekton-robot removed the lifecycle/rotten Denotes an issue or PR that has aged beyond stale and will be auto-closed. label Apr 18, 2023
@github-project-automation github-project-automation bot moved this from Done to In Progress in Tekton Community Roadmap Apr 18, 2023
@tekton-robot tekton-robot added the lifecycle/frozen Indicates that an issue or PR should not be auto-closed due to staleness. label Apr 18, 2023
@pritidesai
Copy link
Member

thanks @jerop for linking my question to this discussion.

perhaps a related use case from my problem

Use Case
need a pvc to pass fetched secrets between Tasks in a PipelineRun

Expected:
pvc will be deleted upon the completion of PipelineRun as "grinding" the fetched creds   
Current:
pvc will be kept and only deleted when deleting the TaskRun/PipelineRun files

thank you @chabeezy for bringing up this FR discussion!

@austinzhao-go I have the PoC created here - #6635 Please let me know if this works for you. Thanks!

@lbernick
Copy link
Member

It sounds like this feature request has a few parts:

  1. allowing PVCs to be deleted after pipelinerun completion: Allow PVC of completed PipelineRun to be deleted #5776
  2. automatic log uploads of completed taskruns: This has been implemented in the results project
  3. Automatic deletion of pipelineruns after completion: Proposed in TEP-0052 (https://github.com/tektoncd/community/blob/main/teps/0052-tekton-results-automated-run-resource-cleanup.md)
  4. queueing pipelineruns: Tekton Queue. Concurrency #5835

@chabeezy are there other components I'm missing? I think we may want to close out this issue since we're tracking each of these improvements in separate issues.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
lifecycle/frozen Indicates that an issue or PR should not be auto-closed due to staleness.
Projects
Status: In Progress
Development

No branches or pull requests

6 participants