diff --git a/.gitea/workflows/build.yml b/.gitea/workflows/build.yml index 30ff56fe..86bf7bae 100644 --- a/.gitea/workflows/build.yml +++ b/.gitea/workflows/build.yml @@ -6,58 +6,58 @@ on: schedule: - cron: '@monthly' jobs: -# build-amd64: -# runs-on: linux_amd -# name: Build AMD64 -# container: -# image: catthehacker/ubuntu:act-latest -# env: -# DOCKER_ORG: technocloud-public -# RUNNER_TOOL_CACHE: /toolcache -# strategy: -# matrix: -# python-version: ['3.10'] -# outputs: -# digest-3-10: ${{ steps.digest.outputs.DIGEST_3_10 }} -# digest-3-11: ${{ steps.digest.outputs.DIGEST_3_11 }} -# digest-3-12: ${{ steps.digest.outputs.DIGEST_3_12 }} -# digest-3-13: ${{ steps.digest.outputs.DIGEST_3_13 }} -# steps: -# - name: Checkout -# uses: actions/checkout@v4 -# with: -# github-server-url: https://gitea.technocloud.ee -# - name: Set up Docker BuildX -# uses: docker/setup-buildx-action@v3 -# with: -# platforms: linux/amd64 -# - name: Login to DockerHub -# uses: docker/login-action@v3 -# with: -# registry: gitea.technocloud.ee -# username: ${{ secrets.DOCKER_USERNAME }} -# password: ${{ secrets.DOCKER_PASSWORD }} -# - name: Get Meta -# id: meta -# run: | -# echo REPO_NAME=$(echo ${GITHUB_REPOSITORY} | awk -F"/" '{print $2}') >> $GITHUB_OUTPUT -# - name: Build and Push AMD64 -# id: build-docker -# uses: docker/build-push-action@v5 -# with: -# context: . -# file: Dockerfile.python${{ matrix.python-version }} -# platforms: linux/amd64 -# push: true -# provenance: false -# outputs: type=image,name=gitea.technocloud.ee/${{ env.DOCKER_ORG }}/${{ steps.meta.outputs.REPO_NAME }},push-by-digest=true -# - name: Summarize the Docker digest -# id: digest -# run: | -# PY_VERSION=${{ matrix.python-version }} -# PY_VERSION_MOD=$(echo $PY_VERSION | sed 's/\./_/g') -# echo DIGEST_${PY_VERSION_MOD}="${{ steps.build-docker.outputs.digest }}" -# echo DIGEST_${PY_VERSION_MOD}="${{ steps.build-docker.outputs.digest }}" >> $GITHUB_OUTPUT + build-amd64: + runs-on: linux_amd + name: Build AMD64 + container: + image: catthehacker/ubuntu:act-latest + env: + DOCKER_ORG: technocloud-public + RUNNER_TOOL_CACHE: /toolcache + strategy: + matrix: + python-version: ['3.10'] + outputs: + digest-3-10: ${{ steps.digest.outputs.DIGEST_3_10 }} + digest-3-11: ${{ steps.digest.outputs.DIGEST_3_11 }} + digest-3-12: ${{ steps.digest.outputs.DIGEST_3_12 }} + digest-3-13: ${{ steps.digest.outputs.DIGEST_3_13 }} + steps: + - name: Checkout + uses: actions/checkout@v4 + with: + github-server-url: https://gitea.technocloud.ee + - name: Set up Docker BuildX + uses: docker/setup-buildx-action@v3 + with: + platforms: linux/amd64 + - name: Login to DockerHub + uses: docker/login-action@v3 + with: + registry: gitea.technocloud.ee + username: ${{ secrets.DOCKER_USERNAME }} + password: ${{ secrets.DOCKER_PASSWORD }} + - name: Get Meta + id: meta + run: | + echo REPO_NAME=$(echo ${GITHUB_REPOSITORY} | awk -F"/" '{print $2}') >> $GITHUB_OUTPUT + - name: Build and Push AMD64 + id: build-docker + uses: docker/build-push-action@v5 + with: + context: . + file: Dockerfile.python${{ matrix.python-version }} + platforms: linux/amd64 + push: true + provenance: false + outputs: type=image,name=gitea.technocloud.ee/${{ env.DOCKER_ORG }}/${{ steps.meta.outputs.REPO_NAME }},push-by-digest=true + - name: Summarize the Docker digest + id: digest + run: | + PY_VERSION=${{ matrix.python-version }} + PY_VERSION_MOD=$(echo $PY_VERSION | sed 's/\./_/g') + echo DIGEST_${PY_VERSION_MOD}="${{ steps.build-docker.outputs.digest }}" + echo DIGEST_${PY_VERSION_MOD}="${{ steps.build-docker.outputs.digest }}" >> $GITHUB_OUTPUT build-arm64: runs-on: ubuntu-latest @@ -114,7 +114,7 @@ jobs: create-manifest: - needs: [build-arm64] + needs: [build-arm64, build-amd64] runs-on: ubuntu-latest name: Create Multi-arch Manifest env: @@ -141,13 +141,14 @@ jobs: echo "REPO_NAME=${GITHUB_REPOSITORY}" >> $GITHUB_OUTPUT echo "PY_VERSION=digest-$(echo ${{ matrix.python-version }} | sed 's/\./-/g')" >> $GITHUB_OUTPUT - - name: Create and Push Multi-arch Manifest run: | - echo "Digest 4UUUU: ${{ needs.build-arm64.outputs[steps.meta.outputs.PY_VERSION] }}" echo '${{ toJSON(needs.build-arm64.outputs) }}' + echo '${{ toJSON(needs.build-amd64.outputs) }}' ARM_DIGEST=${{ needs.build-arm64.outputs[steps.meta.outputs.PY_VERSION] }} + AMD_DIGEST=${{ needs.build-amd64.outputs[steps.meta.outputs.PY_VERSION] }} echo $ARM_DIGEST + echo $AMD_DIGEST IMAGE_NAME=gitea.technocloud.ee/${{ env.DOCKER_ORG }}/${{ steps.meta.outputs.REPO_NAME }}:python${{ matrix.python-version }} - docker manifest create $IMAGE_NAME --amend gitea.technocloud.ee/technocloud-public/nginx-unit@${ARM_DIGEST} + docker manifest create $IMAGE_NAME --amend gitea.technocloud.ee/technocloud-public/nginx-unit@${ARM_DIGEST} --amend gitea.technocloud.ee/technocloud-public/nginx-unit@${AMD_DIGEST} docker manifest push $IMAGE_NAME \ No newline at end of file