diff --git a/.gitea/workflows/test.yaml b/.gitea/workflows/test.yaml index 9ea724a..6479167 100644 --- a/.gitea/workflows/test.yaml +++ b/.gitea/workflows/test.yaml @@ -1,9 +1,71 @@ +name: Build Dockerfile with Remote BuildKit + + + on: + push: + branches: + - main + + + jobs: - test: + + build: + + # Must match runner labels exactly + runs-on: ["buildkit"] + + + steps: - - run: echo "Runner picked up the job!" + + # Checkout the repo + + - name: Checkout repository + + uses: actions/checkout@v4 + + + + # Install buildctl if not already installed + + - name: Install buildctl + + run: | + + if ! command -v buildctl &> /dev/null; then + + echo "Installing buildctl..." + + wget -qO- https://github.com/moby/buildkit/releases/download/v0.12.5/buildkit-v0.12.5.linux-amd64.tar.gz \ + + | tar -xz -C /usr/local/bin --strip-components=1 bin/buildctl + + fi + + + + # Build and push image using remote BuildKit + + - name: Build and Push Dockerfile + + run: | + + buildctl \ + + --addr tcp://buildkit.default.svc.cluster.local:1234 \ + + build \ + + --frontend dockerfile.v0 \ + + --local context=. \ + + --local dockerfile=. \ + + --output type=image,name=registry/myapp:latest,push=true