From bd7341aae49d6d615f5237513c94997a50fce914 Mon Sep 17 00:00:00 2001 From: Richard Cox Date: Mon, 7 Jul 2025 20:15:37 +0100 Subject: [PATCH] Ensure correct syntax is used with SSP and the secret selectors - two fixes, two places - Fix - ensure filter=x=1,x=2 format is used and not filter=x=1,2 - this must have worked at some point... - Fix - ensure partial filter is used when searching secrets by name - same here... - SimpleSecretSelector is only used in monitoring alertmanager receive config - See issue for repro steps - whoever created it should have used SecretSelector instead - SecretSelector is only used in logging output providers - Logging --> Outputs --> Create --> Outputs tab --> Access secret fields --- shell/components/form/SecretSelector.vue | 11 +++++++++-- shell/components/form/SimpleSecretSelector.vue | 11 +++++++++-- 2 files changed, 18 insertions(+), 4 deletions(-) diff --git a/shell/components/form/SecretSelector.vue b/shell/components/form/SecretSelector.vue index 7f164582f7..463f1ac93e 100644 --- a/shell/components/form/SecretSelector.vue +++ b/shell/components/form/SecretSelector.vue @@ -173,11 +173,18 @@ export default { paginatePageOptions(opts) { const { opts: { filter } } = opts; - const filters = !!filter ? [PaginationParamFilter.createSingleField({ field: 'metadata.name', value: filter })] : []; + const filters = !!filter ? [PaginationParamFilter.createSingleField({ + field: 'metadata.name', value: filter, exact: false, equals: true + })] : []; filters.push( PaginationParamFilter.createSingleField({ field: 'metadata.namespace', value: this.namespace }), - PaginationParamFilter.createSingleField({ field: 'metadata.fields.1', value: this.types.join(',') }) + PaginationParamFilter.createMultipleFields(this.types.map((t) => ({ + field: 'metadata.fields.1', + equals: true, + exact: true, + value: t + }))) ); return { diff --git a/shell/components/form/SimpleSecretSelector.vue b/shell/components/form/SimpleSecretSelector.vue index 4c20ec56a5..d43a5590c5 100644 --- a/shell/components/form/SimpleSecretSelector.vue +++ b/shell/components/form/SimpleSecretSelector.vue @@ -156,11 +156,18 @@ export default { paginatePageOptions(opts) { const { opts: { filter } } = opts; - const filters = !!filter ? [PaginationParamFilter.createSingleField({ field: 'metadata.name', value: filter })] : []; + const filters = !!filter ? [PaginationParamFilter.createSingleField({ + field: 'metadata.name', value: filter, exact: false, equals: true + })] : []; filters.push( PaginationParamFilter.createSingleField({ field: 'metadata.namespace', value: this.namespace }), - PaginationParamFilter.createSingleField({ field: 'metadata.fields.1', value: this.types.join(',') }) + PaginationParamFilter.createMultipleFields(this.types.map((t) => ({ + field: 'metadata.fields.1', + equals: true, + exact: true, + value: t + }))) ); return {