Skip to content

Default workflows

When there is no knope.toml file in the current directory, Knope will use a set of default workflows. These will vary slightly depending on your project, the easiest way to find out what your default workflows are is to use knope --generate.

General structure

The default workflows are as follows, with potential differences highlighted:

knope.toml
[package]
versioned_files = ["Cargo.toml"]
changelog = "CHANGELOG.md"
[[workflows]]
name = "release"
[[workflows.steps]]
type = "PrepareRelease"
[[workflows.steps]]
type = "Command"
command = "git commit -m \"chore: prepare release $version\" && git push"
[workflows.steps.variables]
"$version" = "Version"
[[workflows.steps]]
type = "Release"
[[workflows]]
name = "document-change"
[[workflows.steps]]
type = "CreateChangeFile"
[github]
owner = "knope-dev"
repo = "knope"

Potential differences

  1. versioned_files has any supported formats that Knope detects in the current directory
  2. changelog is only set if there is a CHANGELOG.md file in the current directory
  3. A GitHub config will be generated if the default Git remote is a GitHub repository. Otherwise, an extra step will be in the release workflow to push generated tags.