Files
comfyui-serverless/.gitea/workflows/build.yaml
Nick f86acde2e5
All checks were successful
Build and Push Docker Image / build (push) Successful in 51s
Fix RunPod API calls to use correct endpoints
- Use REST API to update template's docker image
- Use saveEndpoint mutation with required name field
- Cycle workers to 0 then back to force image refresh

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-27 10:26:46 +13:00

67 lines
2.2 KiB
YAML

name: Build and Push Docker Image
on:
push:
branches:
- main
jobs:
build:
runs-on: ubuntu-latest
timeout-minutes: 120
container:
image: catthehacker/ubuntu:act-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Login to Docker Hub
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Extract metadata
id: meta
uses: docker/metadata-action@v5
with:
images: flybynight69420/comfyui-serverless
tags: |
type=sha,prefix=
type=raw,value=latest
- name: Build and push
uses: docker/build-push-action@v5
with:
context: .
push: true
tags: ${{ steps.meta.outputs.tags }}
labels: ${{ steps.meta.outputs.labels }}
cache-from: type=gha
cache-to: type=gha,mode=max
- name: Update RunPod Template
run: |
curl -s -X POST "https://rest.runpod.io/v1/templates/${{ secrets.RUNPOD_TEMPLATE_ID }}/update" \
-H "Authorization: Bearer ${{ secrets.RUNPOD_API_KEY }}" \
-H "Content-Type: application/json" \
-d '{"imageName": "flybynight69420/comfyui-serverless:latest"}'
- name: Restart RunPod Workers
run: |
curl -s -X POST "https://api.runpod.io/graphql?api_key=${{ secrets.RUNPOD_API_KEY }}" \
-H "Content-Type: application/json" \
-d '{
"query": "mutation { saveEndpoint(input: { id: \"${{ secrets.RUNPOD_ENDPOINT_ID }}\", name: \"comfyui-serverless\", workersMin: 0, workersMax: 0 }) { id } }"
}'
sleep 5
curl -s -X POST "https://api.runpod.io/graphql?api_key=${{ secrets.RUNPOD_API_KEY }}" \
-H "Content-Type: application/json" \
-d '{
"query": "mutation { saveEndpoint(input: { id: \"${{ secrets.RUNPOD_ENDPOINT_ID }}\", name: \"comfyui-serverless\", workersMin: 0, workersMax: 1 }) { id } }"
}'