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

Release script for downstream OTP forks #6345

Draft
wants to merge 1 commit into
base: dev-2.x
Choose a base branch
from

Conversation

t2gran
Copy link
Member

@t2gran t2gran commented Dec 18, 2024

Summary

This PR contain two scripts prepare_release and release to make a release in a DOWNSTREAM fork of OTP. These scripts are not intended for releasing the main OTP repository.

See the (RELEASE_README)[script/RELEASE_README.md] for documentation of these scripts.

Issue

🟥 There is not issue for this. But, these scripts is requested from time to time. This PR provides a common place to maintain them.

Unit tests

🟥 There is a Java class in the utils module in this PR. It does not have tests, but it should be converted to a script. Not sure if we needs unit-tests on scripts.

Documentation

✅ The scripts are documented in the readme, se above.

Changelog

✅ This is relevant for advanced deplyments.

Bumping the serialization version id

🟥 Not relevant.

@t2gran t2gran added this to the 2.7 (next release) milestone Dec 18, 2024
@t2gran t2gran requested a review from a team as a code owner December 18, 2024 19:58
@t2gran
Copy link
Member Author

t2gran commented Dec 19, 2024

I will add a check on the environment to the prepare_release - that the git repo is named correct. Other than that this is ready for review.

@vpaturet vpaturet self-requested a review December 19, 2024 14:49
@optionsome optionsome self-requested a review December 19, 2024 14:57
@optionsome
Copy link
Member

There are formatting issues.

@leonardehrenfried leonardehrenfried changed the title Release script for downstream OTP forks. Release script for downstream OTP forks Dec 31, 2024
Copy link

codecov bot commented Jan 2, 2025

Codecov Report

Attention: Patch coverage is 0% with 76 lines in your changes missing coverage. Please review.

Project coverage is 69.78%. Comparing base (2d012a3) to head (77a9ed5).
Report is 57 commits behind head on dev-2.x.

Files with missing lines Patch % Lines
...pentripplanner/utils/ci/MavenUpdatePomVersion.java 0.00% 76 Missing ⚠️
Additional details and impacted files
@@              Coverage Diff              @@
##             dev-2.x    #6345      +/-   ##
=============================================
- Coverage      69.85%   69.78%   -0.07%     
- Complexity     17922    17926       +4     
=============================================
  Files           2035     2036       +1     
  Lines          76495    76585      +90     
  Branches        7824     7833       +9     
=============================================
+ Hits           53435    53445      +10     
- Misses         20324    20400      +76     
- Partials        2736     2740       +4     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@t2gran
Copy link
Member Author

t2gran commented Jan 2, 2025

I have improved the error handling in the scripts and simplified a bit. Ready for review.

Copy link
Member

@optionsome optionsome left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I would prefer if there was a directory under the script directory for these files so you can have just a regular README for it.

Also note that the CI configuration is changed (c2) and this change needs to be included in the
new release (v3).

> **Note!** OTP ignore config it does not understand it. This allows us to roll out config for new
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
> **Note!** OTP ignore config it does not understand it. This allows us to roll out config for new
> **Note!** OTP ignores config it does not understand it. This allows us to roll out config for new


You should create a branch in the local git repository where you keep your deployment-specific
config. The `ext_config` branch should have **one** commit with all changes needed. If you need to
change the config, you will have to amend the changes. This is because the release script chery-pick
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
change the config, you will have to amend the changes. This is because the release script chery-pick
change the config, you will have to amend the changes. This is because the release script cherry-pick

Run the `prepare_release` script. The script does the following:
- Reset main to the right latest commit on `dev-2.x`
- Rebase and merge in the `ext_config` extension branches into the local release branch. You will
be prompted for each step allowing you to perform/skip the steps you want. Also. the script keeps
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
be prompted for each step allowing you to perform/skip the steps you want. Also. the script keeps
be prompted for each step allowing you to perform/skip the steps you want. Also, the script keeps

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Shouldn't this file have .sh file extension?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Same as above.

@t2gran t2gran marked this pull request as draft January 7, 2025 09:04
@t2gran t2gran added Entur Test This is currently being tested at Entur and removed Entur Test This is currently being tested at Entur labels Jan 7, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants