github.com/taubyte/tau-cli@v0.1.13-0.20240326000942-487f0d57edfc/lib/project/interface.go (about) 1 package projectLib 2 3 import ( 4 "github.com/taubyte/go-project-schema/project" 5 "github.com/taubyte/tau-cli/env" 6 "github.com/taubyte/tau-cli/i18n" 7 "github.com/taubyte/tau-cli/singletons/config" 8 ) 9 10 func SelectedProjectInterface() (project.Project, error) { 11 configProject, err := SelectedProjectConfig() 12 if err != nil { 13 return nil, err 14 } 15 16 project, err := configProject.Interface() 17 if err != nil { 18 i18n.Help().BeSureToCloneProject() 19 return nil, err 20 } 21 22 return project, nil 23 } 24 25 func SelectedProjectConfig() (configProject config.Project, err error) { 26 selectedProject, err := env.GetSelectedProject() 27 if err != nil { 28 i18n.Help().BeSureToSelectProject() 29 return 30 } 31 32 configProject, err = config.Projects().Get(selectedProject) 33 if err != nil { 34 i18n.Help().BeSureToCloneProject() 35 } 36 37 return 38 } 39 40 func ConfirmSelectedProject() error { 41 _, err := env.GetSelectedProject() 42 if err != nil { 43 i18n.Help().BeSureToSelectProject() 44 } 45 46 return err 47 }