github.com/taubyte/tau-cli@v0.1.13-0.20240326000942-487f0d57edfc/lib/library/methods.go (about) 1 package libraryLib 2 3 import ( 4 structureSpec "github.com/taubyte/go-specs/structure" 5 ) 6 7 func New(library *structureSpec.Library) error { 8 return set(library, true) 9 } 10 11 func Set(library *structureSpec.Library) error { 12 return set(library, false) 13 } 14 15 func Delete(name string) error { 16 info, err := get(name) 17 if err != nil { 18 return err 19 } 20 21 return info.library.Delete() 22 } 23 24 func List() ([]string, error) { 25 _, _, libraries, err := list() 26 if err != nil { 27 return nil, err 28 } 29 30 return libraries, nil 31 } 32 33 func ListResources() ([]*structureSpec.Library, error) { 34 project, application, relative, err := list() 35 if err != nil { 36 return nil, err 37 } 38 39 libraries := make([]*structureSpec.Library, len(relative)) 40 for idx, name := range relative { 41 library, err := project.Library(name, application) 42 if err != nil { 43 return nil, err 44 } 45 46 libraries[idx], err = library.Get().Struct() 47 if err != nil { 48 return nil, err 49 } 50 } 51 52 return libraries, nil 53 }