func sync(inst *install.Install, force bool) { if inst == nil { client := consulClient() inst = install.NewInstall(client, nil, nil, nil) } sources := []*install.Source{ &install.Source{ Name: "mantl", Path: "https://github.com/CiscoCloud/mantl-universe.git", SourceType: install.Git, Index: 1, }, &install.Source{ Name: "mesosphere", Path: "https://github.com/mesosphere/universe.git", SourceType: install.Git, Index: 0, }, &install.Source{ Name: "mesosphere-multiverse", Path: "https://github.com/mesosphere/multiverse.git", SourceType: install.Git, Index: 2, }, } inst.SyncSources(sources, force) }
func sync(inst *install.Install, force bool) { var err error if inst == nil { client := consulClient() inst, err = install.NewInstall(client, nil, nil, nil) if err != nil { log.Fatalf("Could not create install client: %v", err) } } defaultSources := []*install.Source{ &install.Source{ Name: "mantl", Path: "https://github.com/CiscoCloud/mantl-universe.git", SourceType: install.Git, Branch: "master", Index: 1, }, &install.Source{ Name: "mesosphere", Path: "https://github.com/mesosphere/universe.git", SourceType: install.Git, Index: 0, }, } sources := []*install.Source{} configuredSources := viper.GetStringMap("sources") if len(configuredSources) > 0 { for name, val := range configuredSources { source := &install.Source{Name: name, SourceType: install.FileSystem} sourceConfig := val.(map[string]interface{}) if path, ok := sourceConfig["path"].(string); ok { source.Path = path } if index, ok := sourceConfig["index"].(int64); ok { source.Index = int(index) } if sourceType, ok := sourceConfig["type"].(string); ok { if strings.EqualFold(sourceType, "git") { source.SourceType = install.Git } } if branch, ok := sourceConfig["branch"].(string); ok { source.Branch = branch } if source.IsValid() { sources = append(sources, source) } else { log.Warnf("Invalid source configuration for %s", name) } } } if len(sources) == 0 { sources = defaultSources } inst.SyncSources(sources, force) }