Packaging and deployment

Packaging

This plugin is using the qgis-plugin-ci tool to perform packaging operations.
Under the hood, the package command is performing a git archive run based on CHANGELOG.md.

Install additional dependencies:

python -m pip install -U -r requirements/packaging.txt

Then use it:

# package a specific version
qgis-plugin-ci package 1.3.1
# package latest version
qgis-plugin-ci package latest

Release a version

Through git workflow:

  1. Add the new version to the CHANGELOG.md. You can write it manually or use the auto-generated release notes by Github:

    1. Go to project’s releases and click on Draft a new release

    2. In Choose a tag, enter the new tag

    3. Click on Generate release notes

    4. Copy/paste the generated text from ## What's changed until the line before **Full changelog**:... in the CHANGELOG.md replacing What's changed with the tag and the publication date

    5. Quit this tab without saving

  2. Change the version number in metadata.txt with the next version and DEV suffix. Example : if you’re about to release the version 2.2.0, the next one will be 2.2.1-DEV

  3. Commit the changelog modification to main branch: git commit -m "release: bump version to 2.2.0"

  4. Apply a git tag with the relevant version: git tag -a 2.2.0 {git commit hash} -m "This version rocks!"

  5. Push tag to main branch: git push origin 2.2.0