Skip to content

Commit 4dcb654

Browse files
committed
add in override
1 parent 8885103 commit 4dcb654

2 files changed

Lines changed: 41 additions & 19 deletions

File tree

.github/workflows/main.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,7 @@ jobs:
5656
AWS_S3_KEY_PREFIX: "${{env.REPOSITORY_NAME}}/"
5757
CANONICAL_LINK_PREFIX: ${{env.CANONICAL_LINK_PREFIX}}
5858
GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}}
59+
OVERRIDE_SUBMODULE_SHA: ""
5960

6061
- name: Build and deploy document (HTML Pub repo)
6162
uses: ./workflows

workflows/action.yml

Lines changed: 40 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,10 @@ inputs:
2020
OFFICIAL_SUBMODULE_BRANCH:
2121
required: false
2222
default: main
23+
OVERRIDE_SUBMODULE_SHA:
24+
required: false
25+
OVERRIDE_SUBMODULE_REF:
26+
required: false
2327

2428
runs:
2529
using: "composite"
@@ -35,6 +39,8 @@ runs:
3539
SUB_PATH: ${{ inputs.OFFICIAL_SUBMODULE_PATH }}
3640
OFFICIAL_URL: ${{ inputs.OFFICIAL_SUBMODULE_URL }}
3741
OFFICIAL_BRANCH: ${{ inputs.OFFICIAL_SUBMODULE_BRANCH }}
42+
OVERRIDE_SHA: ${{ inputs.OVERRIDE_SUBMODULE_SHA }}
43+
OVERRIDE_REF: ${{ inputs.OVERRIDE_SUBMODULE_REF }}
3844
run: |
3945
set -euo pipefail
4046
@@ -65,28 +71,43 @@ runs:
6571
exit 1
6672
fi
6773
68-
OFFICIAL_SHA=$(git ls-remote "$OFFICIAL_URL" "refs/heads/$OFFICIAL_BRANCH" | awk '{print $1}')
69-
if [[ -z "${OFFICIAL_SHA:-}" ]]; then
70-
echo "ERROR: Could not read '$OFFICIAL_BRANCH' from '$OFFICIAL_URL'"
71-
exit 1
74+
if [[ -n "${OVERRIDE_SHA:-}" ]]; then
75+
TARGET_SHA="$OVERRIDE_SHA"
76+
elif [[ -n "${OVERRIDE_REF:-}" ]]; then
77+
TARGET_SHA=$(git ls-remote "$OFFICIAL_URL" "$OVERRIDE_REF" | awk '{print $1}')
78+
if [[ -z "${TARGET_SHA:-}" ]]; then
79+
echo "ERROR: Could not read override ref '$OVERRIDE_REF' from '$OFFICIAL_URL'"
80+
exit 1
81+
fi
82+
else
83+
TARGET_SHA=$(git ls-remote "$OFFICIAL_URL" "refs/heads/$OFFICIAL_BRANCH" | awk '{print $1}')
84+
if [[ -z "${TARGET_SHA:-}" ]]; then
85+
echo "ERROR: Could not read '$OFFICIAL_BRANCH' from '$OFFICIAL_URL'"
86+
exit 1
87+
fi
7288
fi
7389
7490
echo "Recorded(${SUB_PATH}): $RECORDED_SHA"
75-
echo "Official ($OFFICIAL_BRANCH): $OFFICIAL_SHA"
76-
77-
if [[ "$RECORDED_SHA" != "$OFFICIAL_SHA" ]]; then
78-
echo "ERROR: Submodule is not on latest official main."
79-
echo
80-
echo "To fix locally:"
81-
echo " git submodule update --init --remote -- \"${SUB_PATH}\""
82-
echo " # or explicitly:"
83-
echo " cd \"${SUB_PATH}\""
84-
echo " git fetch origin \"${OFFICIAL_BRANCH}\""
85-
echo " git checkout --detach \"origin/${OFFICIAL_BRANCH}\""
86-
echo " cd -"
87-
echo " git add \"${SUB_PATH}\""
88-
echo " git commit -m \"Bump ${SUB_PATH} to latest ${OFFICIAL_BRANCH}\""
89-
exit 1
91+
echo "Target (${SUB_PATH}): $TARGET_SHA"
92+
93+
if [[ "$RECORDED_SHA" != "$TARGET_SHA" ]]; then
94+
if [[ -n "${OVERRIDE_SHA:-}" || -n "${OVERRIDE_REF:-}" ]]; then
95+
echo "::warning::Submodule commit mismatch (override active). Recorded=${RECORDED_SHA} Target=${TARGET_SHA}"
96+
# Do not exit; proceed to allow testing with override.
97+
else
98+
echo "ERROR: Submodule is not on latest official main."
99+
echo
100+
echo "To fix locally:"
101+
echo " git submodule update --init --remote -- \"${SUB_PATH}\""
102+
echo " # or explicitly:"
103+
echo " cd \"${SUB_PATH}\""
104+
echo " git fetch origin \"${OFFICIAL_BRANCH}\""
105+
echo " git checkout --detach \"origin/${OFFICIAL_BRANCH}\""
106+
echo " cd -"
107+
echo " git add \"${SUB_PATH}\""
108+
echo " git commit -m \"Bump ${SUB_PATH} to latest ${OFFICIAL_BRANCH}\""
109+
exit 1
110+
fi
90111
fi
91112
92113
- name: Install vnu

0 commit comments

Comments
 (0)