Skip to content
Drone plugin for publishing Docker images
Branch: master
Clone or download
tboerger Merge pull request #226 from mhumeSF/repo-lifecycle-policy-addition
Add ability to append lifecycle and repository policies for ECR
Latest commit fe2bf98 Mar 7, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github Properly configure permissions for protected branches Jan 22, 2019
cmd Add ability to append lifecycle and repository policies Mar 5, 2019
docker revert amd64 base image. Feb 12, 2019
.drone.jsonnet Apply a proper libsonnet library Feb 10, 2019
.drone.windows.jsonnet Apply a proper libsonnet library Feb 10, 2019
.drone.windows.yml
.drone.yml
.gitignore
LICENSE Initial commit May 14, 2015
README.md
docker.go
docker_test.go
go.mod Use FilePath enabled urfave/cli lib Jan 21, 2019
go.sum feat(version): support 18.06.0 tag format. Feb 12, 2019
pipeline.libsonnet Apply a proper libsonnet library Feb 10, 2019
renovate.json Update renovate.json Jan 19, 2019
tags.go feat(version): support 18.06.0 tag format. Feb 12, 2019
tags_test.go feat(version): support 18.06.0 tag format. Feb 12, 2019

README.md

drone-docker

Build Status Gitter chat Join the discussion at https://discourse.drone.io Drone questions at https://stackoverflow.com Go Doc Go Report

Drone plugin to build and publish Docker images to a container registry. For the usage information and a listing of the available options please take a look at the docs.

Build

Build the binaries with the following commands:

export GOOS=linux
export GOARCH=amd64
export CGO_ENABLED=0
export GO111MODULE=on

go test -cover ./...

go build -v -a -tags netgo -o release/linux/amd64/drone-docker ./cmd/drone-docker
go build -v -a -tags netgo -o release/linux/amd64/drone-gcr ./cmd/drone-gcr
go build -v -a -tags netgo -o release/linux/amd64/drone-ecr ./cmd/drone-ecr
go build -v -a -tags netgo -o release/linux/amd64/drone-heroku ./cmd/drone-heroku

Docker

Build the Docker images with the following commands:

docker build \
  --label org.label-schema.build-date=$(date -u +"%Y-%m-%dT%H:%M:%SZ") \
  --label org.label-schema.vcs-ref=$(git rev-parse --short HEAD) \
  --file docker/docker/Dockerfile.linux.amd64 --tag plugins/docker .

docker build \
  --label org.label-schema.build-date=$(date -u +"%Y-%m-%dT%H:%M:%SZ") \
  --label org.label-schema.vcs-ref=$(git rev-parse --short HEAD) \
  --file docker/gcr/Dockerfile.linux.amd64 --tag plugins/gcr .

docker build \
  --label org.label-schema.build-date=$(date -u +"%Y-%m-%dT%H:%M:%SZ") \
  --label org.label-schema.vcs-ref=$(git rev-parse --short HEAD) \
  --file docker/ecr/Dockerfile.linux.amd64 --tag plugins/ecr .

docker build \
  --label org.label-schema.build-date=$(date -u +"%Y-%m-%dT%H:%M:%SZ") \
  --label org.label-schema.vcs-ref=$(git rev-parse --short HEAD) \
  --file docker/heroku/Dockerfile.linux.amd64 --tag plugins/heroku .

Usage

Execute from the working directory:

docker run --rm \
  -e PLUGIN_TAG=latest \
  -e PLUGIN_REPO=octocat/hello-world \
  -e DRONE_COMMIT_SHA=d8dbe4d94f15fe89232e0402c6e8a0ddf21af3ab \
  -v $(pwd):$(pwd) \
  -w $(pwd) \
  --privileged \
  plugins/docker --dry-run
You can’t perform that action at this time.