github.com/buildpacks/pack@v0.33.3-0.20240516162812-884dd1837311/pkg/project/v01/project.go (about) 1 package v01 2 3 import ( 4 "github.com/BurntSushi/toml" 5 "github.com/buildpacks/lifecycle/api" 6 7 "github.com/buildpacks/pack/pkg/project/types" 8 ) 9 10 type Descriptor struct { 11 Project types.Project `toml:"project"` 12 Build types.Build `toml:"build"` 13 Metadata map[string]interface{} `toml:"metadata"` 14 } 15 16 func NewDescriptor(projectTomlContents string) (types.Descriptor, toml.MetaData, error) { 17 versionedDescriptor := &Descriptor{} 18 19 tomlMetaData, err := toml.Decode(projectTomlContents, versionedDescriptor) 20 if err != nil { 21 return types.Descriptor{}, tomlMetaData, err 22 } 23 24 return types.Descriptor{ 25 Project: versionedDescriptor.Project, 26 Build: versionedDescriptor.Build, 27 Metadata: versionedDescriptor.Metadata, 28 SchemaVersion: api.MustParse("0.1"), 29 }, tomlMetaData, nil 30 }