Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[TB] Define release process, exit criteria and post-release actions #720

Open
aaronreed708 opened this issue Nov 10, 2023 · 3 comments
Open
Labels
project management Administrative activities for open project sdk Software development kit theme builder app Theme Builder application

Comments

@aaronreed708
Copy link
Contributor

Problem/Concern

We need to come up with what it means to "release" Theme Builder and the SDK. There needs to be an exit criteria and a series of post-release steps that must be completed. The purpose of this issue is to define both.

Proposed Solution

Here is a list with which to start defining the exit criteria. These are just some suggestions to serve as a starting point:

  • Release candidate code is complete and available on dev branch
  • Any updated documentation is available on dev branch
  • Automated tests that have run to completion on the release candidate with 100% success.
  • At least two maintainers attesting (in the release issue) to the fact that they ran manual tests against the release candidate.
    • In the SDK perhaps this is an attestation that the maintainers ran Theme Builder tests that are meant to exercise the SDK in particular
    • Theme Builder tests should be run on both locally built Docker image and Netlify deploy
  • Version must be bumped before commit to main
  • Release notes must be updated, include the new version number and release date
  • Dev pushed to main
  • Tests re-run on main deploy on Netlify and on published Docker image
  • Verify updated documentation has been deployed

Here is a list with which to start defining the exit criteria. These are just some suggestions to serve as a starting point:

  • Version number discoverable from inside application? Verify version correct in code, in container registries, in NPM (if SDK updated) and deployed application before announcement
  • Link to release notes in the application?
  • FINOS marketing team is informed. (Juan & Mao can put us in contact with them).
@aaronreed708 aaronreed708 added project management Administrative activities for open project sdk Software development kit theme builder app Theme Builder application labels Nov 10, 2023
@aaronreed708
Copy link
Contributor Author

From @maoo: "I'd suggest to look at Github features that automatically generate Release notes, see https://docs.github.com/en/repositories/releasing-projects-on-github/automatically-generated-release-notes. Note that Github Actions can be triggered by new releases, which would allow you to use the Github UI to trigger the release process, and Github actions to build and publish artifacts"

@aaronreed708 aaronreed708 moved this to High Priority in ThemeBuilder Nov 16, 2023
@aaronreed708
Copy link
Contributor Author

The release process needs to include manual Docker scanning for now, as well as linking the manual scan results with the release somehow (more background information here: #742)

@PaulaPaul
Copy link
Contributor

I'll be looking into #721 as part of this and will explore @maoo 's suggestion for automatic release notes from GitHub), and @codyzu 's suggestion for beachball. Both are integrated with GitHub - will put notes here as I create examples from both and we can decide which way we'd like to go.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
project management Administrative activities for open project sdk Software development kit theme builder app Theme Builder application
Projects
Status: High Priority
Development

No branches or pull requests

2 participants