NREL / OpenStudio

OpenStudio is a cross-platform collection of software tools to support whole building energy modeling using EnergyPlus and advanced daylight analysis using Radiance.
https://www.openstudio.net/
Other
503 stars 192 forks source link

Make sure final 3.7.0 installers work across all platforms #5022

Open DavidGoldwasser opened 11 months ago

DavidGoldwasser commented 11 months ago

This is related to https://github.com/NREL/EnergyPlus/issues/10284

This impacts X64 installer for Mac and also Linux installer. I think this is more critical for Mac X64 installer. If we don't use newer version of EnergyPlus then find way to make package that includes the dependencies. Not sure if this is new issue with EnergyPlus 23.2 or if has been work around prior to that. Our X64 Mac installers for 3.6.1 and earlier all work fine on clean machines.

DavidGoldwasser commented 11 months ago

@jmarrec just wanted to bring you in on this one to clarify if the dependancies in E+ are new to 23.2 or existed in 23.2. Wondering if there is pattern from 3.6 we can follow as work around for 3.7.

jmarrec commented 11 months ago

E+ links to OpemMP if found on the system that builds it.

So, the M1 mac installer I built myself for both e+ and openstudio for the past few releases. It's possible I had not installed libomp for some of the past e+ releases but I think for 23.1.0 I already had. I can check via otool next week. IMHO, we just realized for M1 that libomp was needed because @wenyikuang has (well, had) a "fresh" machine.

I had already figured out via docker testing that some dependencies have always been needed. (or clean VMs, linux/windows only, and for windows I patched e+ to include the DLL already)

The rest of the installers are built with GHA runners. GHA runners config change constantly, but I think libomp and co have always been there (could be wrong).

(For windows, it's already there because part of MSVC install)

jmarrec commented 11 months ago

Ideally We should have a clean VM (either provisioned on the fly, or with restore/checkpoint capabilities, though for M1 I think that's not possible with any of the vendors) for mac x64, mac m1 at least, because these are hard to get. Windows can be done in a VM locally, but a CI option would be nice. Ubuntu is the good guy, docker does it with ease and so it can be done on GHA

Any RC should be tested on a clean system, so that'd be like <10 times a year. Even having a clean windows on AWS and a clean mac on something like macstadium would cost us in the order of magnitude of 10 dollars per year.