ci: prefer gitea remote for workflow parity checks
This commit is contained in:
@@ -16,7 +16,11 @@ jobs:
|
||||
|
||||
- name: Fetch deploy branches for workflow parity check
|
||||
run: |
|
||||
git fetch --depth=1 origin main master
|
||||
REMOTE="${GITEA_WORKFLOW_REMOTE:-origin}"
|
||||
if git remote | grep -qx gitea; then
|
||||
REMOTE="${GITEA_WORKFLOW_REMOTE:-gitea}"
|
||||
fi
|
||||
git fetch --depth=1 "$REMOTE" main master
|
||||
|
||||
- name: Run repo validation gate
|
||||
run: |
|
||||
|
||||
@@ -16,6 +16,10 @@ jobs:
|
||||
uses: actions/checkout@v4
|
||||
- name: Fetch deploy branches for workflow parity check
|
||||
run: |
|
||||
git fetch --depth=1 origin main master
|
||||
REMOTE="${GITEA_WORKFLOW_REMOTE:-origin}"
|
||||
if git remote | grep -qx gitea; then
|
||||
REMOTE="${GITEA_WORKFLOW_REMOTE:-gitea}"
|
||||
fi
|
||||
git fetch --depth=1 "$REMOTE" main master
|
||||
- name: run-all-validation (no LAN, no genesis)
|
||||
run: bash scripts/verify/run-all-validation.sh --skip-genesis
|
||||
|
||||
@@ -16,7 +16,11 @@ jobs:
|
||||
|
||||
- name: Fetch deploy branches for workflow parity check
|
||||
run: |
|
||||
git fetch --depth=1 origin main master
|
||||
REMOTE="${GITEA_WORKFLOW_REMOTE:-origin}"
|
||||
if git remote | grep -qx gitea; then
|
||||
REMOTE="${GITEA_WORKFLOW_REMOTE:-gitea}"
|
||||
fi
|
||||
git fetch --depth=1 "$REMOTE" main master
|
||||
|
||||
- name: Run repo validation gate
|
||||
run: |
|
||||
|
||||
@@ -16,6 +16,10 @@ jobs:
|
||||
uses: actions/checkout@v4
|
||||
- name: Fetch deploy branches for workflow parity check
|
||||
run: |
|
||||
git fetch --depth=1 origin main master
|
||||
REMOTE="${GITEA_WORKFLOW_REMOTE:-origin}"
|
||||
if git remote | grep -qx gitea; then
|
||||
REMOTE="${GITEA_WORKFLOW_REMOTE:-gitea}"
|
||||
fi
|
||||
git fetch --depth=1 "$REMOTE" main master
|
||||
- name: run-all-validation (no LAN, no genesis)
|
||||
run: bash scripts/verify/run-all-validation.sh --skip-genesis
|
||||
|
||||
@@ -10,15 +10,20 @@ SOURCE_TARGET_PAIRS=(
|
||||
".gitea/workflow-sources/validate-on-pr.yml:.gitea/workflows/validate-on-pr.yml"
|
||||
)
|
||||
|
||||
REMOTE="${GITEA_WORKFLOW_REMOTE:-origin}"
|
||||
if git remote | grep -qx gitea; then
|
||||
REMOTE="${GITEA_WORKFLOW_REMOTE:-gitea}"
|
||||
fi
|
||||
|
||||
missing_ref=false
|
||||
for ref in origin/main origin/master; do
|
||||
for ref in "$REMOTE/main" "$REMOTE/master"; do
|
||||
if ! git rev-parse --verify "$ref" >/dev/null 2>&1; then
|
||||
missing_ref=true
|
||||
fi
|
||||
done
|
||||
|
||||
if [[ "$missing_ref" == true ]]; then
|
||||
echo "[i] Skipping main/master workflow parity check (origin/main or origin/master not available)"
|
||||
echo "[i] Skipping main/master workflow parity check ($REMOTE/main or $REMOTE/master not available)"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
@@ -26,23 +31,23 @@ for pair in "${SOURCE_TARGET_PAIRS[@]}"; do
|
||||
source="${pair%%:*}"
|
||||
target="${pair##*:}"
|
||||
|
||||
main_blob="$(git show "origin/main:$source" 2>/dev/null || true)"
|
||||
master_blob="$(git show "origin/master:$source" 2>/dev/null || true)"
|
||||
main_blob="$(git show "$REMOTE/main:$source" 2>/dev/null || true)"
|
||||
master_blob="$(git show "$REMOTE/master:$source" 2>/dev/null || true)"
|
||||
|
||||
if [[ -z "$main_blob" ]]; then
|
||||
main_blob="$(git show "origin/main:$target" 2>/dev/null || true)"
|
||||
main_blob="$(git show "$REMOTE/main:$target" 2>/dev/null || true)"
|
||||
fi
|
||||
if [[ -z "$master_blob" ]]; then
|
||||
master_blob="$(git show "origin/master:$target" 2>/dev/null || true)"
|
||||
master_blob="$(git show "$REMOTE/master:$target" 2>/dev/null || true)"
|
||||
fi
|
||||
|
||||
if [[ -z "$main_blob" || -z "$master_blob" ]]; then
|
||||
echo "[✗] Missing $source/$target on origin/main or origin/master" >&2
|
||||
echo "[✗] Missing $source/$target on $REMOTE/main or $REMOTE/master" >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [[ "$main_blob" != "$master_blob" ]]; then
|
||||
echo "[✗] Branch workflow drift: $source differs between origin/main and origin/master" >&2
|
||||
echo "[✗] Branch workflow drift: $source differs between $REMOTE/main and $REMOTE/master" >&2
|
||||
echo " Keep both deploy branches in lockstep for workflow-source files." >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
Reference in New Issue
Block a user