@@ -3,28 +3,34 @@ package config
33import (
44 "strconv"
55
6- middlewareTypes "github.com/codeshelldev/secured-signal-api/internals/proxy/middlewares/types"
76 "github.com/codeshelldev/secured-signal-api/utils"
87 log "github.com/codeshelldev/secured-signal-api/utils/logger"
98 "github.com/knadh/koanf/parsers/yaml"
109)
1110
12- var tokens []map [string ]any
11+ type TOKEN_CONFIG_ struct {
12+ TOKENS []string `koanf:"tokens"`
13+ OVERRIDES SETTING_ `koanf:"overrides"`
14+ }
1315
1416func LoadTokens () {
1517 log .Debug ("Loading Configs " , ENV .TOKENS_DIR )
1618
17- tokens = LoadDir (ENV .TOKENS_DIR , yaml .Parser ())
19+ LoadDir ("tokenConfigs" , ENV .TOKENS_DIR , tokensLayer , yaml .Parser ())
1820
19- log .Dev (utils .ToJson (tokens ))
21+ log .Dev (utils .ToJson (tokensLayer . All () ))
2022}
2123
2224func InitTokens () {
2325 apiTokens := config .Strings ("api.tokens" )
2426
25- log .Dev (utils .ToJson (tokens ))
27+ var tokenConfigs []TOKEN_CONFIG_
28+
29+ tokensLayer .Unmarshal ("tokenConfigs" , & tokenConfigs )
30+
31+ log .Dev (utils .ToJson (tokenConfigs ))
2632
27- overrides := ParseTokenConfigs (tokens )
33+ overrides := ParseTokenConfigs (tokenConfigs )
2834
2935 for token , override := range overrides {
3036 apiTokens = append (apiTokens , token )
@@ -51,16 +57,12 @@ func InitTokens() {
5157 }
5258}
5359
54- func ParseTokenConfigs (configs []map [ string ] any ) (map [string ]SETTING_ ) {
60+ func ParseTokenConfigs (configs []TOKEN_CONFIG_ ) (map [string ]SETTING_ ) {
5561 settings := map [string ]SETTING_ {}
5662
5763 for _ , config := range configs {
58- for _ , token := range config ["tokens" ].([]string ) {
59- settings [token ] = SETTING_ {
60- BLOCKED_ENDPOINTS : config ["override.blockedendpoints" ].([]string ),
61- VARIABLES : config ["overrides.variables" ].(map [string ]any ),
62- MESSAGE_ALIASES : config ["overrides.messagealiases" ].([]middlewareTypes.MessageAlias ),
63- }
64+ for _ , token := range config .TOKENS {
65+ settings [token ] = config .OVERRIDES
6466 }
6567 }
6668
0 commit comments