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

Add regexp filtering for object names #117

Open
Dragonn opened this issue Oct 4, 2021 · 1 comment
Open

Add regexp filtering for object names #117

Dragonn opened this issue Oct 4, 2021 · 1 comment

Comments

@Dragonn
Copy link
Contributor

Dragonn commented Oct 4, 2021

Hello,

is it possible to change object filtering method from full-match to regexps? I am trying to filter out bootstrap secrets in kube-system which are regenerated quite often within our cluster. TBH I am not sure if it would be backward compatible change, but I suppose there are should not be any object with regexp special chars in its name.

My object it self looks like:

apiVersion: v1
data:
  description: UHJveHkgZm9yIG1hbmFnaW5nIFRUTCBmb3IgdGhlIGt1YmVhZG0tY2VydHMgc2VjcmV0
  expiration: MjAyMS0xMC0wNFQxMjo1NDoyNCswMjowMA==
  token-id: ZHk0NzAx
  token-secret: NWNsd3dhMDR1MmdvYzlybg==
kind: Secret
metadata:
  creationTimestamp: "2021-10-04T08:54:24Z"
  name: bootstrap-token-dy4701
  namespace: kube-system
  resourceVersion: "39193931"
  selfLink: /api/v1/namespaces/kube-system/secrets/bootstrap-token-dy4701
  uid: 52455422-5d34-48c8-96d2-6c8bd75b6da4
type: bootstrap.kubernetes.io/token

Unfortunately I am unable to find and suitable configuration to filter these object because it's generic Kind=Secret, lives in namespace kube-system and doesn't have any labels on it. It has type: bootstrap.kubernetes.io/token but there is no way to match it.

commit 072185dc66bbcbde9ddf1069c9ffd49d50e09826
Author: Katafygio <katafygio@localhost>
Date:   Mon Oct 4 08:54:29 2021 +0000

    Kubernetes cluster change

 kube-system/secret-bootstrap-token-dy4701.yaml | 12 ++++++++++++
 1 file changed, 12 insertions(+)

commit 018c949d8ad7a4ea87f7f5f56f8f252621697d1b
Author: Katafygio <katafygio@localhost>
Date:   Mon Oct 4 07:48:19 2021 +0000

    Kubernetes cluster change

 kube-system/secret-bootstrap-token-ui6rd5.yaml | 12 ------------
 1 file changed, 12 deletions(-)

commit be2ff0b5746a6e6932ec0130959d32cfc82f1ecd
Author: Katafygio <katafygio@localhost>
Date:   Mon Oct 4 07:17:39 2021 +0000

    Kubernetes cluster change

 kube-system/secret-bootstrap-token-34p0v2.yaml | 12 ++++++++++++
 1 file changed, 12 deletions(-)
@adelwin
Copy link

adelwin commented Nov 19, 2021

I have similar usecase.
My usecase is i want to exclude certain objects with a known pattern in the annotation.

There's a current feature to filter (inclusive) based on labels, perhaps we can extend this to be exclusive,
So rather than "select objects matching" using --filter, we can have also have "exclude objects matching" using --exclude.

And also, to match not only based on labels, but also annotations.
Yes, I understand that labels are to be used for selection, not annotations.
But most controllers out there actually only annotate objects, they dont label.
And they can be noisy.

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

No branches or pull requests

2 participants