-
-
Notifications
You must be signed in to change notification settings - Fork 282
ReleaseManagement
Tom Kralidis edited this page Jun 5, 2020
·
29 revisions
The following are step by step instructions on how to package a release.
Make sure the source builds and works locally, and the docs build with no errors
Make sure the source passes Travis CI, OGC CITE tests and unit tests
Create a release tag against master:
- update desired branch with
x.y.z
inpygeoapi/__init__.py
- update changelog information in
debian/changelog
- commit the above updates:
# in branch master
git commit -am 'update release version'
git push origin master # or branch if releasing from a branch
Release tags are in the format x.y.z
If releasing from master:
git tag -a x.y.z -m 'tagging x.y.z'
git push --tags
If releasing from a branch:
git checkout x.y
git tag -a x.y.z -m 'tagging x.y.z'
git push --tags
Release to PyPI:
python3 setup.py sdist bdist_wheel --universal
twine upload dist/*
Create Docker Image on DockerHub for release/tag (you'll need permission for that repo on DockerHub):
- Go to pygeoapi DockerHub Builds Page.
- Press the blue button "Configure Automated Builds"
- Under "Build Rules" press the '+' button
- In new build rule choose: Source Type
tag
and fill-in new tagx.y.z
in Source and Docker Tag columns - Disable toggle Build Caching in last column
- Press the button Save (Save and Build will build all tagged Images!)
- Press the button Trigger Build
- Inspect the build progress (may take up to 15 mins!) on builds
Upgrade stable
version of pygeoapi
on demo.pygeoapi.io/stable. Not automated yet!
Requires changes within the demo.pygeoapi.io GH repo and the demo server:
- edit/commit/push docker-compose file: set new version tag
x.y.z
ofimage: geopython/pygeoapi: x.y.z
- login with admin account on demo server
demo.pygeoapi.io
cd git
- pull changes on server:
./refresh-git.sh
- no rebuild needed, only possible changes in local.config.yml if config-conventions have changed
- restart:
cd git/services/pygeoapi_stable
- restart:
./stop.sh
then./start.sh
- update https://github.com/geopython/pygeoapi.io/blob/master/docs/download.md
- push updates
git commit -m 'update release' docs/download.md
git push origin master
mkdocs gh-deploy --force -m 'update release'