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 a template / checklist for Jaeger release #6688

Open
yurishkuro opened this issue Feb 6, 2025 · 23 comments · May be fixed by #6691
Open

Create a template / checklist for Jaeger release #6688

yurishkuro opened this issue Feb 6, 2025 · 23 comments · May be fixed by #6691
Labels
enhancement good first issue Good for beginners help wanted Features that maintainers are willing to accept but do not have cycles to implement

Comments

@yurishkuro
Copy link
Member

When we do a new release of Jaeger, the maintainer has to follow the relatively lengthy process documented in the RELEASES.md. The instructions are somewhat complicated, sometimes it is easy to forget a step. What if instead we had a script like start-release.sh that would:

  • automatically determine the next release numbers
  • create a new issue with the appropriate title and a checklist of steps for the maintainer to execute (e.g. by copying it from the RELEASES.md, assuming we adjust the formatting a bit, such as by changing bullets to * [ ] ... so that they are rendered as checkboxes on the GitHub issue).

This way the maintainer could be executing the steps from the issue rather than the RELEASES.md doc and ticking off boxes as they do it.

@yurishkuro yurishkuro added good first issue Good for beginners help wanted Features that maintainers are willing to accept but do not have cycles to implement labels Feb 6, 2025
@dosubot dosubot bot added the enhancement label Feb 6, 2025
@ADI-ROXX
Copy link
Contributor

ADI-ROXX commented Feb 7, 2025

automatically determine the next release numbers

For solving this issue, I have the following methodology in mind:

  1. Following is a command that tells the current version

Image

In the start-release.sh, I want to take the input of a flag --type that takes the following values: [mini, mid, high] that will have the following aspects:

  • mini: v2.3.0 -> 2.3.1
  • mid: v2.3.0 -> 2.4.0
  • high: v2.3.0 -> 3.0.0

Is this logic correct?

@yurishkuro
Copy link
Member Author

Current versions can be determined with "make echo-v1|v2". We always bump minor version, no need for additional parameters, but the script can prompt the user for the next version with an automated default value.

@ADI-ROXX
Copy link
Contributor

ADI-ROXX commented Feb 7, 2025

but the script can prompt the user for the next version with an automated default value.

I am thinking of the following:

Image
When we run start-release.sh, it will show the next version and ask for confirmation from the user.

Is this method correct?

@yurishkuro
Copy link
Member Author

Yes but it should be simpler - prompt user for the next version but suggest a viable default (next minor) such that the user only needs to press ENTER in most cases.

@ADI-ROXX
Copy link
Contributor

ADI-ROXX commented Feb 7, 2025

You mean like this:

Image

@ADI-ROXX ADI-ROXX linked a pull request Feb 8, 2025 that will close this issue
4 tasks
@ADI-ROXX
Copy link
Contributor

ADI-ROXX commented Feb 8, 2025

create a new issue with the appropriate title and a checklist of steps for the maintainer to execute (e.g. by copying it from the RELEASES.md, assuming we adjust the formatting a bit, such as by changing bullets to * [ ] ... so that they are rendered as checkboxes on the GitHub issue)

@yurishkuro The checklist has to be copied from Jaeger Backend Release Process in Release.md right:

Image

Or do I have to include the Jaeger Overall Release or Patch Release also:

Image

@yurishkuro
Copy link
Member Author

we need backend release, UI release, and documentation release.

@ADI-ROXX
Copy link
Contributor

create a new issue with the appropriate title and a checklist of steps for the maintainer to execute (e.g. by copying it from the RELEASES.md, assuming we adjust the formatting a bit, such as by changing bullets to * [ ] ... so that they are rendered as checkboxes on the GitHub issue).

When you say "copying," do you mean to manually copy the data from release.md to the start-release.sh (kind of hard-code start-release.sh) or do you mean that the script should automatically do the copying?

@yurishkuro
Copy link
Member Author

automatically, into the ticket body

This was referenced Feb 13, 2025
@ADI-ROXX
Copy link
Contributor

ADI-ROXX commented Feb 13, 2025

@yurishkuro I have made a sample issue in my local repo:
ADI-ROXX/software#37

Can you check it out once if the content in the body is fine.

@ADI-ROXX
Copy link
Contributor

ADI-ROXX commented Feb 13, 2025

@yurishkuro

Image

Instead of 1.x.x / 2.x.x, I am thinking to directly show the new version, e.g., 1.66.1.

What do you think about this?

@yurishkuro
Copy link
Member Author

Yes, it should use concrete versions.

The instructions are missing UI and docs release. And there is no need to list manual steps, we can link to them in the readme (after moving them into their own sections).

@ADI-ROXX
Copy link
Contributor

And there is no need to list manual steps

You're talking about this, right?

Image

@ADI-ROXX
Copy link
Contributor

The instructions are missing UI and docs release.

Is the following link correct?
Docs- https://github.com/jaegertracing/documentation/blob/main/RELEASE.md

If this is the link, I have the following doubt:The start-release.sh script is in jaegertracing/jaeger. How do I fetch the data from file that is located at jaegertracing/documentation?

@yurishkuro
Copy link
Member Author

You can download needed docs.

@ADI-ROXX
Copy link
Contributor

ADI-ROXX commented Feb 13, 2025

@yurishkuro I have included the UI and Doc in the following issue:
ADI-ROXX/software#38

Let me know if there is some change required apart from title, concrete version, Manual

@yurishkuro
Copy link
Member Author

@yurishkuro
Copy link
Member Author

Please push changes to your PR to see what exactly you're doing. I expect we need to make some changes to the RELEASE.md docs (maybe add some markers) so that the script can generate the issue text.

@ADI-ROXX
Copy link
Contributor

@yurishkuro I have added the issues and pr's to add markers in docs and ui. Can you please review them once? Thanks.

@ADI-ROXX
Copy link
Contributor

ADI-ROXX commented Feb 14, 2025

@yurishkuro

Can you check the following issue generated by the code:

ADI-ROXX/software#66

If something else is expected, please let me know. I have fixed the title, removed the manual steps and included concrete versions.

@yurishkuro
Copy link
Member Author

Checklist v1.66.1 / v2.3.1

It should say "Prepare Jaeger Release ...", and the versions you have are wrong, we always bump the middle number, v1.67.0.

@yurishkuro
Copy link
Member Author

I recommend to have a dry-run option in the script so that you can test the output to console instead of always creating an issue

@ADI-ROXX
Copy link
Contributor

I recommend to have a dry-run option in the script so that you can test the output to console instead of always creating an issue

Resolved

github-merge-queue bot pushed a commit to jaegertracing/jaeger-ui that referenced this issue Feb 14, 2025
## Which problem is this PR solving?
- Resolves #2664 
- Part of jaegertracing/jaeger#6688

## Description of the changes
- 

## How was this change tested?
- 

## Checklist
- [ ] I have read
https://github.com/jaegertracing/jaeger/blob/master/CONTRIBUTING_GUIDELINES.md
- [ ] I have signed all commits
- [ ] I have added unit tests for the new functionality
- [ ] I have run lint and test steps successfully
  - for `jaeger`: `make lint test`
  - for `jaeger-ui`: `npm run lint` and `npm run test`

---------

Signed-off-by: cs-308-2023 <[email protected]>
yurishkuro pushed a commit to jaegertracing/documentation that referenced this issue Feb 14, 2025
## Which problem is this PR solving?
- Resolves #844 
- Part of jaegertracing/jaeger#6688

## Description of the changes
- 

## How was this change tested?
- 

## Checklist
- [ ] I have read
https://github.com/jaegertracing/jaeger/blob/master/CONTRIBUTING_GUIDELINES.md
- [ ] I have signed all commits
- [ ] I have added unit tests for the new functionality
- [ ] I have run lint and test steps successfully
  - for `jaeger`: `make lint test`
  - for `jaeger-ui`: `npm run lint` and `npm run test`

---------

Signed-off-by: cs-308-2023 <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement good first issue Good for beginners help wanted Features that maintainers are willing to accept but do not have cycles to implement
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants