MCPcopy Create free account
hub / github.com/cloudwan/gohan / getResyncCommand

Function getResyncCommand

cli/cli.go:317–365  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

315}
316
317func getResyncCommand() cli.Command {
318 return cli.Command{
319 Name: "resync",
320 Usage: "Resync all syncable resources to sync (etcd) backend",
321 Flags: []cli.Flag{
322 cli.StringFlag{Name: "config-file", Value: defaultConfigFile, Usage: "Server config File"},
323 },
324 Action: func(c *cli.Context) {
325 configFile := c.String("config-file")
326
327 config := util.GetConfig()
328 if configFile == "" {
329 log.Fatal("Need to provide server config file")
330 }
331 if err := config.ReadConfig(configFile); err != nil {
332 log.Fatalf("Error while loading server config file: %s", err)
333 }
334 if err := os.Chdir(path.Dir(configFile)); err != nil {
335 log.Fatalf("Chdir error: %s", err)
336 }
337
338 dbConn, err := db.CreateFromConfig(config)
339 if err != nil {
340 log.Fatalf("Failed to create db conn, err: %s", err)
341 }
342
343 sync, err := sync_util.CreateFromConfig(config)
344 if err != nil {
345 log.Fatalf("Failed to create sync, err: %s", err)
346
347 }
348
349 schemaManager := schema.GetManager()
350
351 schemaFiles := config.GetStringList("schemas", nil)
352 if schemaFiles == nil {
353 log.Fatal("No schema specified in configuration")
354 } else {
355 log.Info("Loading schemas %s", schemaFiles)
356 err = schemaManager.LoadSchemasFromFiles(schemaFiles...)
357 if err != nil {
358 log.Fatalf("Error when loading schemas: %s", err)
359 }
360 }
361
362 server.Resync(dbConn, sync)
363 },
364 }
365}
366
367func getServerCommand() cli.Command {
368 return cli.Command{

Callers 1

RunFunction · 0.85

Calls 9

FatalMethod · 0.80
ReadConfigMethod · 0.80
FatalfMethod · 0.80
DirMethod · 0.80
GetStringListMethod · 0.80
LoadSchemasFromFilesMethod · 0.80
ResyncMethod · 0.80
InfoMethod · 0.65
StringMethod · 0.45

Tested by

no test coverage detected