(config Config)
| 93 | } |
| 94 | |
| 95 | func Ensure(config Config) Config { |
| 96 | retConfig := config |
| 97 | if retConfig == nil { |
| 98 | retConfig = NewConfig(nil, nil, nil, nil, nil, nil, "") |
| 99 | } |
| 100 | if retConfig.Raw() == nil { |
| 101 | retConfig = NewConfig(map[string]interface{}{}, retConfig.RawBeforeConversion(), retConfig.Config(), retConfig.LocalCache(), retConfig.RemoteCache(), retConfig.Variables(), retConfig.Path()) |
| 102 | } |
| 103 | if retConfig.RawBeforeConversion() == nil { |
| 104 | retConfig = NewConfig(retConfig.Raw(), map[string]interface{}{}, retConfig.Config(), retConfig.LocalCache(), retConfig.RemoteCache(), retConfig.Variables(), retConfig.Path()) |
| 105 | } |
| 106 | if retConfig.Config() == nil { |
| 107 | retConfig = NewConfig(retConfig.Raw(), retConfig.RawBeforeConversion(), latest.NewRaw(), retConfig.LocalCache(), retConfig.RemoteCache(), retConfig.Variables(), retConfig.Path()) |
| 108 | } |
| 109 | if retConfig.LocalCache() == nil { |
| 110 | retConfig = NewConfig(retConfig.Raw(), retConfig.RawBeforeConversion(), retConfig.Config(), localcache.New(""), retConfig.RemoteCache(), retConfig.Variables(), retConfig.Path()) |
| 111 | } |
| 112 | if retConfig.Variables() == nil { |
| 113 | retConfig = NewConfig(retConfig.Raw(), retConfig.RawBeforeConversion(), retConfig.Config(), retConfig.LocalCache(), retConfig.RemoteCache(), map[string]interface{}{}, retConfig.Path()) |
| 114 | } |
| 115 | |
| 116 | if config != nil { |
| 117 | runtimeVars := config.ListRuntimeVariables() |
| 118 | for k, v := range runtimeVars { |
| 119 | retConfig.SetRuntimeVariable(k, v) |
| 120 | } |
| 121 | } |
| 122 | |
| 123 | return retConfig |
| 124 | } |
no test coverage detected