summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorcrystal <crystal@noreply.codeberg.org>2024-11-19 03:29:52 -0700
committercrystal <crystal@noreply.codeberg.org>2024-11-19 03:29:52 -0700
commit83945869b059e5fe5ca61a8715dc05939dc0e277 (patch)
treeedb45e79b160f25dca38bf111c29bc3eacea4a89
parentf7823ae44f8c4072ab22ff7acc8a7bfb99dcd944 (diff)
[squash] Add automatic pull requests script
-rwxr-xr-x.auto-pr.sh43
1 files changed, 43 insertions, 0 deletions
diff --git a/.auto-pr.sh b/.auto-pr.sh
new file mode 100755
index 0000000..b8c564c
--- /dev/null
+++ b/.auto-pr.sh
@@ -0,0 +1,43 @@
+#!/bin/bash
+# Automatic pull request script
+
+FORGEJO_VERSION_PREFIX="v7.0."
+AUTO_PR_BRANCH="main"
+
+cd $(dirname $0)
+git fetch
+git checkout $AUTO_PR_BRANCH
+git reset --hard origin/$AUTO_PR_BRANCH
+git submodule update
+cd forgejo
+git reset --hard
+git fetch
+FORGEJO_LATEST=$(git tag --sort=committerdate | grep ^$FORGEJO_VERSION_PREFIX | tail -n1)
+FORGEJO_CURRENT=$(git describe --tags HEAD)
+FORGEJO_NOV=${FORGEJO_LATEST/v/}
+CHANGELOG_ADDITION="forgejo ($FORGEJO_NOV-1) unstable; urgency=medium
+
+ * Forgejo version $FORGEJO_NOV
+ * See https://codeberg.org/forgejo/forgejo/src/branch/forgejo/RELEASE-NOTES.md#${FORGEJO_NOV//./-}
+
+ -- $(whoami) <$(whoami)@noreply.codeberg.org> $(date --utc "+%a, %d %b %Y %H:%M:%S %z")
+"
+echo "$CHANGELOG_ADDITION"
+cd ..
+if [ "$FORGEJO_LATEST" != "$FORGEJO_CURRENT" ];then
+ if [ "$(git branch | grep autopr-$FORGEJO_LATEST)" ] ; then
+ echo "Oops! Pr branch already exists, not creating a duplicate pull request..."
+ exit 99
+ fi
+ git branch autopr-$FORGEJO_LATEST
+ git checkout autopr-$FORGEJO_LATEST
+ cd forgejo
+ git checkout "$FORGEJO_LATEST"
+ cd ..
+ echo "$CHANGELOG_ADDITION" > deb/debian/changelog-prepend
+ cat deb/debian/changelog >> deb/debian/changelog-prepend
+ mv deb/debian/changelog-prepend deb/debian/changelog
+ git add .
+ git commit -m "Forgejo $FORGEJO_LATEST"
+ git push origin HEAD:refs/for/$AUTO_PR_BRANCH/autopr-$FORGEJO_LATEST -o description="_auto-generated pull request_" # -o force-push=true
+fi