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
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"`
}
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"`
}
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
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
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"`
}
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"`
}
Click to show internal directories.
Click to hide internal directories.