File tree Expand file tree Collapse file tree 2 files changed +35
-0
lines changed Expand file tree Collapse file tree 2 files changed +35
-0
lines changed Original file line number Diff line number Diff line change @@ -145,6 +145,10 @@ func (a *AWSSecretsManagerProvider) Register(secret secrets.GenericSecret) secre
145145	a .mtx .Lock ()
146146	defer  a .mtx .Unlock ()
147147	if  f , OK  :=  a .fetchers [s .SecretARN ]; OK  {
148+ 		if  s .RefreshInterval  <=  0  {
149+ 			a .logger .Info ("setting default refresh interval for" , "ARN" , s .SecretARN )
150+ 			s .RefreshInterval  =  time .Minute  *  5 
151+ 		}
148152		a .logger .Info ("found an existing secret fetcher" , "ARN" , s .SecretARN )
149153		f .update (s .RefreshInterval )
150154		a .newFetchers [s .SecretARN ] =  struct {}{}
Original file line number Diff line number Diff line change @@ -428,6 +428,37 @@ func TestRegisterSecret(t *testing.T) {
428428	provider .Stop ()
429429}
430430
431+ func  TestRegisterMultipleSecretsNoRefreshInterval (t  * testing.T ) {
432+ 	reg  :=  prometheus .NewPedanticRegistry ()
433+ 	ctx , cancel  :=  context .WithCancel (context .Background ())
434+ 	options  :=  secrets.SecretProviderOptions {
435+ 		Logger :     promslog .NewNopLogger (),
436+ 		Registerer : reg ,
437+ 		Context :    ctx ,
438+ 	}
439+ 	provider  :=  NewAWSSecretsManagerProvider (options )
440+ 	secretOne  :=  secrets.GenericSecret {
441+ 		AWSSecretsManagerConfig : secrets.AWSSecretsManagerConfig {
442+ 			SecretARN : "arn:aws:secretsmanager:us-west-2:123456789:secret:receiver-pager-duty" ,
443+ 			SecretKey : "key1" ,
444+ 		},
445+ 	}
446+ 	secretOneCopy  :=  secrets.GenericSecret {
447+ 		AWSSecretsManagerConfig : secrets.AWSSecretsManagerConfig {
448+ 			SecretARN : "arn:aws:secretsmanager:us-west-2:123456789:secret:receiver-pager-duty" ,
449+ 			SecretKey : "key2" ,
450+ 		},
451+ 	}
452+ 	provider .Register (secretOne )
453+ 	require .Equal (t , 1 , provider .fetchersCount ())
454+ 
455+ 	provider .Register (secretOneCopy )
456+ 	require .Equal (t , 1 , provider .fetchersCount ())
457+ 
458+ 	cancel ()
459+ 	provider .Stop ()
460+ }
461+ 
431462type  MockSecretsManagerClient  struct  {
432463	secretsmanager.Client 
433464	secrets             map [string ]string 
    
 
   
 
     
   
   
          
     
  
    
     
 
    
      
     
 
     
    You can’t perform that action at this time.
  
 
    
  
     
    
      
        
     
 
       
      
     
   
 
    
    
  
 
  
 
     
    
0 commit comments