-
Notifications
You must be signed in to change notification settings - Fork 7
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
2 changed files
with
98 additions
and
1 deletion.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,6 +1,6 @@ | ||
[tool.poetry] | ||
name = "ohsome_quality_api" | ||
version = "1.5.0" | ||
version = "1.6.1" | ||
description = "Data quality estimations for OpenStreetMap." | ||
authors = ["ohsome team <[email protected]>"] | ||
homepage = "https://api.quality.ohsome.org" | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,97 @@ | ||
# based on docs here: https://heigit.atlassian.net/wiki/spaces/OQT/pages/3474149/Releases | ||
# requires local installation of `gh`, the github CLI: https://cli.github.com | ||
|
||
|
||
# please adjust these version names first | ||
export OLD_VERSION=1.5.0 | ||
export NEW_VERSION=1.6.0 | ||
|
||
|
||
# change to main directory | ||
cd .. | ||
|
||
# activate python environment for commit checks needed later | ||
poetry shell | ||
|
||
# get latest version of main and create new branch | ||
read -p "π create release branch?" | ||
git checkout main | ||
git pull | ||
git checkout -b release-$NEW_VERSION | ||
echo "β created release branch of the latest main" | ||
|
||
|
||
# update to latest version of swagger libs | ||
read -p "π update swagger?" | ||
./scripts/update_swagger_scripts.sh | ||
echo "β updated to latest version of swagger libs" | ||
|
||
|
||
# Update version in pyproject.toml | ||
read -p "π update project version?" | ||
poetry version $NEW_VERSION | ||
echo "β updated project version in pyproject.toml to $NEW_VERSION" | ||
|
||
|
||
# update version in __init__.py | ||
read -p "π update __init__.py?" | ||
export OLD="__version__ = \"$OLD_VERSION\"" | ||
export NEW="__version__ = \"$NEW_VERSION\"" | ||
|
||
# might not work like this on linux | ||
sed -i .bak "s/$OLD/$NEW/g" ohsome_quality_api/__init__.py | ||
rm -rf ohsome_quality_api/__init__.py.bak | ||
echo "β updated __init__.py to $NEW_VERSION" | ||
|
||
|
||
# insert new sub-headline for new release | ||
read -p "π update CHANGELOG.md?" | ||
sed -i .bak "s/## Current Main/## Current Main \n\n## Release $NEW_VERSION/g" CHANGELOG.md | ||
rm -rf CHANGELOG.md.bak | ||
echo "β updated CHANGELOG.md" | ||
|
||
|
||
read -p "π commit and push all changed files?" | ||
git add pyproject.toml | ||
git add ohsome_quality_api/__init__.py | ||
git add tests/integrationtests/fixtures/vcr_cassettes/* | ||
git add CHANGELOG.md | ||
git add scripts/release.sh | ||
git add ohsome_quality_api/api/static/* | ||
git commit -m "prepare release $NEW_VERSION" | ||
git push --set-upstream origin release-$NEW_VERSION | ||
echo "β committed and pushed all changed files" | ||
|
||
|
||
# create PR | ||
read -p "π create PR?" | ||
gh pr create --title "release new version $NEW_VERSION" --body "This PR is used for the Oqapi release process." | ||
echo "β created new PR for the release" | ||
|
||
|
||
# get PR approved | ||
read -p "β οΈ Please check swagger docs and have PR approved - hit <enter> when ready!" | ||
|
||
|
||
read -p "π merge approved PR?" | ||
gh pr merge --rebase | ||
echo "β rebased the release PR into main" | ||
|
||
|
||
git checkout main | ||
git pull | ||
|
||
|
||
# create github release and corresponding tag | ||
read -p "π create github release and tag?" | ||
export ANCHOR="release-${NEW_VERSION//\./}" | ||
gh release create "$NEW_VERSION" -t "$NEW_VERSION" \ | ||
-n "See the [changelog](https://github.com/GIScience/ohsome-quality-api/blob/main/CHANGELOG.md#$ANCHOR) for release details." | ||
echo "β created new github release and tag for version: $NEW_VERSION" | ||
|
||
|
||
|
||
echo "β οΈ Please start the Jenkins tag build here: https://jenkins.heigit.org/job/OQAPI/view/tags/job/$NEW_VERSION/" | ||
|
||
# may not work like this under linux: | ||
open "https://jenkins.heigit.org/job/OQAPI/view/tags/job/$NEW_VERSION/" |