Skip to content

Add structure for upgrades#3702

Merged
sawenzel merged 2 commits into
AliceO2Group:devfrom
qgp:add_upgrades
Jun 8, 2020
Merged

Add structure for upgrades#3702
sawenzel merged 2 commits into
AliceO2Group:devfrom
qgp:add_upgrades

Conversation

@qgp
Copy link
Copy Markdown
Collaborator

@qgp qgp commented Jun 3, 2020

@ktf @davidrohr @mconcas @mpuccio @marcovanleeuwen

As discussed some time ago, introduction of Upgrades directory to contain evolving detectors for future upgrades (s.a. ITS3, FoCal, post-LS4, ...). Please comment if this looks fine to you or if you'd prefer to handle this differently

davidrohr
davidrohr previously approved these changes Jun 3, 2020
@mconcas
Copy link
Copy Markdown
Collaborator

mconcas commented Jun 3, 2020

Fine to me, I'd just make the CI to test the code, as long as we don't have strong reasons to believe this is slowing down too much the process.
Considering, for instance, the code for ITS3 (see: #3699): it adds just two libraries and I think the time spent is negligible, since there are no tests out of the usual ones for macros.

mconcas
mconcas previously approved these changes Jun 3, 2020
@qgp
Copy link
Copy Markdown
Collaborator Author

qgp commented Jun 3, 2020

Fine to me, I'd just make the CI to test the code, as long as we don't have strong reasons to believe this is slowing down too much the process.
Considering, for instance, the code for ITS3 (see: #3699) it adds just two libraries and I think the time spent is negligible, since there are no tests out of the usual ones for macros.

That is why I made the ENABLE_UPGRADES option default to ON. Do I miss something?

@davidrohr
Copy link
Copy Markdown
Collaborator

That is why I made the ENABLE_UPGRADES option default to ON. Do I miss something?

Ah, actually I didn't see that. Perhaps that is not ideal, since all people will build with it without even knowing.
I agree on the CI, but it should be only the build/O2/o2 CI, not the others. Than ensures that we also try to build without the upgrades.

@mconcas
Copy link
Copy Markdown
Collaborator

mconcas commented Jun 3, 2020

Fine to me, I'd just make the CI to test the code, as long as we don't have strong reasons to believe this is slowing down too much the process.
Considering, for instance, the code for ITS3 (see: #3699) it adds just two libraries and I think the time spent is negligible, since there are no tests out of the usual ones for macros.

That is why I made the ENABLE_UPGRADES option default to ON. Do I miss something?

Fine to me, I'd just make the CI to test the code, as long as we don't have strong reasons to believe this is slowing down too much the process.
Considering, for instance, the code for ITS3 (see: #3699) it adds just two libraries and I think the time spent is negligible, since there are no tests out of the usual ones for macros.

That is why I made the ENABLE_UPGRADES option default to ON. Do I miss something?

Sorry, I did. Looks good.

@qgp
Copy link
Copy Markdown
Collaborator Author

qgp commented Jun 3, 2020

Ok, it seems @mconcas wants the default to be ON, while @davidrohr wants it to be OFF.

Either way, I think it would be good if the CI covers both cases. Where do we have to configure that?

Comment thread cmake/O2DefineOptions.cmake Outdated
# for the complete picture of how BUILD_SIMULATION is handled see
# ../dependencies/O2SimulationDependencies.cmake

option(ENABLE_UPGRADES "Enable detectros for upgrades" ON)
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

typo

@sawenzel
Copy link
Copy Markdown
Collaborator

sawenzel commented Jun 4, 2020

It's ok for me. Consistent with what @mconcas has in his branch.
Concerning the CI: Somebody needs to modify o2.sh in alidist and put ENABLE_UPGRADES=ON depending on the presence of an external variable (which needs to be set in a different default or in a build configuration of ali-bot)

@aphecetche
Copy link
Copy Markdown
Collaborator

IMO the ENABLE_UPGRADES should be OFF by default. That might not matter much now that we are not yet in production (even though it will slow down an already not-really-fast build a bit or a lot depending on what goes into the Upgrades subdirectory...) , but soon my feeling is that we won't want to risk breaking a release or loosing time debugging one for detectors that are not actually part of data taking.

@qgp qgp dismissed stale reviews from mconcas and davidrohr via 8974123 June 4, 2020 08:34
@qgp
Copy link
Copy Markdown
Collaborator Author

qgp commented Jun 4, 2020

Ok, so let's not build the upgrades by default, it doesn't take much to enable them for those affected. Once this PR has converged, I can take of the changes in o2.sh (alidist), but I guess someone else would then have to do the change for ali-bot.

NB: In addition, typo fixed and messages added that upgrades are built.

@mconcas
Copy link
Copy Markdown
Collaborator

mconcas commented Jun 4, 2020

Perhaps a dedicated builder should be added, when we will have more to test rather than just the compilation, depending also on CI available resources.

@davidrohr
Copy link
Copy Markdown
Collaborator

I would add more builders only if we have more CI resources.
You can use ctests normally, and the builder that will test the upgrade compilation will also do these ctests.

@qgp qgp marked this pull request as ready for review June 4, 2020 09:50
@qgp qgp requested review from a team as code owners June 4, 2020 09:50
@qgp
Copy link
Copy Markdown
Collaborator Author

qgp commented Jun 8, 2020

Do we have any outstanding issues here? If not, can we merge this, please, so that we can then also move on with #3699?

@sawenzel sawenzel merged commit c0605bd into AliceO2Group:dev Jun 8, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

5 participants