harness-drone/docs/build/build.md
2015-12-13 02:42:21 +01:00

1.6 KiB

Build

Drone uses the build section of the .drone.yml to describe your Docker build environment and your build and test instructions. The following is an example build definition:

build:
  image: golang
  environment:
    - GOBIN=/drone/bin
  commands:
    - go get
    - go build
    - go test

Build options

The build configuration options:

  • image - any valid Docker image name
  • pull - if true, will always attempt to pull the latest image
  • environment - list of environment variables, declared in name=value format
  • privileged - if true, runs the container with extended privileges [1]
  • volumes - list of bind mounted volumes on the host machine [1]
  • net - sets the container network mode [1]
  • extra_hosts - list of hostname mappings added to /etc/hosts
  • commands - list of build commands

[1] Some build options are disabled for security reasons, including volumes, privileged and net. To enable these options, a system administrator must white-list your repository as trusted. This can be done via the repository settings screen.

Build image

The image attribute supports any valid Docker image name:

# Docker library image
image: golang

# Docker library image, with tag
image: golang:1.4

# Docker image, full name, with tag
image: library/golang:1.4

# fully qualified Docker image URI, with tag
image: index.docker.io/library/golang:1.4

Skipping builds

Skip a build by including any combination of ci and skip wrapped in square brackets in your commit message. Examples: [skip CI] [ci skip]