diff --git a/.forgejo/workflows/production.yaml b/.forgejo/workflows/production.yaml index c842be5c..34d719da 100644 --- a/.forgejo/workflows/production.yaml +++ b/.forgejo/workflows/production.yaml @@ -100,35 +100,26 @@ jobs: echo "tag=${TAG}" >> $GITHUB_OUTPUT echo "Full image tag: ${TAG}" - - name: Install img - run: | - curl -fsSL https://github.com/genuinetools/img/releases/download/v0.5.11/img-linux-amd64 -o /tmp/img - sudo install /tmp/img /usr/local/bin/img - rm /tmp/img - - - name: Build and push with img + - name: Build and push Docker image run: | IMAGE_TAG="${{ steps.tag.outputs.tag }}" - # Build with img (completely unprivileged, no capabilities needed) - img build \ + # Build using existing Docker daemon (runner user is in docker group) + docker build \ --build-arg MIX_ENV=prod \ --file k8s/Dockerfile \ --tag "${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:${IMAGE_TAG}" \ + --tag "${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:production" \ . - # Login and push - img login \ - -u "${{ secrets.REGISTRY_USER }}" \ - -p "${{ secrets.REGISTRY_PASSWORD }}" \ + # Login and push both tags + echo "${{ secrets.REGISTRY_PASSWORD }}" | docker login \ + --username "${{ secrets.REGISTRY_USER }}" \ + --password-stdin \ "${{ secrets.REGISTRY_URL }}" - img push "${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:${IMAGE_TAG}" - - # Tag and push production - img tag "${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:${IMAGE_TAG}" \ - "${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:production" - img push "${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:production" + docker push "${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:${IMAGE_TAG}" + docker push "${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}:production" update-manifest: name: Update Deployment Manifest