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

Fix gitauth secrets cleanup #1766

Open
wants to merge 3 commits into
base: main
Choose a base branch
from

Conversation

enarha
Copy link
Contributor

@enarha enarha commented Sep 24, 2024

The gitauth secrets are created before the pipelineRun and deleted through ownerRef when the pipelineRun is deleted. This fixes the issue where the secrets are left in the namespace if the pipelineRun creation fails, hitting the secrets quota and blocking subsequent pipelineRuns.

Changes

Submitter Checklist

  • 📝 Please ensure your commit message is clear and informative. For guidance on crafting effective commit messages, refer to the How to write a git commit message guide. We prefer the commit message to be included in the PR body itself rather than a link to an external website (ie: Jira ticket).

  • ♽ Before submitting a PR, run make test lint to avoid unnecessary CI processing. For an even more efficient workflow, consider installing pre-commit and running pre-commit install in the root of this repository.

  • ✨ We use linters to maintain clean and consistent code. Please ensure you've run make lint before submitting a PR. Some linters offer a --fix mode, which can be executed with the command make fix-linters (ensure markdownlint and golangci-lint tools are installed first).

  • 📖 If you're introducing a user-facing feature or changing existing behavior, please ensure it's properly documented.

  • 🧪 While 100% coverage isn't a requirement, we encourage unit tests for any code changes where possible.

  • 🎁 If feasible, please check if an end-to-end test can be added. See README for more details.

  • 🔎 If there's any flakiness in the CI tests, don't necessarily ignore it. It's better to address the issue before merging, or provide a valid reason to bypass it if fixing isn't possible (e.g., token rate limitations).

The gitauth secrets are created before the pipelineRun and deleted
through ownerRef when the pipelineRun is deleted. This fixes the issue
where the secrets are left in the namespace if the pipelineRun creation
fails, hitting the secrets quota and blocking subsequent pipelineRuns.
Copy link

codecov bot commented Sep 24, 2024

Codecov Report

Attention: Patch coverage is 15.38462% with 11 lines in your changes missing coverage. Please review.

Project coverage is 65.14%. Comparing base (9e71fa3) to head (713795d).

Files with missing lines Patch % Lines
pkg/pipelineascode/pipelineascode.go 15.38% 10 Missing and 1 partial ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main    #1766      +/-   ##
==========================================
- Coverage   65.16%   65.14%   -0.02%     
==========================================
  Files         174      174              
  Lines       13246    13250       +4     
==========================================
  Hits         8632     8632              
- Misses       4041     4045       +4     
  Partials      573      573              

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

Copy link
Member

@savitaashture savitaashture left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we add e2e to make sure this behavior
I mean secret gets deleted when creation of Pipelinerun fails

@@ -14,6 +14,7 @@ import (
type Interface interface {
CleanupPipelines(context.Context, *zap.SugaredLogger, *v1alpha1.Repository, *pipelinev1.PipelineRun, int) error
CreateSecret(ctx context.Context, ns string, secret *corev1.Secret) error
DeleteSecret(context.Context, *zap.SugaredLogger, string, string) error
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

it's weird that the validation didn't check that it wasn't exported

@chmouel
Copy link
Member

chmouel commented Oct 1, 2024

I think it's kinda hard to e2e test this, to fake the cluster failure while creating the secret...

i am good to skip the e2e for that one

/lgtm

@chmouel chmouel self-requested a review October 1, 2024 11:21
@zakisk
Copy link
Contributor

zakisk commented Oct 4, 2024

/test

@chmouel
Copy link
Member

chmouel commented Oct 8, 2024

/retest

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

4 participants