Documentation ¶
Overview ¶
Package compose with tools to download and compose packages
Index ¶
Constants ¶
const (
// DependencyRoot is a dependencies graph main node
DependencyRoot = "root"
)
Variables ¶
This section is empty.
Functions ¶
func EnsureDirExists ¶
EnsureDirExists checks if directory exists, otherwise create it
Types ¶
type Builder ¶
type Builder struct {
// contains filtered or unexported fields
}
Builder struct, provides methods to merge packages into build
type Composer ¶
type Composer struct {
// contains filtered or unexported fields
}
Composer stores compose definition
func CreateComposer ¶
CreateComposer instance
type ComposerOptions ¶
type ComposerOptions struct { Clean bool WorkingDir string SkipNotVersioned bool ConflictsVerbosity bool }
ComposerOptions - list of possible composer options
type Dependency ¶
Dependency stores Dependency definition
func (*Dependency) ToPackage ¶
func (d *Dependency) ToPackage(name string) *Package
ToPackage converts dependency to package
type DownloadManager ¶
type DownloadManager struct {
// contains filtered or unexported fields
}
DownloadManager struct, provides methods to fetch packages
func CreateDownloadManager ¶
func CreateDownloadManager(keyring keyring.Keyring) DownloadManager
CreateDownloadManager instance
func (DownloadManager) Download ¶ added in v0.0.5
func (m DownloadManager) Download(c *YamlCompose, targetDir string) ([]*Package, error)
Download packages using compose file
type Downloader ¶
type Downloader interface {
Download(pkg *Package, targetDir string, ci keyring.CredentialsItem) error
}
Downloader interface
type Package ¶
type Package struct { Name string `yaml:"name"` Source Source `yaml:"source,omitempty"` Dependencies []string `yaml:"dependencies,omitempty"` }
Package stores package definition
func (*Package) AddDependency ¶
AddDependency appends new package dependency
func (*Package) GetStrategies ¶ added in v0.0.5
GetStrategies from package
type Source ¶
type Source struct { Type string `yaml:"type"` URL string `yaml:"url"` Ref string `yaml:"ref,omitempty"` Tag string `yaml:"tag,omitempty"` Strategies []Strategy `yaml:"strategy,omitempty"` }
Source stores package source definition
type YamlCompose ¶
type YamlCompose struct { Name string `yaml:"name"` Dependencies []Dependency `yaml:"dependencies,omitempty"` }
YamlCompose stores compose definition