Release process
This section outlines the release process for GeoGirafe. It contains the instructions for contributors responsible for publishing GeoGirafe releases.
Preparation
1. Release Notes
- Verify that the changelog is up to date and working correctly:
🔗 https://doc.geogirafe.org/docs/upgrading/changelog - Prepare the release notes for GitLab using the changelog and the list of merge requests.
🔗 https://gitlab.com/geogirafe/gg-viewer/-/releases
2. Social Media & Blog
- Draft a blog post:
🔗 https://geogirafe.org/blog/ - Prepare a LinkedIn post:
🔗 https://www.linkedin.com/company/105822285/admin/page-posts/published/ - Prepare a Post for Discord, channel announcements 🔗 https://discord.com/channels/1194934479282778122/1239473095237177415
Publication
1. gg-viewer Repository
- Create a tag with the version number:
🔗 https://gitlab.com/geogirafe/gg-viewer/-/tags - Protect the tag in the repository settings by choosing Maintainers group: 🔗 https://gitlab.com/geogirafe/gg-viewer/-/settings/repository#js-protected-tags-settings
- A pipeline will automatically start:
🔗 https://gitlab.com/geogirafe/gg-viewer/-/pipelines - Verify that the new version has been published to npm:
🔗 https://www.npmjs.com/package/@geogirafe/lib-geoportal?activeTab=versions - Create a new release based on the new tag:
🔗 https://gitlab.com/geogirafe/gg-viewer/-/releases/new
2. gg-sample Repository
- Create a merge request to merge
nextintomain.
⚠️ Important: Uncheck "Delete source branch when merge request is accepted"
(thenextbranch will be reused for future versions). - Merge the changes.
- Create a new tag from
mainwith the version number you just published. - Try to create GeoGirafe project based on the lib:
npm create @geogirafe/template my-geogirafe-app
Verify that is based on the last dev version. - Try to create GeoGirafe project based on the new tag:
npm create @geogirafe/template my-geogirafe-app v<version_number>
Verify that is based on the last stable version.
2. gg-doc Repository
- Update the roadmap:
🔗 https://doc.geogirafe.org/docs/introduction/roadmap
3. Social Media & Blog
- Publish the Blog article.
- Publish the LinkedIn post.
- Publish the Discord post.
Prepare the next version
1. gg-viewer Repository
- Update the
package.jsonfile with the next version number:
🔗 https://gitlab.com/geogirafe/gg-viewer/-/blob/main/package.json?ref_type=heads#L8
Runnpm ito updatepackage-lock.jsonand push the changes. - Verify that the new dev version has been published to npm after the pipeline finished:
🔗 https://www.npmjs.com/package/@geogirafe/lib-geoportal?activeTab=versions - Close the released milestone, and create a new one
🔗 https://gitlab.com/geogirafe/gg-viewer/-/milestones - Remove the released board, and create a new one
🔗 https://gitlab.com/geogirafe/gg-viewer/-/boards/11257807