@@ -13,23 +13,34 @@ jobs:
1313 - name : Checkout source code
1414 uses : actions/checkout@v1
1515
16+ - name : Set up QEMU for more platforms
17+ uses : docker/setup-qemu-action@v1
18+ with :
19+ platforms : amd64,arm
1620
17- - name : Deploy to Docker Hub
21+ - name : Set docker build as alias to buildx (multiarch build)
22+ uses : docker/setup-buildx-action@v1
23+ id : buildx
24+ # with:
25+ # install: true
26+
27+ - name : Deploy to Docker Hub - ARMv7
1828 if : success() && startsWith(github.ref, 'refs/tags/v')
1929 env :
2030 GITHUB_REF_TAG : ${{ github.ref }}
2131 DOCKER_REGISTRY : docker.io
2232 DOCKER_IMAGE : grafolean/grafolean-snmp-bot
2333 DOCKER_USER : grafolean
2434 DOCKER_PASSWORD : ${{ secrets.DOCKER_PASSWORD }}
35+ BUILD_PLATFORMS : linux/arm/v7
2536 run : |
37+ echo "Available plaftorms: ${{ steps.buildx.outputs.platforms }}"
38+ echo "Building for plaftorms: $BUILD_PLATFORMS"
2639 export VERSION=${GITHUB_REF_TAG:10:50}
2740 echo "Version is $VERSION"
2841 export LAST_KNOWN_VERSION=`git tag -l --sort=-version:refname "v*.*.*" | grep -v rc | head -n 1 | tr -d '[:space:]'`
2942 echo "Last known version is $LAST_KNOWN_VERSION"
3043 docker login -u $DOCKER_USER -p $DOCKER_PASSWORD $DOCKER_REGISTRY
31- docker build -t "docker.io/$DOCKER_IMAGE:$VERSION" -t "docker.io/$DOCKER_IMAGE:latest" --build-arg VERSION=$VERSION --build-arg VCS_REF=$GITHUB_SHA --build-arg BUILD_DATE=$(date -u +'%Y-%m-%dT%H:%M:%SZ') .
32- [ "$LAST_KNOWN_VERSION" == "$VERSION" ] && docker tag "docker.io/$DOCKER_IMAGE:$VERSION" "docker.io/$DOCKER_IMAGE:latest" || echo "NOT MARKING AS LATEST!"
33- docker images
34- docker push "docker.io/$DOCKER_IMAGE:$VERSION"
35- [ "$LAST_KNOWN_VERSION" == "$VERSION" ] && docker push "docker.io/$DOCKER_IMAGE:latest" || echo "NOT LATEST!"
44+ [ "$LAST_KNOWN_VERSION" == "$VERSION" ] && echo "MARKING AS LATEST!" || echo "NOT MARKING AS LATEST!"
45+ [ "$LAST_KNOWN_VERSION" == "$VERSION" ] && docker buildx build --push --platform "$BUILD_PLATFORMS" -t "docker.io/$DOCKER_IMAGE:$VERSION" -t "docker.io/$DOCKER_IMAGE:latest" --build-arg VERSION=$VERSION --build-arg VCS_REF=$GITHUB_SHA --build-arg BUILD_DATE=$(date -u +'%Y-%m-%dT%H:%M:%SZ') .
46+ [ "$LAST_KNOWN_VERSION" != "$VERSION" ] && docker buildx build --push --platform "$BUILD_PLATFORMS" -t "docker.io/$DOCKER_IMAGE:$VERSION" --build-arg VERSION=$VERSION --build-arg VCS_REF=$GITHUB_SHA --build-arg BUILD_DATE=$(date -u +'%Y-%m-%dT%H:%M:%SZ') .
0 commit comments