Skip to content

ci-artifacts: add workflow for the build-installers artifact#55

Merged
dscho merged 1 commit intomainfrom
build-installers-as-ci-artifacts
Apr 22, 2026
Merged

ci-artifacts: add workflow for the build-installers artifact#55
dscho merged 1 commit intomainfrom
build-installers-as-ci-artifacts

Conversation

@dscho
Copy link
Copy Markdown
Member

@dscho dscho commented Apr 18, 2026

This ports a subset of the ci-artifacts workflow from git-sdk-64 (see git-for-windows/git-sdk-64#113) to git-sdk-32. Since git-sdk-32 does not build a minimal SDK artifact, only the build-installers flavor is included.

On every push to main, the workflow creates a build-installers SDK artifact via please.sh create-sdk-artifact, compresses it as git-sdk-i686-build-installers.tar.zst, and publishes it to a rolling ci-artifacts GitHub release.

This ports a subset of the `ci-artifacts` workflow from git-sdk-64
(see git-for-windows/git-sdk-64#113) to
git-sdk-32. Since git-sdk-32 does not build a minimal SDK artifact,
only the `build-installers` flavor is included.

On every push to `main`, the workflow creates a `build-installers`
SDK artifact via `please.sh create-sdk-artifact`, compresses it as
`git-sdk-i686-build-installers.tar.zst`, and publishes it to a
rolling `ci-artifacts` GitHub release. The publish step uses the
same temporary-rename strategy as git-sdk-64 to minimize the window
during which the asset is unavailable.

Assisted-by: Claude Opus 4.6
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
@dscho dscho marked this pull request as ready for review April 18, 2026 19:19
@dscho dscho self-assigned this Apr 18, 2026
@dscho dscho requested review from mjcheetham and rimrul April 18, 2026 19:20
@dscho dscho merged commit 06f1dff into main Apr 22, 2026
3 checks passed
@dscho dscho deleted the build-installers-as-ci-artifacts branch April 22, 2026 10:06
dscho added a commit to Shadowghost/setup-git-for-windows-sdk that referenced this pull request Apr 27, 2026
As of git-for-windows/git-sdk-64#113,
git-for-windows/git-sdk-arm64#56 and
git-for-windows/git-sdk-32#55, the
`ci-artifacts` releases of the git-sdk-* repositories now provide
pre-built `build-installers` artifacts as `.tar.zst` files (e.g.
`git-sdk-x86_64-build-installers.tar.zst`). Downloading and extracting
these is substantially faster than the previous approach of cloning the
repository and running `please.sh create-sdk-artifact`.

The built-in `tar.exe` on Windows Server 2025 and Windows 11 24H2
(OS build 26100 and later) supports Zstandard decompression natively
via libarchive (which is the reason why above-mentioned PRs use that
format to publish the `build-installers` artifact).

Older runner images such as `windows-2022` (build 20348) lack this
support, so we detect the OS build number at runtime and fall back to
the existing `getViaGit` code path when Zstandard extraction would fail.

The `getViaCIArtifacts` function now accepts a `flavor` parameter so
both `minimal` (which continues to use `.tar.gz`) and `build-installers`
(which uses `.tar.zst`) can be served from the same code path with
hardcoded, per-flavor asset names that match the actual release assets.

Assisted-by: Claude Opus 4.6
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants