From ea3be956d649fec685d94a2fd5cae43522f7650e Mon Sep 17 00:00:00 2001 From: Philipp Holzer Date: Thu, 13 Dec 2018 19:43:45 +0100 Subject: [PATCH 1/2] Auto building Docker images after merge --- .bashbrew/flags | 1 + .travis.yml | 10 ++++++++++ build_and_push.sh | 7 +++++++ 3 files changed, 18 insertions(+) create mode 100644 .bashbrew/flags create mode 100755 build_and_push.sh diff --git a/.bashbrew/flags b/.bashbrew/flags new file mode 100644 index 0000000..8e0b3c1 --- /dev/null +++ b/.bashbrew/flags @@ -0,0 +1 @@ +Namespace: friendica diff --git a/.travis.yml b/.travis.yml index 266bad4..5059c08 100644 --- a/.travis.yml +++ b/.travis.yml @@ -13,6 +13,9 @@ stages: # full test for master - name: test images (full) if: branch = master +# build and push for master + - name: deploy + if: branch = master install: - git clone https://github.com/docker-library/official-images.git ~/official-images @@ -83,3 +86,10 @@ jobs: - env: VERSION=2018.12-rc VARIANT=fpm ARCH=i386 - env: VERSION=2018.12-rc VARIANT=apache ARCH=amd64 - env: VERSION=2018.12-rc VARIANT=apache ARCH=i386 + + - stage: deploy + env: SCRIPT=build_and_push.sh + script: skip + deploy: + provider: script + script: ./build_and_push.sh diff --git a/build_and_push.sh b/build_and_push.sh new file mode 100755 index 0000000..643d9b7 --- /dev/null +++ b/build_and_push.sh @@ -0,0 +1,7 @@ +#!/bin/bash +set -e + +echo "$DOCKER_PASSWORD" | docker login -u "$DOCKER_USERNAME" --password-stdin +./generate-stackbrew-library.sh > server +bashbrew --config .bashbrew/ --library ./ build server +bashbrew --config .bashbrew/ --library ./ push server From 4ea40be6384af3999f956386040c4dce2aa24ec5 Mon Sep 17 00:00:00 2001 From: Philipp Holzer Date: Thu, 13 Dec 2018 20:17:18 +0100 Subject: [PATCH 2/2] Adding stackbrew-library improvements --- generate-stackbrew-library.sh | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/generate-stackbrew-library.sh b/generate-stackbrew-library.sh index fa588b4..b8fb95f 100755 --- a/generate-stackbrew-library.sh +++ b/generate-stackbrew-library.sh @@ -12,7 +12,13 @@ cd "$(dirname "$(readlink -f "$BASH_SOURCE")")" # Get the most recent commit which modified any of "$@". fileCommit() { - git log -1 --format='format:%H' HEAD -- "$@" + commit="$(git log -1 --format='format:%H' HEAD -- "$@")" + if [ -z "$commit" ]; then + # return some valid sha1 hash to make bashbrew happy + echo '0000000000000000000000000000000000000000' + else + echo "$commit" + fi } # Get the most recent commit which modified "$1/Dockerfile" or any file that @@ -50,6 +56,7 @@ getArches 'friendica' # Header. cat <<-EOH # This file is generated via https://github.com/friendica/docker/blob/$(fileCommit "$self")/$self + Maintainers: Friendica (@friendica), Philipp Holzer (@nupplaphil) GitRepo: https://github.com/friendica/docker.git EOH