[llvm] [Github] Make Windows container use zstd (PR #167022)
Aiden Grossman via llvm-commits
llvm-commits at lists.llvm.org
Fri Nov 7 13:20:07 PST 2025
https://github.com/boomanaiden154 created https://github.com/llvm/llvm-project/pull/167022
This enables much faster image unpack times. We benchmarked 20-30% improvements when testing this initially. Use skopeo to copy the image as it just works over the docker-archive/OCI container formats and does not need to unpack the image to upload it.
>From b7b38247e016ed02c60ccd48e9a67b38da003de2 Mon Sep 17 00:00:00 2001
From: Aiden Grossman <aidengrossman at google.com>
Date: Fri, 7 Nov 2025 21:18:19 +0000
Subject: [PATCH] [Github] Make Windows container use zstd
This enables much faster image unpack times. We benchmarked 20-30%
improvements when testing this initially. Use skopeo to copy the image
as it just works over the docker-archive/OCI container formats and does
not need to unpack the image to upload it.
---
.../workflows/build-ci-container-windows.yml | 22 +++++++++++--------
1 file changed, 13 insertions(+), 9 deletions(-)
diff --git a/.github/workflows/build-ci-container-windows.yml b/.github/workflows/build-ci-container-windows.yml
index b6c46b70030ab..1be644077dca4 100644
--- a/.github/workflows/build-ci-container-windows.yml
+++ b/.github/workflows/build-ci-container-windows.yml
@@ -51,12 +51,12 @@ jobs:
retention-days: 14
push-ci-container:
- if: github.event_name == 'push'
+ #if: github.event_name == 'push'
needs:
- build-ci-container-windows
- permissions:
- packages: write
- runs-on: windows-2022
+ #permissions:
+ # packages: write
+ runs-on: ubuntu-24.04
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
steps:
@@ -66,8 +66,12 @@ jobs:
name: container
- name: Push Container
run: |
- docker load -i ${{ needs.build-ci-container-windows.outputs.container-filename }}
- docker tag ${{ needs.build-ci-container-windows.outputs.container-name-tag }} ${{ needs.build-ci-container-windows.outputs.container-name }}:latest
- docker login -u ${{ github.actor }} -p $env:GITHUB_TOKEN ghcr.io
- docker push ${{ needs.build-ci-container-windows.outputs.container-name-tag }}
- docker push ${{ needs.build-ci-container-windows.outputs.container-name }}:latest
+ sudo apt-get update
+ sudo apt-get install -y skopeo
+ skopeo login -u ${{ github.actor }} -p $env:GITHUB_TOKEN ghcr.io
+ skopeo copy ${{ needs.build-ci-container-windows.outputs.container-filename }} \
+ --additional-tags=latest \
+ --dest-compress-format zstd \
+ --dest-force-compress-format \
+ oci:/tmp/blah.tar
+ #docker://${{ needs.build-ci-container-windows.outputs.container-name-tag }}
More information about the llvm-commits
mailing list