]> git.proxmox.com Git - mirror_acme.sh.git/blob - .github/workflows/dockerhub.yml
fix docker build (#3383)
[mirror_acme.sh.git] / .github / workflows / dockerhub.yml
1
2 name: Build DockerHub
3 on:
4 push:
5 branches:
6 - '*'
7 tags:
8 - '*'
9
10 jobs:
11 CheckToken:
12 runs-on: ubuntu-latest
13 outputs:
14 hasToken: ${{ steps.step_one.outputs.hasToken }}
15 env:
16 DOCKER_PASSWORD : ${{ secrets.DOCKER_PASSWORD }}
17 steps:
18 - name: Set the value
19 id: step_one
20 run: |
21 if [ "$DOCKER_PASSWORD" ] ; then
22 echo "::set-output name=hasToken::true"
23 else
24 echo "::set-output name=hasToken::false"
25 fi
26 - name: Check the value
27 run: echo ${{ steps.step_one.outputs.hasToken }}
28
29 build:
30 runs-on: ubuntu-latest
31 needs: CheckToken
32 if: "contains(needs.CheckToken.outputs.hasToken, 'true')"
33 steps:
34 - name: checkout code
35 uses: actions/checkout@v2
36 - name: Set up QEMU
37 uses: docker/setup-qemu-action@v1
38 - name: Set up Docker Buildx
39 uses: docker/setup-buildx-action@v1
40 - name: login to docker hub
41 run: |
42 echo "${{ secrets.DOCKER_PASSWORD }}" | docker login -u "${{ secrets.DOCKER_USERNAME }}" --password-stdin
43 - name: build and push the image
44 run: |
45 DOCKER_IMAGE=neilpang/acme.sh
46
47 if [[ $GITHUB_REF == refs/tags/* ]]; then
48 DOCKER_IMAGE_TAG=${GITHUB_REF#refs/tags/}
49 fi
50
51 if [[ $GITHUB_REF == refs/heads/* ]]; then
52 DOCKER_IMAGE_TAG=${GITHUB_REF#refs/heads/}
53
54 if [[ $DOCKER_IMAGE_TAG == master ]]; then
55 DOCKER_IMAGE_TAG=latest
56 AUTO_UPGRADE=1
57 fi
58 fi
59
60 docker buildx build \
61 --tag ${DOCKER_IMAGE}:${DOCKER_IMAGE_TAG} \
62 --output "type=image,push=true" \
63 --build-arg AUTO_UPGRADE=${AUTO_UPGRADE} \
64 --platform linux/arm64/v8,linux/amd64,linux/arm/v6,linux/arm/v7,linux/386,linux/ppc64le,linux/s390x .