From b73bd08470b02ded73b2b8f34ac75b383eb646df Mon Sep 17 00:00:00 2001 From: Chris Lu Date: Tue, 10 Feb 2026 12:47:39 -0800 Subject: [PATCH] ci: move manual container builds to unified release workflow (#8290) * ci: move manual dev container build into unified release workflow * ci: make unified manual container build release-tag based --- .github/workflows/container_dev.yml | 1 - .github/workflows/container_release1.yml | 152 ----------------- .github/workflows/container_release2.yml | 153 ------------------ .github/workflows/container_release3.yml | 73 --------- .github/workflows/container_release4.yml | 72 --------- .github/workflows/container_release5.yml | 62 ------- .../workflows/container_release_unified.yml | 17 +- 7 files changed, 11 insertions(+), 519 deletions(-) delete mode 100644 .github/workflows/container_release1.yml delete mode 100644 .github/workflows/container_release2.yml delete mode 100644 .github/workflows/container_release3.yml delete mode 100644 .github/workflows/container_release4.yml delete mode 100644 .github/workflows/container_release5.yml diff --git a/.github/workflows/container_dev.yml b/.github/workflows/container_dev.yml index d602a16aa..edbb09338 100644 --- a/.github/workflows/container_dev.yml +++ b/.github/workflows/container_dev.yml @@ -3,7 +3,6 @@ name: "docker: build dev containers" on: push: branches: [ master ] - workflow_dispatch: {} permissions: contents: read diff --git a/.github/workflows/container_release1.yml b/.github/workflows/container_release1.yml deleted file mode 100644 index 6f073fc52..000000000 --- a/.github/workflows/container_release1.yml +++ /dev/null @@ -1,152 +0,0 @@ -name: "docker: build release containers for normal volume" - -# DISABLED: Merged into container_release_unified.yml -on: - workflow_dispatch: - inputs: - force_run: - description: 'This workflow is disabled. Use container_release_unified.yml instead' - required: true - default: 'disabled' - -permissions: - contents: read - -jobs: - build: - runs-on: ubuntu-latest - strategy: - matrix: - platform: [amd64, arm64, arm, 386] - include: - - platform: amd64 - qemu: false - - platform: arm64 - qemu: true - - platform: arm - qemu: true - - platform: 386 - qemu: true - steps: - - name: Checkout - uses: actions/checkout@v6 - - name: Free Disk Space - run: | - echo "Available disk space before cleanup:" - df -h - # Remove pre-installed tools - sudo rm -rf /usr/share/dotnet /usr/local/lib/android /opt/ghc /opt/hostedtoolcache/CodeQL - # Clean package managers - sudo apt-get clean - sudo rm -rf /var/lib/apt/lists/* - # Clean Docker aggressively - sudo docker system prune -af --volumes - # Clean Go cache if it exists - [ -d ~/.cache/go-build ] && rm -rf ~/.cache/go-build || true - [ -d /go/pkg ] && rm -rf /go/pkg || true - echo "Available disk space after cleanup:" - df -h - - name: Docker meta - id: docker_meta - uses: docker/metadata-action@v5 - with: - images: chrislusf/seaweedfs - tags: type=ref,event=tag - flavor: latest=false - - name: Set up QEMU - if: matrix.qemu - uses: docker/setup-qemu-action@v3 - - name: Create BuildKit config - run: | - cat > /tmp/buildkitd.toml <&2 - sleep $timeout - timeout=$((timeout * 2)) - fi - - attempt=$((attempt + 1)) - done - - echo "Command failed after $max_attempts attempts" >&2 - return $exit_code - } - - # Create manifest with retry - retry_with_backoff docker buildx imagetools create -t ${{ steps.docker_meta.outputs.tags }} \ - ${{ steps.docker_meta.outputs.tags }}-amd64 \ - ${{ steps.docker_meta.outputs.tags }}-arm64 \ - ${{ steps.docker_meta.outputs.tags }}-arm \ - ${{ steps.docker_meta.outputs.tags }}-386 diff --git a/.github/workflows/container_release2.yml b/.github/workflows/container_release2.yml deleted file mode 100644 index 678f10ad1..000000000 --- a/.github/workflows/container_release2.yml +++ /dev/null @@ -1,153 +0,0 @@ -name: "docker: build release containers for large volume" - -# DISABLED: Merged into container_release_unified.yml -on: - workflow_dispatch: - inputs: - force_run: - description: 'This workflow is disabled. Use container_release_unified.yml instead' - required: true - default: 'disabled' - -permissions: - contents: read - -jobs: - build: - runs-on: ubuntu-latest - strategy: - matrix: - platform: [amd64, arm64, arm, 386] - include: - - platform: amd64 - qemu: false - - platform: arm64 - qemu: true - - platform: arm - qemu: true - - platform: 386 - qemu: true - steps: - - name: Checkout - uses: actions/checkout@v6 - - name: Free Disk Space - run: | - echo "Available disk space before cleanup:" - df -h - # Remove pre-installed tools - sudo rm -rf /usr/share/dotnet /usr/local/lib/android /opt/ghc /opt/hostedtoolcache/CodeQL - # Clean package managers - sudo apt-get clean - sudo rm -rf /var/lib/apt/lists/* - # Clean Docker aggressively - sudo docker system prune -af --volumes - # Clean Go cache if it exists - [ -d ~/.cache/go-build ] && rm -rf ~/.cache/go-build || true - [ -d /go/pkg ] && rm -rf /go/pkg || true - echo "Available disk space after cleanup:" - df -h - - name: Docker meta - id: docker_meta - uses: docker/metadata-action@v5 - with: - images: chrislusf/seaweedfs - tags: type=ref,event=tag,suffix=_large_disk - flavor: latest=false - - name: Set up QEMU - if: matrix.qemu - uses: docker/setup-qemu-action@v3 - - name: Create BuildKit config - run: | - cat > /tmp/buildkitd.toml <&2 - sleep $timeout - timeout=$((timeout * 2)) - fi - - attempt=$((attempt + 1)) - done - - echo "Command failed after $max_attempts attempts" >&2 - return $exit_code - } - - # Create manifest with retry - retry_with_backoff docker buildx imagetools create -t ${{ steps.docker_meta.outputs.tags }} \ - ${{ steps.docker_meta.outputs.tags }}-amd64 \ - ${{ steps.docker_meta.outputs.tags }}-arm64 \ - ${{ steps.docker_meta.outputs.tags }}-arm \ - ${{ steps.docker_meta.outputs.tags }}-386 diff --git a/.github/workflows/container_release3.yml b/.github/workflows/container_release3.yml deleted file mode 100644 index c5075b605..000000000 --- a/.github/workflows/container_release3.yml +++ /dev/null @@ -1,73 +0,0 @@ -name: "docker: build release containers for rocksdb" - -# DISABLED: Merged into container_release_unified.yml -on: - workflow_dispatch: - inputs: - force_run: - description: 'This workflow is disabled. Use container_release_unified.yml instead' - required: true - default: 'disabled' - -permissions: - contents: read - -jobs: - - build-large-release-container_rocksdb: - runs-on: [ubuntu-latest] - - steps: - - - name: Checkout - uses: actions/checkout@v6 - - - name: Free Disk Space - run: | - sudo rm -rf /usr/share/dotnet /usr/local/lib/android /opt/ghc - sudo docker system prune -af - - - name: Docker meta - id: docker_meta - uses: docker/metadata-action@v5 - with: - images: chrislusf/seaweedfs - tags: type=ref,event=tag,suffix=_large_disk_rocksdb - flavor: latest=false - labels: | - org.opencontainers.image.title=seaweedfs - org.opencontainers.image.description=SeaweedFS is a distributed storage system for blobs, objects, files, and data lake, to store and serve billions of files fast! - org.opencontainers.image.vendor=Chris Lu - - - name: Create BuildKit config - run: | - cat > /tmp/buildkitd.toml <