Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type App ¶
type App struct { Name string `toml:"name" comment:"Name of the application"` Build Build `toml:"Build"` }
App stores an application configuration.
func AppFromFile ¶
AppFromFile reads a application configuration file and returns it. If the buildCmd is not set in the App configuration it's set to defaultBuild.Command
func ExampleApp ¶
ExampleApp returns an exemplary app cfg struct with the name set to the given value
type Build ¶
type Build struct { Command string `toml:"command" commented:"false" comment:"Command to build the application"` Input BuildInput `comment:"Specification of build inputs like source files, Makefiles, etc"` Output BuildOutput `comment:"Specification of build outputs produced by the [Build.command]"` }
Build the build section
type BuildInput ¶
type BuildInput struct { Files FileInputs `comment:"Inputs specified by file glob paths"` GitFiles GitFileInputs `comment:"Inputs specified by path, matching only Git tracked files"` GolangSources GolangSources `comment:"Inputs specified by directories containing Golang applications"` }
BuildInput contains information about build inputs
func (*BuildInput) Validate ¶
func (b *BuildInput) Validate() error
Validate validates the BuildInput section
type BuildOutput ¶
type BuildOutput struct { File []*FileOutput `comment:"Files that are produces by the [Build.command]"` DockerImage []*DockerImageOutput `comment:"Docker images that are produced by the [Build.command]"` }
BuildOutput the build output section
func (*BuildOutput) Validate ¶
func (b *BuildOutput) Validate() error
Validate validates the BuildOutput section
type Database ¶
type Database struct {
PGSQLURL string `` /* 164-byte string literal not displayed */
}
Database contains database configuration
type Discover ¶
type Discover struct { Dirs []string `toml:"application_dirs" comment:"List of directories containing applications, example: ['go/code', 'shop/']"` SearchDepth int `toml:"search_depth" comment:"Descend at most SearchDepth levels to find application configs"` }
Discover stores the Discover section of the repository configuration.
type DockerImageOutput ¶
type DockerImageOutput struct { IDFile string `` /* 163-byte string literal not displayed */ RegistryUpload DockerImageRegistryUpload `comment:"Registry repository the image is uploaded to"` }
DockerImageOutput describes where a docker container is uploaded to
func (*DockerImageOutput) IsEmpty ¶
func (d *DockerImageOutput) IsEmpty() bool
IsEmpty returns true if DockerImageOutput is empty
func (*DockerImageOutput) Validate ¶
func (d *DockerImageOutput) Validate() error
Validate validates its content
type DockerImageRegistryUpload ¶
type DockerImageRegistryUpload struct { Repository string `toml:"repository" comment:"Repository path, format: [<server[:port]>/]<owner>/<repository>:<tag>" commented:"true"` Tag string `toml:"tag" comment:"Tag that is applied to the image, valid variables: $APPNAME, $UUID, $GITCOMMIT" commented:"true"` }
DockerImageRegistryUpload holds information about where the docker image should be uploaded to
func (*DockerImageRegistryUpload) IsEmpty ¶
func (d *DockerImageRegistryUpload) IsEmpty() bool
IsEmpty returns true if the struct is empty
func (*DockerImageRegistryUpload) Validate ¶
func (d *DockerImageRegistryUpload) Validate() error
Validate validates its content
type FileCopy ¶ added in v0.11.1
type FileCopy struct {
Path string `toml:"path" comment:"Destination directory" commented:"true"`
}
FileCopy describes where a file artifact should be copied to
type FileInputs ¶
type FileInputs struct {
Paths []string `` /* 210-byte string literal not displayed */
}
FileInputs describes a file source
func (*FileInputs) Validate ¶
func (f *FileInputs) Validate() error
Validate validates a [[Sources.Files]] section
type FileOutput ¶
type FileOutput struct { Path string `toml:"path" comment:"Path relative to the application directory" commented:"true"` S3Upload S3Upload `comment:"Upload the file to S3"` FileCopy FileCopy `comment:"Copy the file to a local directory"` }
FileOutput describes where a file artifact should be uploaded to
func (*FileOutput) IsEmpty ¶
func (f *FileOutput) IsEmpty() bool
IsEmpty returns true if FileOutput is empty
func (*FileOutput) Validate ¶
func (f *FileOutput) Validate() error
Validate validates a [[Build.Output.File]] section
type GitFileInputs ¶
type GitFileInputs struct {
Paths []string `` /* 233-byte string literal not displayed */
}
GitFileInputs describes source files that are in the git repository by git pathnames
type GolangSources ¶
type GolangSources struct { Paths []string `` /* 215-byte string literal not displayed */ Environment []string `` /* 269-byte string literal not displayed */ }
GolangSources specifies inputs for Golang Applications
func (*GolangSources) Validate ¶
func (g *GolangSources) Validate() error
Validate validates the GolangSources section
type Repository ¶
type Repository struct { Discover Discover `comment:"Application discovery settings"` ConfigVersion int `toml:"config_version" comment:"Version of baur configuration format"` Database Database `toml:"Database"` }
Repository contains the repository configuration.
func ExampleRepository ¶
func ExampleRepository() *Repository
ExampleRepository returns an exemplary Repository config
func RepositoryFromFile ¶
func RepositoryFromFile(cfgPath string) (*Repository, error)
RepositoryFromFile reads the repository config from a file and returns it.
func (*Repository) ToFile ¶
func (r *Repository) ToFile(filepath string, overwrite bool) error
ToFile writes an Repository configuration file to filepath. If overwrite is true an existent file will be overwriten. If it's false the function returns an error if the file exist.
func (*Repository) Validate ¶
func (r *Repository) Validate() error
Validate validates a repository configuration
type S3Upload ¶
type S3Upload struct { Bucket string `toml:"bucket" commented:"true"` DestFile string `toml:"dest_file" comment:"Remote File Name, valid variables: $APPNAME, $UUID, $GITCOMMIT" commented:"true"` }
S3Upload contains S3 upload information