Files
Transcriptarr/.github/workflows/build_GPU.yml
Workflow config file is invalid. Please check your config file: yaml: line 26: mapping values are not allowed in this context
McCloudS c0cc23b5a9 Enhance GPU build workflow with disk cleanup steps
Added pre-job and post-job steps for disk cleanup in the GPU build workflow.
2025-12-13 12:00:42 -05:00

68 lines
1.9 KiB
YAML

name: Build_Subgen_Dockerfile_GPU
on:
push:
paths:
- 'requirements.txt'
- 'Dockerfile'
workflow_dispatch:
jobs:
docker:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v2
with:
fetch-depth: 0
- name: Get version from subgen.py
id: get_version
run: |
version=$(grep -oP "subgen_version\s*=\s*'\K[^']+" subgen.py)
echo "version=$version" >> $GITHUB_ENV
- name: Pre-job: free disk space
run: |
set -euo pipefail
echo "Disk before cleanup:"
df -h /
# Prune buildx builder data and docker caches (safe)
sudo docker builder prune --all --force || true
sudo docker system prune -af --volumes || true
# remove temp files
sudo rm -rf /tmp/* || true
# small safety: remove old Docker buildkit cache dirs (if present)
sudo rm -rf /var/lib/docker/buildkit || true
echo "Disk after cleanup:"
df -h /
shell: bash
- name: Login to Docker Hub
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Build and push GPU Docker image
uses: docker/build-push-action@v5
with:
context: .
push: true
tags: |
mccloud/subgen:latest
mccloud/subgen:${{ env.version }}
- name: Post-job: cleanup local docker artifacts
if: always()
run: |
set -euo pipefail
# remove images/containers/build cache used during this job to free disk
sudo docker builder prune --all --force || true
sudo docker image prune -af || true
sudo docker container prune -f || true
sudo docker system prune -af --volumes || true
df -h /
shell: bash