This repository was archived by the owner on Jul 26, 2022. It is now read-only.
File tree 2 files changed +41
-2
lines changed
2 files changed +41
-2
lines changed Original file line number Diff line number Diff line change @@ -205,11 +205,16 @@ class Poller {
205
205
206
206
const externalData = descriptor . data || descriptor . properties
207
207
const namingConvention = namespace . metadata . annotations [ this . _namingPermittedAnnotation ]
208
+ let reNaming = new RegExp ( )
209
+ if ( Array . isArray ( namingConvention ) ) {
210
+ reNaming = new RegExp ( namingConvention . join ( '|' ) )
211
+ } else {
212
+ reNaming = new RegExp ( namingConvention )
213
+ }
208
214
209
215
// Testing data property
210
216
if ( namingConvention && externalData ) {
211
217
externalData . forEach ( ( secretProperty , index ) => {
212
- const reNaming = new RegExp ( namingConvention )
213
218
if ( ! reNaming . test ( secretProperty . key ) ) {
214
219
allowed = false
215
220
reason = `key name ${ secretProperty . key } does not match naming convention ${ namingConvention } `
@@ -224,7 +229,6 @@ class Poller {
224
229
const externalDataFrom = descriptor . dataFrom
225
230
if ( namingConvention && externalDataFrom ) {
226
231
externalDataFrom . forEach ( ( secretProperty , index ) => {
227
- const reNaming = new RegExp ( namingConvention )
228
232
if ( ! reNaming . test ( secretProperty ) ) {
229
233
allowed = false
230
234
reason = `key name ${ secretProperty } does not match naming convention ${ namingConvention } `
Original file line number Diff line number Diff line change @@ -876,6 +876,41 @@ describe('Poller', () => {
876
876
]
877
877
} ,
878
878
permitted : false
879
+ } ,
880
+ {
881
+ // test multiple regex data
882
+ ns : { metadata : { annotations : { [ namingPermittedAnnotation ] : [ 'dev/team-a/.*' , 'common/.*' ] } } } ,
883
+ descriptor : {
884
+ data : [
885
+ { key : 'dev/team-a/ok-secret' , name : 'somethingelse' } ,
886
+ { key : 'common/generic-secret' , name : 'genericsecret' }
887
+ ]
888
+ } ,
889
+ permitted : true
890
+ } ,
891
+ {
892
+ // test multiple regex data
893
+ ns : { metadata : { annotations : { [ namingPermittedAnnotation ] : [ 'dev/team-a/.*' , 'common/.*' ] } } } ,
894
+ descriptor : {
895
+ data : [
896
+ { key : 'dev/team-b/nok-secret' , name : 'somethingelse' } ,
897
+ { key : 'common/generic-secret' , name : 'genericsecret' }
898
+ ]
899
+ } ,
900
+ permitted : false
901
+ } ,
902
+ {
903
+ // test multiple regex data
904
+ ns : { metadata : { annotations : { [ namingPermittedAnnotation ] : [ 'dev/team-b/.*' , 'common/.*' ] } } } ,
905
+ descriptor : {
906
+ data : [
907
+ { key : 'common/generic-secret' , name : 'genericsecret' }
908
+ ] ,
909
+ dataFrom : [
910
+ 'common/generic-secret'
911
+ ]
912
+ } ,
913
+ permitted : true
879
914
}
880
915
]
881
916
You can’t perform that action at this time.
0 commit comments