Update Version#

action update-version#

Uses yaclog and yaclog-ksp to update a changelog and get release notes. Then runs update-version.sh to replace version tokens in several text files. All modifications will be staged to git but not committed.

Example

- uses: KSPModdingLibs/KSPBuildTools/.github/actions/update-version@1.1.1

Inputs

input version-string#
Required:
True

A version number in major.minor.patch.build form, or one of the special strings --major --minor --patch which will increment the version based on the most recent entry in the changelog file.

input template-extension#
Default:
.versiontemplate

Corresponds to the input to update-version.sh.

input files#

Corresponds to the input to update-version.sh.

input ksp-build-tools-root#
Default:
tmp/kspbuildtools

Where to download update-version.sh.

input changelog-input-file#
Default:
CHANGELOG.md

The name of a changelog file to use. Should be formatted according to Keep a Changelog, with a ## Unreleased section at the top for changes that are pending release. yaclog release will be invoked which replaces the ## Unreleased section with the version number and the date stamp.

input changelog-output-file#

If specified, this action will run yaclog-ksp on the changelog input file which generates a changelog .cfg file suitable for Kerbal Changelog. As such, changelog-output-file should be somewhere in your mod’s artifact path so that it will be included when the mod is installed.

input release-notes-output-file#
Default:
tmp/release-notes.md

If specified, uses yaclog to save the most recent changelog info in Markdown format to this file. This can then be used by the assemble-release action.

Outputs

output version-string#

The final version string

output release-notes-output-file#

The path to the release notes file