MCPcopy Create free account
hub / github.com/GetStream/stream-cli / GetInitConfig

Function GetInitConfig

pkg/config/config.go:180–221  ·  view source on GitHub ↗
(cmd *cobra.Command, cfgPath *string)

Source from the content-addressed store, hash-verified

178}
179
180func GetInitConfig(cmd *cobra.Command, cfgPath *string) func() {
181 return func() {
182 var configPath string
183
184 if *cfgPath != "" {
185 // Use config file from the flag.
186 configPath = *cfgPath
187 } else {
188 // Otherwise use UserConfigDir
189 dir, err := os.UserConfigDir()
190 if err != nil {
191 cmd.PrintErr(err)
192 os.Exit(1)
193 }
194
195 configPath = filepath.Join(dir, configDir, "config.yml")
196 }
197
198 viper.SetConfigFile(configPath)
199
200 err := viper.ReadInConfig()
201 if err != nil && os.IsNotExist(err) {
202 err = os.MkdirAll(filepath.Dir(configPath), 0o755)
203 if err != nil {
204 cmd.PrintErr(err)
205 os.Exit(1)
206 }
207
208 f, err := os.Create(configPath)
209 if err != nil {
210 cmd.PrintErr(err)
211 os.Exit(1)
212 }
213
214 f.Close()
215 }
216 if err != nil {
217 cmd.PrintErr(err)
218 os.Exit(1)
219 }
220 }
221}

Callers 1

NewCmdFunction · 0.92

Calls

no outgoing calls

Tested by

no test coverage detected