From 635fb1d8b1dd8269f018d0feddf45d59a586fd37 Mon Sep 17 00:00:00 2001 From: Xiaonan Shen Date: Mon, 1 Jun 2020 07:06:41 -0700 Subject: [PATCH] Add github actions for multiarch --- .github/workflows/build.yaml | 35 +++++++++++++++++++++++++++++++++++ .github/workflows/main.yaml | 2 +- build/build-docker.sh | 21 +++++++++++++++++++++ build/gpgparams | 8 ++++++++ 4 files changed, 65 insertions(+), 1 deletion(-) create mode 100644 .github/workflows/build.yaml create mode 100644 build/build-docker.sh create mode 100644 build/gpgparams diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml new file mode 100644 index 0000000..e31a7ef --- /dev/null +++ b/.github/workflows/build.yaml @@ -0,0 +1,35 @@ +name: build from source + +on: + push: + branches: + - master + - dev + paths: + - .github/workflows/build.yaml + - build/.dockerignore + - build/build-docker.sh + - build/build.sh + - build/Dockerfile + - build/entrypoint.sh + - build/gpgparams + - build/VERSION + +env: + DOCKER_TAG: shenxn/protonmail-bridge + +jobs: + build: + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@master + - name: Docker login + uses: azure/docker-login@v1 + with: + username: ${{ secrets.REGISTRY_USERNAME }} + password: ${{ secrets.REGISTRY_USERNAME }} + - name: Set up Docker buildx + uses: crazy-max/ghaction-docker-buildx@v2 + - name: Build image + run: bash build/build-docker.sh diff --git a/.github/workflows/main.yaml b/.github/workflows/main.yaml index 166592e..1ac1969 100644 --- a/.github/workflows/main.yaml +++ b/.github/workflows/main.yaml @@ -16,7 +16,7 @@ on: - VERSION env: - DOCKER_TAG: shenxn/protonmail-bridge + DOCKER_REPO: shenxn/protonmail-bridge jobs: build: diff --git a/build/build-docker.sh b/build/build-docker.sh new file mode 100644 index 0000000..69f6005 --- /dev/null +++ b/build/build-docker.sh @@ -0,0 +1,21 @@ +#!/bin/bash + +set -ex + +# Enter the right path +SCRIPT=`realpath $0` +SCRIPTPATH=`dirname $SCRIPT` +cd $SCRIPTPATH + +# Set docker tag +VERSION=`cat VERSION` +if [[ $GITHUB_REF == "refs/heads/master" ]]; then + TAG_TYPE="build" + TAG_VERTION="${VERSION}-build" +else + TAG_TYPE="build-dev" + TAG_VERTION="${VERSION}-build-dev" +fi + +# Build multiarch and push +docker buildx build --platform linux/amd64,linux/arm64,linux/arm/v7,linux/arm/v6 -t ${DOCKER_REPO}:${TAG_TYPE} -t ${DOCKER_REPO}:${TAG_VERSION} --push . diff --git a/build/gpgparams b/build/gpgparams new file mode 100644 index 0000000..355568e --- /dev/null +++ b/build/gpgparams @@ -0,0 +1,8 @@ +%no-protection +%echo Generating a basic OpenPGP key +Key-Type: RSA +Key-Length: 2048 +Name-Real: pass-key +Expire-Date: 0 +%commit +%echo done