config

package
v0.34.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 2, 2017 License: MIT Imports: 7 Imported by: 0

Documentation

Overview

Package config contains the model and loader of the goreleaser configuration file.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Archive added in v0.5.0

type Archive struct {
	Format          string            `yaml:",omitempty"`
	FormatOverrides []FormatOverride  `yaml:"format_overrides,omitempty"`
	NameTemplate    string            `yaml:"name_template,omitempty"`
	WrapInDirectory bool              `yaml:"wrap_in_directory,omitempty"`
	Replacements    map[string]string `yaml:",omitempty"`
	Files           []string          `yaml:",omitempty"`

	// Capture all undefined fields and should be empty after loading
	XXX map[string]interface{} `yaml:",inline"`
}

Archive config used for the archive

type Build added in v0.5.0

type Build struct {
	Goos    []string       `yaml:",omitempty"`
	Goarch  []string       `yaml:",omitempty"`
	Goarm   []string       `yaml:",omitempty"`
	Ignore  []IgnoredBuild `yaml:",omitempty"`
	Main    string         `yaml:",omitempty"`
	Ldflags string         `yaml:",omitempty"`
	Flags   string         `yaml:",omitempty"`
	Binary  string         `yaml:",omitempty"`
	Hooks   Hooks          `yaml:",omitempty"`
	Env     []string       `yaml:",omitempty"`

	// Capture all undefined fields and should be empty after loading
	XXX map[string]interface{} `yaml:",inline"`
}

Build contains the build configuration section

type Checksum added in v0.30.4

type Checksum struct {
	NameTemplate string `yaml:"name_template,omitempty"`

	// Capture all undefined fields and should be empty after loading
	XXX map[string]interface{} `yaml:",inline"`
}

Checksum config

type CommitAuthor added in v0.33.1

type CommitAuthor struct {
	Name  string `yaml:",omitempty"`
	Email string `yaml:",omitempty"`
}

CommitAuthor is the author of a Git commit

type Docker added in v0.31.0

type Docker struct {
	Binary     string   `yaml:",omitempty"`
	Goos       string   `yaml:",omitempty"`
	Goarch     string   `yaml:",omitempty"`
	Goarm      string   `yaml:",omitempty"`
	Image      string   `yaml:",omitempty"`
	Dockerfile string   `yaml:",omitempty"`
	Latest     bool     `yaml:",omitempty"`
	Files      []string `yaml:"extra_files,omitempty"`

	// Capture all undefined fields and should be empty after loading
	XXX map[string]interface{} `yaml:",inline"`
}

Docker image config

type FPM added in v0.7.0

type FPM struct {
	Formats      []string          `yaml:",omitempty"`
	Dependencies []string          `yaml:",omitempty"`
	Conflicts    []string          `yaml:",omitempty"`
	Vendor       string            `yaml:",omitempty"`
	Homepage     string            `yaml:",omitempty"`
	Maintainer   string            `yaml:",omitempty"`
	Description  string            `yaml:",omitempty"`
	License      string            `yaml:",omitempty"`
	Files        map[string]string `yaml:",omitempty"`

	// Capture all undefined fields and should be empty after loading
	XXX map[string]interface{} `yaml:",inline"`
}

FPM config

type FormatOverride added in v0.12.3

type FormatOverride struct {
	Goos   string `yaml:",omitempty"`
	Format string `yaml:",omitempty"`

	// Capture all undefined fields and should be empty after loading
	XXX map[string]interface{} `yaml:",inline"`
}

FormatOverride is used to specify a custom format for a specific GOOS.

type GitHubURLs added in v0.33.0

type GitHubURLs struct {
	API      string `yaml:"api,omitempty"`
	Upload   string `yaml:"upload,omitempty"`
	Download string `yaml:"download,omitempty"`
}

GitHubURLs holds the URLs to be used when using github enterprise

type Homebrew added in v0.1.6

type Homebrew struct {
	GitHub       Repo         `yaml:",omitempty"`
	CommitAuthor CommitAuthor `yaml:"commit_author,omitempty"`
	Folder       string       `yaml:",omitempty"`
	Caveats      string       `yaml:",omitempty"`
	Plist        string       `yaml:",omitempty"`
	Install      string       `yaml:",omitempty"`
	Dependencies []string     `yaml:",omitempty"`
	Test         string       `yaml:",omitempty"`
	Conflicts    []string     `yaml:",omitempty"`
	Description  string       `yaml:",omitempty"`
	Homepage     string       `yaml:",omitempty"`

	// Capture all undefined fields and should be empty after loading
	XXX map[string]interface{} `yaml:",inline"`
}

Homebrew contains the brew section

type Hooks added in v0.6.0

type Hooks struct {
	Pre  string `yaml:",omitempty"`
	Post string `yaml:",omitempty"`

	// Capture all undefined fields and should be empty after loading
	XXX map[string]interface{} `yaml:",inline"`
}

Hooks define actions to run before and/or after something

type IgnoredBuild added in v0.17.0

type IgnoredBuild struct {
	Goos, Goarch, Goarm string

	// Capture all undefined fields and should be empty after loading
	XXX map[string]interface{} `yaml:",inline"`
}

IgnoredBuild represents a build ignored by the user

type Project added in v0.5.0

type Project struct {
	ProjectName string    `yaml:"project_name,omitempty"`
	Release     Release   `yaml:",omitempty"`
	Brew        Homebrew  `yaml:",omitempty"`
	Builds      []Build   `yaml:",omitempty"`
	Archive     Archive   `yaml:",omitempty"`
	FPM         FPM       `yaml:",omitempty"`
	Snapcraft   Snapcraft `yaml:",omitempty"`
	Snapshot    Snapshot  `yaml:",omitempty"`
	Checksum    Checksum  `yaml:",omitempty"`
	Dockers     []Docker  `yaml:",omitempty"`

	// this is a hack ¯\_(ツ)_/¯
	SingleBuild Build `yaml:"build,omitempty"`

	// should be set if using github enterprise
	GitHubURLs GitHubURLs `yaml:"github_urls,omitempty"`

	// test only property indicating the path to the dist folder
	Dist string `yaml:"-"`

	// Capture all undefined fields and should be empty after loading
	XXX map[string]interface{} `yaml:",inline"`
}

Project includes all project configuration

func Load

func Load(file string) (config Project, err error)

Load config file

func LoadReader added in v0.17.4

func LoadReader(fd io.Reader) (config Project, err error)

LoadReader config via io.Reader

type Release added in v0.5.0

type Release struct {
	GitHub Repo `yaml:",omitempty"`
	Draft  bool `yaml:",omitempty"`

	// Capture all undefined fields and should be empty after loading
	XXX map[string]interface{} `yaml:",inline"`
}

Release config used for the GitHub release

type Repo added in v0.8.6

type Repo struct {
	Owner string `yaml:",omitempty"`
	Name  string `yaml:",omitempty"`

	// Capture all undefined fields and should be empty after loading
	XXX map[string]interface{} `yaml:",inline"`
}

Repo represents any kind of repo (github, gitlab, etc)

func (Repo) String added in v0.8.6

func (r Repo) String() string

String of the repo, e.g. owner/name

type Snapcraft added in v0.28.0

type Snapcraft struct {
	Name        string                          `yaml:",omitempty"`
	Summary     string                          `yaml:",omitempty"`
	Description string                          `yaml:",omitempty"`
	Grade       string                          `yaml:",omitempty"`
	Confinement string                          `yaml:",omitempty"`
	Apps        map[string]SnapcraftAppMetadata `yaml:",omitempty"`

	// Capture all undefined fields and should be empty after loading
	XXX map[string]interface{} `yaml:",inline"`
}

Snapcraft config

type SnapcraftAppMetadata added in v0.28.3

type SnapcraftAppMetadata struct {
	Plugs  []string
	Daemon string
}

SnapcraftAppMetadata for the binaries that will be in the snap package

type Snapshot added in v0.16.0

type Snapshot struct {
	NameTemplate string `yaml:"name_template,omitempty"`

	// Capture all undefined fields and should be empty after loading
	XXX map[string]interface{} `yaml:",inline"`
}

Snapshot config

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL