[squash] Switch to Forgejo Actions
This commit is contained in:
parent
371709d631
commit
08f545c366
6 changed files with 284 additions and 366 deletions
64
.ci-make.sh
64
.ci-make.sh
|
@ -19,6 +19,40 @@ case "$1" in
|
|||
make "$@"
|
||||
exit $?
|
||||
;;
|
||||
"actions-prep")
|
||||
case "$2" in
|
||||
"build-forgejo-deb")
|
||||
APREP_APT_EXTRAS="debhelper devscripts sudo"
|
||||
;;
|
||||
"installtest")
|
||||
APREP_APT_EXTRAS="sudo"
|
||||
;;
|
||||
"")
|
||||
APREP_APT_EXTRAS=
|
||||
;;
|
||||
*)
|
||||
echo "Invalid argument: $2"
|
||||
exit 98
|
||||
;;
|
||||
esac
|
||||
EXIT_TOTAL=0
|
||||
apt update
|
||||
EXIT_TOTAL=$(($EXIT_TOTAL+$?))
|
||||
apt upgrade -y
|
||||
EXIT_TOTAL=$(($EXIT_TOTAL+$?))
|
||||
if [ "$APREP_APT_EXTRAS" ] ; then
|
||||
apt install $APREP_APT_EXTRAS -y
|
||||
EXIT_TOTAL=$(($EXIT_TOTAL+$?))
|
||||
fi
|
||||
ACTIONS_FORGEJOSHA="$(git rev-parse --short=10 HEAD)"
|
||||
if [ "$GITHUB_REF_TYPE" = "tag" ] ; then
|
||||
echo "::set-output name=artifactlabel::$GITHUB_REF_NAME-$ACTIONS_FORGEJOSHA"
|
||||
else
|
||||
echo "::set-output name=artifactlabel::$ACTIONS_FORGEJOSHA"
|
||||
fi
|
||||
echo "::set-output name=forgejosha::$ACTIONS_FORGEJOSHA"
|
||||
exit $EXIT_TOTAL
|
||||
;;
|
||||
"ci-verify")
|
||||
RETRY_LOOPS=0
|
||||
while [ $RETRY_LOOPS -le $CI_VERIFY_RETRY_COUNT ] ; do
|
||||
|
@ -43,6 +77,26 @@ case "$1" in
|
|||
exit 255
|
||||
;;
|
||||
"download-binary")
|
||||
if [ "$GITHUB_REF_TYPE" = "tag" ] ; then
|
||||
echo "INFO: Forgejo Actions mode!"
|
||||
CI_COMMIT_TAG="$GITHUB_REF_NAME"
|
||||
elif [ "$GITHUB_REF_TYPE" = "branch" ] ; then
|
||||
echo "WARNING: Not building a tag! Simulating it..."
|
||||
echo "(forgejo actions mode)"
|
||||
echo "(this will test the binary packaging without cutting a tag in the package)"
|
||||
echo "Resolving tag..."
|
||||
cd forgejo
|
||||
CI_COMMIT_TAG_RESOLVE=$(git tag --points-at HEAD)
|
||||
if [ ! $CI_COMMIT_TAG_RESOLVE ] ; then
|
||||
echo "Failed to resolve exact tag! Getting as close as we can..."
|
||||
git describe --tags HEAD
|
||||
CI_COMMIT_TAG_RESOLVE=$(git describe --tags HEAD --abbrev=0)
|
||||
echo "Closest existing tag: $CI_COMMIT_TAG_RESOLVE"
|
||||
fi
|
||||
cd ..
|
||||
echo "Proceeding with resolved tag: $CI_COMMIT_TAG_RESOLVE"
|
||||
CI_COMMIT_TAG="$CI_COMMIT_TAG_RESOLVE"
|
||||
fi
|
||||
if [ $CI_COMMIT_TAG ] ; then
|
||||
CI_RELEASE_ASSETS=$(curl $CI_VERIFY_API/api/v1/repos/$CI_VERIFY_REPO/releases/tags/$CI_COMMIT_TAG | jq -c '.assets[]' | grep linux-amd64)
|
||||
CI_RELEASE_BINARY_URL=$(echo "$CI_RELEASE_ASSETS" | grep linux-amd64\" | jq -r --jsonargs .browser_download_url)
|
||||
|
@ -77,9 +131,17 @@ case "$1" in
|
|||
cat deb/.forgejo-bin.control >> deb/debian/control
|
||||
fi
|
||||
;;
|
||||
"package-build-deps")
|
||||
cd deb
|
||||
mk-build-deps --install --tool "apt-get -o Debug::pkgProblemResolver=yes --no-install-recommends -y" --remove
|
||||
exit $?
|
||||
;;
|
||||
"package-build")
|
||||
cd deb
|
||||
dpkg-buildpackage -b
|
||||
if [ "$2" = "actions" ] ; then
|
||||
PACKAGE_BUILD_EXTRA_ARGS="--no-sign"
|
||||
fi
|
||||
dpkg-buildpackage -b $PACKAGE_BUILD_EXTRA_ARGS
|
||||
exit $?
|
||||
;;
|
||||
"package-clean")
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue