mirror of
https://github.com/octoleo/plantuml.git
synced 2024-11-17 02:35:09 +00:00
1b25c3c00b
workflow and scripts are duplicated so nothing existing breaks. ci-gradle triggers are commented apart from the workflow trigger which allows manual start, so one can compare artifacts.
47 lines
1.9 KiB
Bash
Executable File
47 lines
1.9 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
set -ex
|
|
|
|
TAG="snapshot"
|
|
DATE_TIME_UTC=$(date -u +"%F at %T (UTC)")
|
|
RELEASE_DIR="build/github_release"
|
|
|
|
gh release delete "${TAG}" -y || true
|
|
|
|
git tag --force "${TAG}"
|
|
|
|
git push --force origin "${TAG}"
|
|
|
|
mkdir "${RELEASE_DIR}"
|
|
|
|
ln -s "../publications/maven/module.json" "${RELEASE_DIR}/plantuml-SNAPSHOT-module.json"
|
|
ln -s "../publications/maven/pom-default.xml" "${RELEASE_DIR}/plantuml-SNAPSHOT.pom"
|
|
ln -s "../libs/plantuml.jar" "${RELEASE_DIR}/plantuml-SNAPSHOT.jar"
|
|
ln -s "../libs/plantuml-javadoc.jar" "${RELEASE_DIR}/plantuml-SNAPSHOT-javadoc.jar"
|
|
ln -s "../libs/plantuml-sources.jar" "${RELEASE_DIR}/plantuml-SNAPSHOT-sources.jar"
|
|
|
|
if [[ -e "build/publications/maven/module.json.asc" ]]; then
|
|
# signatures are optional so that forked repos can release snapshots without needing a gpg signing key
|
|
ln -s "../publications/maven/module.json.asc" "${RELEASE_DIR}/plantuml-SNAPSHOT-module.json.asc"
|
|
ln -s "../publications/maven/pom-default.xml.asc" "${RELEASE_DIR}/plantuml-SNAPSHOT.pom.asc"
|
|
ln -s "../libs/plantuml.jar.asc" "${RELEASE_DIR}/plantuml-SNAPSHOT.jar.asc"
|
|
ln -s "../libs/plantuml-javadoc.jar.asc" "${RELEASE_DIR}/plantuml-SNAPSHOT-javadoc.jar.asc"
|
|
ln -s "../libs/plantuml-sources.jar.asc" "${RELEASE_DIR}/plantuml-SNAPSHOT-sources.jar.asc"
|
|
fi
|
|
|
|
echo -n "${DATE_TIME_UTC}" > "${RELEASE_DIR}/plantuml-SNAPSHOT.timestamp"
|
|
|
|
cat <<-EOF >notes.txt
|
|
This is a pre-release of [the latest development work](https://github.com/plantuml/plantuml/commits/).
|
|
⚠️ **It is not ready for general use** ⚠️
|
|
⏱ _Snapshot taken the ${DATE_TIME_UTC}_
|
|
EOF
|
|
|
|
gh release create \
|
|
--prerelease \
|
|
--target "${GITHUB_SHA}" \
|
|
--title "${TAG}" \
|
|
--notes-file notes.txt \
|
|
"${TAG}" ${RELEASE_DIR}/*
|
|
|
|
echo "::notice title=release snapshot::Snapshot released at ${GITHUB_SERVER_URL}/${GITHUB_REPOSITORY}/releases/tag/${TAG} and taken the ${DATE_TIME_UTC}"
|