Add-on for zest.releaser for releasing qgis plugins
Add-on for zest.releaser for releasing QGIS plugins.
Zest.releaser can be extended, see its entrypoints documentation.
What we do:
- We hook into the “release” step and create a zipfile with a version number and copy it to the current directory. You can scp it to a server afterwards.
- In the “prerelease” and “postrelease” steps we change the version number in the (mandatory) QGIS metadata.txt file.
Note: a QGIS plugin doesn’t have a setup.py, so you’ll need to add a version.txt or version.rst or VERSION file so that zest.releaser recognizes the current directory as a releasable project and so that it can find the version number somewhere. Simply put the version number (“1.2”) by itself on the first line. A newline at the end is fine.
You’ll have to install it globally (or in a custom virtualenv) as qgis plugins normally don’t have a full python setup.
The plugin checks whether there’s a metadata.txt (lowercase) with a qgisMinimumVersion string inside it. If found, the plugin runs. Otherwise it stays out of the way. So it should be safe to install globally.
- Reinout van Rees started this library.
Changelog of qgispluginreleaser
- Use the codecs package in conjunction with “utf8” to read and write files.
- Qgis expects zip filenames to use a dot as name/version separator instead of a dash. We now create the zipfile with a dot instead.
- Initial project structure created with nensskel.
- Changing versions in metadata.txt in the prerelease/postrelease step.
- Creating a zipfile (with version number in the filename) automatically in the release step. Note that you must answer “yes” to the “checkout a tag?” question.