name: Publish artifacts on: release: types: - published env: IMAGE_NAME: lamgc/scalabot jobs: publish-container-image: runs-on: ubuntu-latest timeout-minutes: 15 steps: - uses: actions/checkout@v4 - name: Set up JDK 11 uses: actions/setup-java@v3 with: java-version: '11' distribution: 'adopt-hotspot' cache: 'gradle' - uses: gradle/wrapper-validation-action@v1 - name: Grant execute permission for gradlew run: chmod +x gradlew - name: Build and test uses: gradle/gradle-build-action@v2.8.0 with: gradle-version: 'wrapper' arguments: clean test installDist - name: Set up QEMU uses: docker/setup-qemu-action@v2 - name: Set up Docker BuildX uses: docker/setup-buildx-action@v2 - name: Login to DockerHub uses: docker/login-action@v3 with: username: ${{ secrets.DOCKERHUB_USERNAME }} password: ${{ secrets.DOCKERHUB_TOKEN }} - name: Build and push container image uses: docker/build-push-action@v4 with: context: . push: true tags: ${{ env.IMAGE_NAME }}:latest, ${{ env.IMAGE_NAME }}:${{ github.ref_name }} platforms: linux/amd64,linux/arm64 cache-from: type=gha cache-to: type=gha,mode=max