github.com/buildpacks/pack@v0.33.3-0.20240516162812-884dd1837311/pkg/project/types/types.go (about)

     1  package types
     2  
     3  import (
     4  	"github.com/buildpacks/lifecycle/api"
     5  )
     6  
     7  type Script struct {
     8  	API    string `toml:"api"`
     9  	Inline string `toml:"inline"`
    10  	Shell  string `toml:"shell"`
    11  }
    12  
    13  type Buildpack struct {
    14  	ID      string `toml:"id"`
    15  	Version string `toml:"version"`
    16  	URI     string `toml:"uri"`
    17  	Script  Script `toml:"script"`
    18  }
    19  
    20  type EnvVar struct {
    21  	Name  string `toml:"name"`
    22  	Value string `toml:"value"`
    23  }
    24  
    25  type Build struct {
    26  	Include    []string    `toml:"include"`
    27  	Exclude    []string    `toml:"exclude"`
    28  	Buildpacks []Buildpack `toml:"buildpacks"`
    29  	Env        []EnvVar    `toml:"env"`
    30  	Builder    string      `toml:"builder"`
    31  	Pre        GroupAddition
    32  	Post       GroupAddition
    33  }
    34  
    35  type Project struct {
    36  	Name      string    `toml:"name"`
    37  	Version   string    `toml:"version"`
    38  	SourceURL string    `toml:"source-url"`
    39  	Licenses  []License `toml:"licenses"`
    40  }
    41  
    42  type License struct {
    43  	Type string `toml:"type"`
    44  	URI  string `toml:"uri"`
    45  }
    46  
    47  type Descriptor struct {
    48  	Project       Project                `toml:"project"`
    49  	Build         Build                  `toml:"build"`
    50  	Metadata      map[string]interface{} `toml:"metadata"`
    51  	SchemaVersion *api.Version
    52  }
    53  
    54  type GroupAddition struct {
    55  	Buildpacks []Buildpack `toml:"group"`
    56  }