mirror of
https://github.com/stablyai/orca.git
synced 2026-10-08 00:02:38 +00:00
* fix(git): reduce queries and preserve data across execution hosts * fix(ci): exercise pinned Git and serialize mobile dependency entrypoints * fix(relay): preserve fresh diff retries after hung shared reads * test(git): wait for fetch barrier before canceling preparation * fix(i18n): describe index-preserving discard in every locale * fix(git): retain clone diagnostics and allow WSL policy startup * test(git): refresh default-base and branch-safety fixtures
36 lines
1.7 KiB
YAML
36 lines
1.7 KiB
YAML
name: Prepare baseline Git compatibility binary
|
|
description: Restore or build the pinned Linux Git binary for the compatibility contract.
|
|
|
|
runs:
|
|
using: composite
|
|
steps:
|
|
# The default-branch warmer shares this key across PRs; a PR save is private to its merge ref.
|
|
# Cache eviction remains possible, so keep the checksum-verified cold build below.
|
|
- name: Cache baseline Git build
|
|
uses: actions/cache@v5
|
|
with:
|
|
path: ~/.cache/orca-git-compat/git-2.25.5
|
|
key: git-compat-baseline-${{ runner.os }}-${{ runner.arch }}-2.25.5-submodule
|
|
|
|
# Finish the CPU-heavy build before any timed compatibility lanes start.
|
|
- name: Build the baseline Git binary
|
|
shell: bash
|
|
run: |
|
|
archive="$RUNNER_TEMP/git-2.25.5.tar.gz"
|
|
source="$HOME/.cache/orca-git-compat/git-2.25.5"
|
|
if [ -x "$source/git" ] && [ -x "$source/git-submodule" ] \
|
|
&& [ -f "$source/git-sh-setup" ] && [ -f "$source/git-sh-i18n" ] \
|
|
&& [ -f "$source/git-parse-remote" ] && [ -x "$source/git-sh-i18n--envsubst" ]; then
|
|
exit 0
|
|
fi
|
|
curl -fsSL https://www.kernel.org/pub/software/scm/git/git-2.25.5.tar.gz -o "$archive"
|
|
echo "41662c52fc16fec4963bfc41075e71f8ead6b5e386797eb6f9a1111ff95a8ddf $archive" \
|
|
| sha256sum --check
|
|
mkdir -p "$source"
|
|
tar -xzf "$archive" -C "$source" --strip-components=1
|
|
make -C "$source" -j"$(nproc)" \
|
|
NO_GETTEXT=YesPlease NO_TCLTK=YesPlease NO_PYTHON=YesPlease \
|
|
git git-submodule git-sh-setup git-sh-i18n git-parse-remote git-sh-i18n--envsubst
|
|
# Object files are no longer needed after linking the cached binary.
|
|
find "$source" -name '*.o' -delete
|