func PopulateClusterDetails(bootstrapNode string, ctxt string) (*uuid.UUID, string, error) { out, err := cephapi_backend.GetCluster(bootstrapNode, ctxt) if err != nil { return nil, "", fmt.Errorf("%s-Error getting cluster details. error: %v", ctxt, err) } var cluster models.Cluster = models.Cluster{ ClusterId: out.Id, Name: out.Name, Type: bigfin_conf.ProviderName, } cluster.MonitoringInterval = monitoring.DefaultClusterMonitoringInterval cluster.Monitoring = models.MonitoringState{ Plugins: utils.GetProviderSpecificDefaultThresholdValues(), StaleNodes: []string{}, } cluster.CompatVersion = fmt.Sprintf("%f", bigfin_conf.ProviderConfig.Provider.CompatVersion) cluster.AutoExpand = true // Persist the cluster details sessionCopy := db.GetDatastore().Copy() defer sessionCopy.Close() coll := sessionCopy.DB(conf.SystemConfig.DBConfig.Database).C(models.COLL_NAME_STORAGE_CLUSTERS) if err := coll.Insert(cluster); err != nil { return nil, "", fmt.Errorf("%s-Error persisting the cluster. error: %v", ctxt, err) } return &out.Id, out.Name, nil }