Skip to content

Automate release process #150

@jwodder

Description

@jwodder

The dandidav release process (documented in doc/releasing.md) involves too many manual steps. As much as possible should be automated.

Goals for the release automation:

  • auto is not allowed.
  • The automation should take care of creating the tag and GitHub Release.
    • How would signing the tag then be handled?
  • The release notes should match the CHANGELOG section for the release, except that multiline paragraphs need to be unwrapped for the former.
  • Changelog items/release notes should be hand-crafted, not automatically generated.
  • Ideally, releasing should be done via a dedicated release PR that gives the maintainer the chance to review the final changelog items.
    • Tagging & GitHub Release creation happens once this PR is merged.

Possible ways to implement this:

  • Use https://github.com/cargo-bins/release-pr to create a release PR with a "release" label, and add a GitHub Actions workflow, triggered on the merge of a "release" PR, that creates the tag and GitHub Release
  • Others???

Metadata

Metadata

Assignees

No one assigned

    Labels

    CIContinuous integration / continuous deployment setuplow priorityLess important than other thingsneeds researchMore information is requiredunder considerationDev has not yet decided whether or how to implement

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions