name: Build Docker Image on: push: branches: - main schedule: - cron: '@monthly' jobs: build-and-deploy-image: runs-on: linux_amd container: image: catthehacker/ubuntu:act-latest env: DOCKER_ORG: technocloud-public RUNNER_TOOL_CACHE: /toolcache strategy: matrix: python-version: ['3.10', '3.11', '3.12'] steps: - name: Checkout uses: actions/checkout@v4 with: github-server-url: https://gitea.technocloud.ee - name: Set up QEMU uses: docker/setup-qemu-action@v3 - name: Set up Docker BuildX uses: docker/setup-buildx-action@v3 with: platforms: linux/amd64,linux/arm64 - 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 Python ${{ matrix.python-version }} uses: docker/build-push-action@v5 with: context: . file: Dockerfile.python${{ matrix.python-version }} platforms: linux/amd64,linux/arm64 push: true tags: gitea.technocloud.ee/${{ env.DOCKER_ORG }}/${{ steps.meta.outputs.REPO_NAME }}:python${{ matrix.python-version }}