go-build: github.com/bobheadxi/go-build Index | Files

package build

import "github.com/bobheadxi/go-build"

Package build provides Golang bindings for Docker, docker-compose, and Herokuish builds and deployments. It relies on Docker and some Docker images.

Index

Package Files

builder.go config.go doc.go docker.go flusher.go output.go util.go

func NewDockerClient Uses

func NewDockerClient() (*docker.Client, error)

NewDockerClient creates a new Docker Client from ENV values and negotiates the correct API version

type Builder Uses

type Builder struct {
    // contains filtered or unexported fields
}

Builder manages build tools and executes builds

func NewBuilder Uses

func NewBuilder(conf BuilderConfig) *Builder

NewBuilder creates a builder with given configuration

func (*Builder) Build Uses

func (b *Builder) Build(buildType string, d Config,
    cli *docker.Client, out io.Writer) (func() error, error)

Build executes build and deploy

func (*Builder) GetBuildStageName Uses

func (b *Builder) GetBuildStageName() string

GetBuildStageName returns the name of the intermediary container used to build projects

type BuilderConfig Uses

type BuilderConfig struct {
    DockerComposeVersion string
    HerokuishVersion     string
}

BuilderConfig defines settings for Builder

type Config Uses

type Config struct {
    Name string

    BuildFilePath  string
    BuildDirectory string

    EnvValues []string
}

Config contains parameters required for builds to execute

type LogOptions Uses

type LogOptions struct {
    Container    string
    Stream       bool
    Detailed     bool
    NoTimestamps bool
    Entries      int
}

LogOptions is used to configure retrieved container logs

type ProjectBuilder Uses

type ProjectBuilder func(Config, *docker.Client, io.Writer) (func() error, error)

ProjectBuilder builds projects and returns a callback that can be used to deploy the project. No relation to Bob the Builder, though a Bob did write this.

Package build imports 18 packages (graph). Updated 2018-09-13. Refresh now. Tools for package owners.