From 888a5ca0aacfffeae69ecf57d5d7e140f9309abf Mon Sep 17 00:00:00 2001 From: eater <=@eater.me> Date: Wed, 28 Aug 2019 11:19:40 +0200 Subject: [PATCH] Add drone build --- .drone.yml | 14 ++++++++++++++ Makefile | 5 ++++- build-tagged.sh | 9 +++++++-- 3 files changed, 25 insertions(+), 3 deletions(-) create mode 100644 .drone.yml diff --git a/.drone.yml b/.drone.yml new file mode 100644 index 0000000..b833ed0 --- /dev/null +++ b/.drone.yml @@ -0,0 +1,14 @@ +--- +kind: pipeline +name: default + +steps: +- name: build + image: d.xr.to/img + privileged: true + commands: + - img login -u "drone" -p "$PASSWORD" d.xr.to + - PUSH=y DOCKER=img ./build-tagged.sh + environment: + PASSWORD: + from_secret: pass diff --git a/Makefile b/Makefile index 97b719c..6051fc4 100644 --- a/Makefile +++ b/Makefile @@ -13,6 +13,9 @@ TOOLBOX?=toybox PACKAGES?=xbps bash ncurses-base shadow # Directory where chroot should be build BUILDDIR?=$(PWD)/build +# Executable used for making the docker container (e.g. img or docker) +DOCKER_BUILDER?=docker + ifeq ($(TOOLBOX),none) VALID_TOOLBOX?=1 endif @@ -90,7 +93,7 @@ endif install: build # Import directory as tar (owned by root) into docker - tar --owner 0 --group 0 -pC $(BUILDDIR) -c . | docker import -m '$(IMAGE) initialization from chroot' -c 'LABEL maintainer="$(MAINTAINER)"' - $(IMAGE) + tar --owner 0 --group 0 -pC $(BUILDDIR) -c . | $(DOCKER_BUILDER) import -m '$(IMAGE) initialization from chroot' -c 'LABEL maintainer="$(MAINTAINER)"' - $(IMAGE) clean: # Remove build directory diff --git a/build-tagged.sh b/build-tagged.sh index 16457ba..a6e0b2f 100755 --- a/build-tagged.sh +++ b/build-tagged.sh @@ -1,8 +1,13 @@ #!/usr/bin/env bash IMAGE="${1:-d.xr.to/base}"; MAINTAINER="${2:-=@eater.me}"; +DOCKER_BUILDER="${DOCKER_BUILDER:-docker}" for toolbox in "none" "toybox" "busybox" "default"; do - make IMAGE="${IMAGE}:${toolbox}" TOOLBOX="${toolbox}"; + make IMAGE="${IMAGE}:${toolbox}" TOOLBOX="${toolbox}" DOCKER_BUILDER="${DOCKER_BUILDER}"; done docker tag "${IMAGE}:toybox" "${IMAGE}:latest"; -make IMAGE="${IMAGE}:glibc" TOOLBOX="toybox" ARCH="x86_64" +make IMAGE="${IMAGE}:glibc" TOOLBOX="toybox" ARCH="x86_64" DOCKER_BUILDER="${DOCKER_BUILDER}" + +if [ "${PUSH}" = "y" ]; then + docker push "${IMAGE}"; +fi