Skip to content

New CI does not rebase roottest branch on top of roottest master #14024

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

Open
1 task
pcanal opened this issue Nov 7, 2023 · 5 comments · May be fixed by #18338
Open
1 task

New CI does not rebase roottest branch on top of roottest master #14024

pcanal opened this issue Nov 7, 2023 · 5 comments · May be fixed by #18338

Comments

@pcanal
Copy link
Member

pcanal commented Nov 7, 2023

Check duplicate issues.

  • Checked for duplicates

Description

The new CI does not rebase roottest branch on top of roottest master. However it does rebase the code branch on top of the roottest master. In practice this means that if the latest development in the ROOT code requires a change in roottest (and it has already been merged into the main branch) then the PR will spuriously fail.

For example in https://github.com/root-project/root/actions/runs/6751316012/job/18355186874?pr=13900

We have:

  git fetch origin refs/pull/13900/head:master-13574
  git checkout master-13574
  git rebase master
  
  From https://github.com/root-project/root

but we have as part of the cmake invocation

  -- Found roottest: /github/home/ROOT-CI/src/roottest
  -- Updating roottest from 'https://github.com/pcanal/roottest' (master-13574)
  From https://github.com/pcanal/roottest
   * [new branch]        master-13574 -> master-13574
  Switched to branch 'master-13574'

A possible solution is to treat the roottest repository the same way as the ROOT repository and check it out and rebase outside of cmake.

Reproducer

See description

ROOT version

does not matter.

Installation method

New CI

Operating system

any

Additional context

No response

@pcanal
Copy link
Member Author

pcanal commented Nov 13, 2023

I'll take a look. What is the best way to test new code in build_root.py?

@Axel-Naumann
Copy link
Member

Axel-Naumann commented Nov 13, 2023

Create a dev branch in your fork of root.git for your modifications in build_root.py. Create a branch with the name name in your fork of roottest.git but from an old commit that cannot work with your root.git branch. If things work, the rebasing of your roottest branch in build_root.py should make the CI pass nonetheless.

@ferdymercury
Copy link
Contributor

ferdymercury commented Apr 10, 2025

I guess this issue can be closed due to the merge prepared at #18338 by @dpiparo ?

@pcanal
Copy link
Member Author

pcanal commented Apr 10, 2025

Yes, this can be closed when #18338 is merged.

@ferdymercury ferdymercury linked a pull request Apr 10, 2025 that will close this issue
@dpiparo
Copy link
Member

dpiparo commented Apr 11, 2025

Most likely, one will have to directly push the changes to the main branch directly immediately after branching v6-36-00-patches. We verified that rebasing and merging of such a big set of changes causes problems.
All that to say that @ferdymercury and @pcanal are absolutely right. The merge will be a nice simplification.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: No status
Development

Successfully merging a pull request may close this issue.

5 participants