Skip to content
This repository has been archived by the owner on Sep 28, 2023. It is now read-only.

Latest commit

 

History

History
82 lines (65 loc) · 1.8 KB

RELEASE.md

File metadata and controls

82 lines (65 loc) · 1.8 KB

Release Workflow

Before submitting a new release, make sure all relevant pull requests and local branches have been merged to the main branch. All tests must pass before a release is tagged.

1. Puppet Development Kit

If not installed, please install the PDK and do a 'bundle install'.

pdk bundle install

Or if already installed do an update.

pdk bundle update

2. AUTHORS

Update the AUTHORS and .mailmap file

git checkout main
git log --use-mailmap | grep ^Author: | cut -f2- -d' ' | sort | uniq > AUTHORS
git commit -am "Update AUTHORS"

3. References [REFERENCE.md]

If it is not installed [puppet-strings]:

gem install puppet-strings --no-ri --no-rdoc
puppet strings generate --format markdown --out ./REFERENCE.md

4. Changelog

Install github-changelog-generator

gem install github_changelog_generator

Generate CHANGELOG.md

github_changelog_generator -t <github-access-token> --future-release=v2.3.1 --project=puppet-icingaweb2 --user=icinga

5. Version

Version numbers are incremented regarding the SemVer 1.0.0 specification. Update the version number in metadata.json.

6. Git Tag

Commit all changes to the main branch

git commit -v -a -m "Release version <VERSION>"
git push

Tag the release

git tag -m "Version <VERSION>" v<VERSION>

Push tags

git push --tags

7. Build and Upload

pdk build

Upload the tarball to Puppet Forge.