Skip to content

Invalid Changelog Entries for non-release merges #148

Description

@7tupel

Description

Scenario

  • A branch is integrated into trunk
  • The commit(s) on this branch don't trigger a version update on a Brick or Product
    • I.e. the commit is of type refactor: cleaning only up some stuff
  • A Build Pipeline automatically runs the release task to calculate the new version(s), creates releases when required and updates the changelogs

Expected Behavior

  • Only the version of Products and Bricks is updated when they were changed on the branch
  • A new release for a Product, a version tag for a Brick, is only created when the version was updated by the changes on the branch
  • The changelog is only updated with a new release section if there was a new release. The entries for existing releases don't change. Because the changes were not relevant to trigger a new release or version, the changes are put in the Unreleased section of the changelog

Faulty Behavior

  • It might be not correctly implemented to only create a release when the version has changed
    • Must ensure to check if a release already exists for the version currently set in the repo.edn for the product and only create a release if not and the version is newer than the last release
    • same goes for bricks, only create a new version tag if not version tag exists for the version currently set for the brick in the repo.edn file
  • When a changelog update is triggered for a product using the changelog task and no explicit product/brick AND version are given, the implementation uses the version currently present in the repo.edn. This can lead to rewriting the changelog entry of the last release/version for a product/brickand and adding the changes made in the integrated branch to this existing version which is wrong

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions