publish

package
Version: v0.2.1 Latest Latest
Warning

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

Go to latest
Published: Oct 7, 2014 License: Apache-2.0 Imports: 5 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Docker added in v0.2.1

type Docker struct {
	// The path to the dockerfile to create the image from. If the path is empty or no
	// path is specified then the docker file will be built from the base directory.
	Dockerfile string `yaml:"docker_file"`

	// Connection information for the docker server that will build the image
	DockerServer     string `yaml:"docker_server"`
	DockerServerPort int    `yaml:"docker_port"`
	// The Docker client version to download. This must match the docker version on the server
	DockerVersion string `yaml:"docker_version"`

	// Optional Arguments to allow finer-grained control of registry
	// endpoints
	RegistryLoginUrl string `yaml:"registry_login_url"`
	ImageName        string `yaml:"image_name"`
	RegistryLogin    bool   `yaml:"registry_login"`

	// Authentication credentials for index.docker.io
	Username string `yaml:"username"`
	Password string `yaml:"password"`
	Email    string `yaml:"email"`

	// Keep the build on the Docker host after pushing?
	KeepBuild bool `yaml:"keep_build"`
	// Do we want to override "latest" automatically with this build?
	PushLatest bool   `yaml:"push_latest"`
	CustomTag  string `yaml:"custom_tag"`
	Branch     string `yaml:"branch"`
}

func (*Docker) Write added in v0.2.1

func (d *Docker) Write(f *buildfile.Buildfile, r *repo.Repo)

Write adds commands to the buildfile to do the following: 1. Install the docker client in the Drone container. 2. Build a docker image based on the dockerfile defined in the config. 3. Push that docker image to index.docker.io. 4. Delete the docker image on the server it was build on so we conserve disk space.

type Github added in v0.2.1

type Github struct {
	// Script is an optional list of commands to run to prepare for a release.
	Script []string `yaml:"script"`

	// Artifacts is a list of files or directories to release.
	Artifacts []string `yaml:"artifacts"`

	// Tag is the name of the tag to create for this release.
	Tag string `yaml:"tag"`

	// Name is the name of the release. Defaults to tag.
	Name string `yaml:"name"`

	// Description describes the release. Defaults to empty string.
	Description string `yaml:"description"`

	// Draft is an identifier on a Github release.
	Draft bool `yaml:"draft"`

	// Prerelease is an identifier on a Github release.
	Prerelease bool `yaml:"prerelease"`

	// Token is the Github token to use when publishing the release.
	Token string `yaml:"token"`

	// User is the Github user for the repository you'd like to publish to.
	User string `yaml:"user"`

	// Repo is the name of the Github repostiory you like to publish to.
	Repo string `yaml:"repo"`

	// Branch to publish from.
	Branch string `yaml:"branch"`
}

func (*Github) Write added in v0.2.1

func (g *Github) Write(f *buildfile.Buildfile, r *repo.Repo)

Write adds commands to run that will publish a Github release.

type NPM added in v0.2.1

type NPM struct {
	// The Email address used by NPM to connect
	// and publish to a repository
	Email string `yaml:"email,omitempty"`

	// The Username used by NPM to connect
	// and publish to a repository
	Username string `yaml:"username,omitempty"`

	// The Password used by NPM to connect
	// and publish to a repository
	Password string `yaml:"password,omitempty"`

	// Fails if the package name and version combination already
	// exists in the registry. Overwrites when the "--force" flag is set.
	Force bool `yaml:"force"`

	// The registry URL of custom npm repository
	Registry string `yaml:"registry,omitempty"`

	// A folder containing the package.json file
	Folder string `yaml:"folder,omitempty"`

	// Registers the published package with the given tag
	Tag string `yaml:"tag,omitempty"`

	Branch string `yaml:"branch,omitempty"`
}

func (*NPM) Write added in v0.2.1

func (n *NPM) Write(f *buildfile.Buildfile)

type Publish

type Publish struct {
	S3     *S3     `yaml:"s3,omitempty"`
	Swift  *Swift  `yaml:"swift,omitempty"`
	PyPI   *PyPI   `yaml:"pypi,omitempty"`
	NPM    *NPM    `yaml:"npm,omitempty"`
	Docker *Docker `yaml:"docker,omitempty"`
	Github *Github `yaml:"github,omitempty"`
}

Publish stores the configuration details for publishing build artifacts when a Build has succeeded

func (*Publish) Write

func (p *Publish) Write(f *buildfile.Buildfile, r *repo.Repo)

type PyPI added in v0.2.1

type PyPI struct {
	Username   string   `yaml:"username,omitempty"`
	Password   string   `yaml:"password,omitempty"`
	Formats    []string `yaml:"formats,omitempty"`
	Repository string   `yaml:"repository,omitempty"`
	Branch     string   `yaml:"branch,omitempty"`
}

func (*PyPI) BuildFormatStr added in v0.2.1

func (p *PyPI) BuildFormatStr() string

func (*PyPI) Write added in v0.2.1

func (p *PyPI) Write(f *buildfile.Buildfile)

type S3

type S3 struct {
	Key    string `yaml:"access_key,omitempty"`
	Secret string `yaml:"secret_key,omitempty"`
	Bucket string `yaml:"bucket,omitempty"`

	// us-east-1
	// us-west-1
	// us-west-2
	// eu-west-1
	// ap-southeast-1
	// ap-southeast-2
	// ap-northeast-1
	// sa-east-1
	Region string `yaml:"region,omitempty"`

	// Indicates the files ACL, which should be one
	// of the following:
	//     private
	//     public-read
	//     public-read-write
	//     authenticated-read
	//     bucket-owner-read
	//     bucket-owner-full-control
	Access string `yaml:"acl,omitempty"`

	// Copies the files from the specified directory.
	// Regexp matching will apply to match multiple
	// files
	//
	// Examples:
	//    /path/to/file
	//    /path/to/*.txt
	//    /path/to/*/*.txt
	//    /path/to/**
	Source string `yaml:"source,omitempty"`
	Target string `yaml:"target,omitempty"`

	// Recursive uploads
	Recursive bool `yaml:"recursive"`

	Branch string `yaml:"branch,omitempty"`
}

func (*S3) Write

func (s *S3) Write(f *buildfile.Buildfile)

type Swift added in v0.2.1

type Swift struct {
	// Username for authentication
	Username string `yaml:"username,omitempty"`

	// Password for authentication
	// With Rackspace this is usually an API Key
	Password string `yaml:"password,omitempty"`

	// Container to upload files to
	Container string `yaml:"container,omitempty"`

	// Base API version URL to authenticate against
	// Rackspace: https://identity.api.rackspacecloud.com/v2.0
	AuthURL string `yaml:"auth_url,omitempty"`

	// Region to communicate with, in a generic OpenStack install
	// this may be RegionOne
	Region string `yaml:"region,omitempty"`

	// Source file or directory to upload, if source is a directory,
	// upload the contents of the directory
	Source string `yaml:"source,omitempty"`

	// Destination to write the file(s) to. Should contain the full
	// object name if source is a file
	Target string `yaml:"target,omitempty"`

	Branch string `yaml:"branch,omitempty"`
}

func (*Swift) Write added in v0.2.1

func (s *Swift) Write(f *buildfile.Buildfile)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
t or T : Toggle theme light dark auto
y or Y : Canonical URL