DUNE-DAQ / drunc

Dune RUN Control (DRUNC) is the run control for the DUNE experiment
1 stars 1 forks source link

RC env variables #237

Closed plasorak closed 1 month ago

plasorak commented 2 months ago

An attempt at fixing: https://github.com/DUNE-DAQ/confmodel/issues/44

Which along the way would fix: https://github.com/DUNE-DAQ/drunc/issues/203 and would allow the connectivity server port to be set by the user.

plasorak commented 2 months ago

Need to add:

PawelPlesniak commented 1 month ago

This seems to work, using todays nightly and this branch I get an immediate env var error

          ERROR    "PreOrPostTransitionSequence": Traceback (most recent call last):                                                       core.py:79
                      File "/nfs/home/pplesnia/nightlyDev/240925/sourcecode/drunc/src/drunc/fsm/core.py", line 68, in execute                         
                        input_data = callback.method(_input_data=input_data, _context=ctx, **transition_args)                                         
                      File "/nfs/home/pplesnia/nightlyDev/240925/sourcecode/drunc/src/drunc/fsm/actions/thread_pinning.py", line 84, in               
                    pre_conf                                                                                                                          
                        self.pin_thread(self.conf_dict['pre_conf'], run_configuration, session=_context.session)                                      
                      File "/nfs/home/pplesnia/nightlyDev/240925/sourcecode/drunc/src/drunc/fsm/actions/thread_pinning.py", line 23, in               
                    pin_thread                                                                                                                        
                        apps = collect_apps(db, session_dal, session_dal.segment, environ)                                                            
                      File "/nfs/home/pplesnia/nightlyDev/240925/sourcecode/drunc/src/drunc/process_manager/oks_parser.py", line 80, in               
                    collect_apps                                                                                                                      
                        update_env(rc_env, env)                                                                                                       
                      File "/nfs/home/pplesnia/nightlyDev/240925/sourcecode/drunc/src/drunc/process_manager/oks_parser.py", line 44, in               
                    update_env                                                                                                                        
                        raise EnvironmentVariableCannotBeSet(f'Environment variable \'{key}\' is empty.')                                             
                    drunc.process_manager.oks_parser.EnvironmentVariableCannotBeSet: Environment variable 'LOADEDMODULES' is empty.
PawelPlesniak commented 1 month ago

Tested, working