mirror of
https://github.com/lupyuen/nuttx-forgejo.git
synced 2025-01-12 22:58:28 +08:00
Sync Failed: Upstream and Downstream Commits don't match!
This commit is contained in:
parent
eec3e47893
commit
c97560298d
1 changed files with 14 additions and 75 deletions
|
@ -45,87 +45,26 @@ popd
|
|||
|
||||
## Apply the Commit Patches to Downstream Repo
|
||||
pushd downstream
|
||||
## git am \
|
||||
## $tmp_dir/commit.patch
|
||||
git am \
|
||||
$tmp_dir/commit.patch
|
||||
git status
|
||||
popd
|
||||
|
||||
## Commit the Patched Downstream Repo
|
||||
pushd downstream
|
||||
## git push -f
|
||||
git push -f
|
||||
popd
|
||||
|
||||
exit
|
||||
|
||||
|
||||
set +x ; echo "**** Waiting for Build to Complete then Ingest GitHub Actions Logs..." ; set -x
|
||||
pushd $script_dir/../ingest-nuttx-builds
|
||||
./github.sh ## https://github.com/lupyuen/ingest-nuttx-builds/blob/main/github.sh
|
||||
## Verify that Upstream and Downstream Commits are identical
|
||||
set +x ; echo "**** Updated Downstream Commit" ; set -x
|
||||
pushd downstream
|
||||
git pull
|
||||
downstream_commit2=$(git rev-parse HEAD)
|
||||
git --no-pager log -1
|
||||
popd
|
||||
|
||||
## Repeat forever
|
||||
for (( ; ; )); do
|
||||
|
||||
set +x ; echo "**** Checking Downstream Commit: Enable macOS Builds..." ; set -x
|
||||
pushd downstream
|
||||
git pull
|
||||
downstream_msg=$(git log -1 --format="%s")
|
||||
if [[ "$downstream_msg" != "Enable macOS Builds"* ]]; then
|
||||
set +x ; echo "**** ERROR: Expected Downstream Commit to be 'Enable macOS Builds' but found: $downstream_msg" ; set -x
|
||||
exit 1
|
||||
fi
|
||||
popd
|
||||
|
||||
set +x ; echo "**** Watching for Updates to NuttX Repo..." ; set -x
|
||||
## Get the Latest Upstream Commit.
|
||||
pushd upstream
|
||||
git pull
|
||||
upstream_date=$(git log -1 --format="%cI")
|
||||
git --no-pager log -1
|
||||
popd
|
||||
|
||||
## Get the Latest Downstream Commit (skip the "Enable macOS Builds")
|
||||
pushd downstream
|
||||
downstream_date=$(git log -1 --format="%cI" HEAD~1)
|
||||
git --no-pager log -1 HEAD~1
|
||||
popd
|
||||
|
||||
## If No Updates: Try again
|
||||
if [[ "$upstream_date" == "$downstream_date" ]]; then
|
||||
set +x ; echo "**** Waiting for upstream updates..." ; set -x
|
||||
date ; sleep 900
|
||||
continue
|
||||
fi
|
||||
|
||||
set +x ; echo "**** Discarding 'Enable macOS' commit from NuttX Mirror..." ; set -x
|
||||
pushd downstream
|
||||
git --no-pager log -1
|
||||
git reset --hard HEAD~1
|
||||
git status
|
||||
git push -f
|
||||
popd
|
||||
sleep 10
|
||||
|
||||
set +x ; echo "**** Syncing NuttX Mirror with NuttX Repo..." ; set -x
|
||||
gh repo sync NuttX/nuttx --force
|
||||
pushd downstream
|
||||
git pull
|
||||
git status
|
||||
git --no-pager log -1
|
||||
popd
|
||||
sleep 10
|
||||
|
||||
set +x ; echo "**** Building NuttX Mirror..." ; set -x
|
||||
$script_dir/enable-macos-windows.sh ## https://github.com/lupyuen/nuttx-release/blob/main/enable-macos-windows.sh
|
||||
|
||||
set +x ; echo "**** Waiting for Build to start..." ; set -x
|
||||
date ; sleep 900
|
||||
|
||||
set +x ; echo "**** Waiting for Build to Complete then Ingest GitHub Actions Logs..." ; set -x
|
||||
pushd $script_dir/../ingest-nuttx-builds
|
||||
./github.sh ## https://github.com/lupyuen/ingest-nuttx-builds/blob/main/github.sh
|
||||
popd
|
||||
|
||||
set +x ; echo "**** Done!" ; set -x
|
||||
date ; sleep 900
|
||||
done
|
||||
## If Not Identical: We have a problem
|
||||
if [[ "$downstream_commit2" != "$upstream_commit" ]]; then
|
||||
set +x ; echo "**** Sync Failed: Upstream and Downstream Commits don't match!" ; set -x
|
||||
exit 1
|
||||
fi
|
||||
|
|
Loading…
Reference in a new issue