Files
comfyui-serverless/.gitea/workflows/build.yaml
Nick d0140fa2b3
All checks were successful
Build and Push Docker Image / build (push) Successful in 45s
Add RunPod endpoint update and worker purge to CI
Updates the serverless endpoint with new image tag and purges
existing workers to force restart with the new image after build.

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

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

62 lines
1.8 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 Endpoint
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 }}\", imageName: \"flybynight69420/comfyui-serverless:latest\" }) { id imageName } }"
}'
- name: Purge 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 { endpointPurgeQueue(input: { endpointId: \"${{ secrets.RUNPOD_ENDPOINT_ID }}\" }) }"
}'