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

Create Reachability Metadata releases monthly #513

Open
dnestoro opened this issue Jul 11, 2024 · 2 comments
Open

Create Reachability Metadata releases monthly #513

dnestoro opened this issue Jul 11, 2024 · 2 comments
Assignees
Labels
enhancement New feature or request

Comments

@dnestoro
Copy link
Member

Is your feature request related to a problem? Please describe.
Currently we don't have well defined schedule for metadata releases.

Describe the solution you'd like
We should be able to create releases automatically. If possible:

  • we should create a script that will perform a release.
  • the script should be triggered monthly probably from our GitHub actions

Additional context
We should only create a new release if we detect changes in metadata since last release

@dnestoro dnestoro added the enhancement New feature or request label Jul 11, 2024
@dnestoro
Copy link
Member Author

After discussion with @vjovanov our conclusion is the following:

  • We should have automated weekly releases same as we created manually so far (where we are just bumping patch version number)
  • For every new commit we should create a new latest release. Our script would delete previous latest and create a new one. The question is: should we have a timestamp as part of the latest release name

@spulci
Copy link
Contributor

spulci commented Jul 15, 2024

Hi, can I suggest you two hints?

I would add semantic-release with gradle plugin support using the predefined github action (I've used on a previous Python project here on github, it works great). I would then define a release strategy with semantic release descriptor (it could be a json or yaml file). For example:

step 2: "for every new commit we should create a new latest version". This means in terms of semantic release that each new pull request with target branch main (or another one you will eventually choose) will generate a release if a semantic commit will be added (a new feature or a new fix etc) bumping the right version number automatically for you

step 1: you can generate this behaviour (automate a release weekly) with a time trigger on github action (I don't know if they are present) or with a manual action activation that can be triggered just by "mantainer" roles. This action will basically put a semantic commit for a "feature" version bump with an "allow-empty" git commit and push.

You should be aware of the fact that semantic release gradle plugin stores the "version" inside the gradle.properties (and of course semantic will TAG the git repo too.

Semantic will also create Github release pages for you and could eventually generate a changelog.md automatically with other plugins and much more.

Please consider this option if you decide to maintain a simple release strategy; you can also easily add pre release like betas if needed ((but you will need one more protected branch etc)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants