diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml index 1ee71a1e7b8..0ca65c9623f 100644 --- a/.github/workflows/publish.yml +++ b/.github/workflows/publish.yml @@ -95,20 +95,22 @@ jobs: GH_TOKEN: ${{ github.token }} GH_REPO: ${{ github.repository }} - # kilocode_change start - tar the whole dist tree into a single file before upload. - # download-artifact@v4's streaming unzip is CPU-bound and processes entries one by - # one; collapsing ~480 files into one tar cuts build-vscode download from >30m to - # seconds. compression-level: 0 avoids double-compressing binaries on the outer zip. + # kilocode_change start - pack dist tree into a single zstd-compressed tar before upload. + # download-artifact@v4's streaming unzip is CPU-bound and processes entries one by one; + # collapsing ~480 files into one tar cuts build-vscode download from >30m to seconds. + # zstd compresses the wasms (~4x) and leaves the already-compact binaries alone, for + # ~1 GB artifact. compression-level: 0 on the outer zip avoids double-compression. + # zstd + GNU tar are preinstalled on both github-hosted and blacksmith ubuntu-2404. # See actions/upload-artifact#36, actions/toolkit#1533. - - name: Pack CLI dist into tar + - name: Pack CLI dist into tar.zst run: | find packages/opencode/dist -name '*.map' -delete - tar -cf /tmp/kilo-cli.tar -C packages/opencode/dist . + tar --zstd -cf /tmp/kilo-cli.tar.zst -C packages/opencode/dist . - uses: actions/upload-artifact@v4 with: name: kilo-cli - path: /tmp/kilo-cli.tar + path: /tmp/kilo-cli.tar.zst compression-level: 0 # kilocode_change end @@ -137,11 +139,11 @@ jobs: name: kilo-cli path: /tmp - # kilocode_change start - extract the tar packed by build-cli + # kilocode_change start - extract the tar.zst packed by build-cli - name: Unpack CLI dist run: | mkdir -p packages/opencode/dist - tar -xf /tmp/kilo-cli.tar -C packages/opencode/dist + tar --zstd -xf /tmp/kilo-cli.tar.zst -C packages/opencode/dist # kilocode_change end - name: Build VSIX packages run: bun script/build.ts @@ -335,11 +337,11 @@ jobs: name: kilo-cli path: /tmp - # kilocode_change start - extract the tar packed by build-cli + # kilocode_change start - extract the tar.zst packed by build-cli - name: Unpack CLI dist run: | mkdir -p packages/opencode/dist - tar -xf /tmp/kilo-cli.tar -C packages/opencode/dist + tar --zstd -xf /tmp/kilo-cli.tar.zst -C packages/opencode/dist # kilocode_change end - uses: actions/download-artifact@v4 with: