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

Preparation work for 4.35(2025-03) and open master for development #2550

Open
18 of 22 tasks
MohananRahul opened this issue Nov 20, 2024 · 5 comments
Open
18 of 22 tasks

Comments

@MohananRahul
Copy link
Contributor

MohananRahul commented Nov 20, 2024

This preparation work involves the following tasks. For previous issue please refer to #2274

@MohananRahul MohananRahul pinned this issue Nov 20, 2024
@HannesWell
Copy link
Member

  • Move previous version to 4.34RC2 across build scripts

@MohananRahul or @akurtakov can you tell if it would be possible to perform this step before creating all the version updated?
I.e. could we set the api- and comparator-baseline repo property previous-release.baseline to the current RC2-repo before the version updates are triggered, IIRC by creating the milestones? Then the workflows that perform the POM parent version updates could also immediately perform the version updates necessary in the bundle/feature projects because the project is changed the first time in a dev-cycle. See also eclipse-pde/eclipse.pde#1489 (comment)

Maybe this should also be included in #2565?
Which makes me wonder if the prepareRelease workflow should be triggered on workflow_dispatch, i.e. be executed manually. Then we could pass the next release as an input-argument plus the current RC2-repo to be used as baseline:

If that is the executed before the milestones are created all update-release workflows should then be able to succeed immediately, currently they are missing the parent-version in the repo because the PR mentioned above is currently also only created on milestone-creation too. And the workflow should be able to perform the necessary version bumps too.

@laeubi what do you think think?

@HannesWell
Copy link
Member

HannesWell commented Nov 22, 2024

@MohananRahul if you set the previous-release.baseline now it would still be possible to avoid manual version bumps by simply re-running the check-versions / Check and increment service versions workflow in all Update for release 4.35 PRs like eclipse-pde/eclipse.pde#1489.
IIRC currently the process is to await the first I-build and fix the comparator-errors manually afterwards?

@HannesWell
Copy link
Member

Then we could pass the next release as an input-argument plus the current RC2-repo to be used as baseline:

At least the next version could also be computed by simply bumping the minor 'branding' version by one.
For the RC2 repo I currently have no smart way to compute it, except for looking it up in the SimRel contribution:
https://github.com/eclipse-simrel/simrel.build/blob/965a38026d3d81ae7a3ffe2957507a3d72af2698/ep.aggrcon#L3

@laeubi
Copy link
Contributor

laeubi commented Nov 23, 2024

The prepare workflow is required to make the parent-pom available in the snapshot repository, the creation pf the PR triggers the deployment already so it can be used by other workflows a few seconds later.

Regarding the repositories, I already have suggested that we have ones with "stable" names so we can simply let this repo then point to whatever is required when (instead of changing the names all the time), e.g. currently the "new" comparator Ibuild repo is empty, and so we retain the previous one until the first successful ibuild then. Intead the "new" one could simply be a link to the "old" and will automatically be replaced by a new (successful) ibuild then.

Also the new 2024-12 could point to the 2024-12-RC2 unless there is a release so it could be used already before as a reference repository.

@HannesWell
Copy link
Member

The prepare workflow is required to make the parent-pom available in the snapshot repository, the creation pf the PR triggers the deployment already so it can be used by other workflows a few seconds later.

Now that you say it, I remember that, it's because of

I don't recalls exactly how milestones are created. I assumed it was in a Jenkins-job were they are all created at once? And then even these few seconds could have been too late to resolve the new parent-pom, if all the jobs start at the same time in all repos.
But if they are all created manually and subsequently, then it should be fine.

While writing this and after some search I found a create-milestones job being mentioned in the release process. But from the doc, I have the impression it's hidden, so I cannot tell what it does exactly.

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

No branches or pull requests

3 participants