Version: 9.15.0
SALOME_Launcher.idl
Go to the documentation of this file.
1 // Copyright (C) 2007-2025 CEA, EDF, OPEN CASCADE
2 //
3 // Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
4 // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
5 //
6 // This library is free software; you can redistribute it and/or
7 // modify it under the terms of the GNU Lesser General Public
8 // License as published by the Free Software Foundation; either
9 // version 2.1 of the License, or (at your option) any later version.
10 //
11 // This library is distributed in the hope that it will be useful,
12 // but WITHOUT ANY WARRANTY; without even the implied warranty of
13 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 // Lesser General Public License for more details.
15 //
16 // You should have received a copy of the GNU Lesser General Public
17 // License along with this library; if not, write to the Free Software
18 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
19 //
20 // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
21 //
22 
23 #ifndef _SALOME_LAUNCHER_IDL_
24 #define _SALOME_LAUNCHER_IDL_
25 
26 #include "SALOME_Exception.idl"
28 
32 module Engines
33 {
34 
36 typedef sequence<string> FilesList;
37 
39 struct Parameter
40 {
41  string name;
42  string value;
43 };
45 typedef sequence<Engines::Parameter> ParameterList;
46 
48 {
50  string job_name;
51 
53 
61  string job_type;
62 
63  // Common values
65 
70  string job_file;
71 
73 
76  string pre_command;
77 
79 
81  string env_file;
82 
84 
89 
91 
99 
101 
112 
114 
118 
120 
127 
129 
133 
135 
141 
143  string queue;
144 
146 
148  string partition;
149 
154 
156  boolean exclusive;
157 
159  unsigned long mem_per_cpu;
160 
162  string wckey;
163 
165  string extra_params;
166 
168 
180 
185 };
186 
188 {
189  long job_id;
191 };
192 typedef sequence<Engines::JobDescription> JobsList;
193 
195 {
196  void notify(in string event_name, in string event_data);
197 };
198 
200 
207 interface SalomeLauncher
208 {
209  // Main methods
211 
214  long createJob (in Engines::JobParameters job_parameters) raises (SALOME::SALOME_Exception);
215 
217 
223  void launchJob (in long job_id) raises (SALOME::SALOME_Exception);
224 
226 
230  string getJobState (in long job_id) raises (SALOME::SALOME_Exception);
231 
234 
237 
240 
251  void getJobResults(in long job_id, in string directory) raises (SALOME::SALOME_Exception);
252 
254 
267  boolean getJobDumpState(in long job_id, in string directory) raises (SALOME::SALOME_Exception);
268 
270 
274 
276 
289  boolean getJobWorkFile(in long job_id, in string work_file, in string directory) raises (SALOME::SALOME_Exception);
290 
292  void stopJob (in long job_id) raises (SALOME::SALOME_Exception);
294  void removeJob (in long job_id) raises (SALOME::SALOME_Exception);
295 
297  string dumpJob(in long job_id) raises (SALOME::SALOME_Exception);
299 
302  long restoreJob(in string dumpedJob) raises (SALOME::SALOME_Exception);
303 
304  // Useful methods
305  long createJobWithFile(in string xmlJobFile, in string clusterName) raises (SALOME::SALOME_Exception);
307 
308  // SALOME kernel service methods
310  void Shutdown();
312  long getPID();
313 
314  // Observer and introspection methods
320 
321  // Save and load methods
323  void loadJobs(in string jobs_file) raises (SALOME::SALOME_Exception);
325  void saveJobs(in string jobs_file) raises (SALOME::SALOME_Exception);
326 };
327 
328 };
329 
330 #endif
This file contains the objects defining the main exception used in SALOME application.
interfaces for SALOME Resources Manager service
The main exception in SALOME application.
Definition: SALOME_Exception.idl:71
Definition: SALOME_Launcher.idl:195
void notify(in string event_name, in string event_data)
Interface of the salome launcher.
Definition: SALOME_Launcher.idl:208
long createJob(in Engines::JobParameters job_parameters)
Create a job and set its parameters, without launching it.
void saveJobs(in string jobs_file)
Save the current list of jobs in an xml file.
Engines::JobsList getJobsList()
boolean testBatch(in ResourceParameters params)
void removeObserver(in Engines::SalomeLauncherObserver observer)
string dumpJob(in long job_id)
Get the job's serialization string.
Engines::JobParameters getJobParameters(in long job_id)
void clearJobWorkingDir(in long job_id)
Remove the working directory on the remote file system.
string getAssignedHostnames(in long job_id)
Get names or ids of hosts assigned to the job.
long restoreJob(in string dumpedJob)
Create a job from its serialization string.
void exportInputFiles(in long job_id)
Copy all the in_files of the job to the work_directory.
void addObserver(in Engines::SalomeLauncherObserver observer)
Add an observer to be notified of the jobs list modifications.
boolean getJobWorkFile(in long job_id, in string work_file, in string directory)
Retrieve one single file from the working directory.
void getJobResults(in long job_id, in string directory)
Copy the result files from the work directory of the job to a local directory.
long createJobWithFile(in string xmlJobFile, in string clusterName)
void loadJobs(in string jobs_file)
Add to the current jobs list the jobs previously saved in an xml file.
void stopJob(in long job_id)
Kill the job and set its state to "FAILED".
void Shutdown()
Shutdow SalomeLauncher server.
string getJobState(in long job_id)
Get the execution state of the job.
void launchJob(in long job_id)
Launch an already created job (job's state should be "CREATED").
boolean getJobDumpState(in long job_id, in string directory)
Try to copy the files named "dumpState*.xml" from the working directory.
void removeJob(in long job_id)
Kill the job and remove it from the jobs list.
long getPID()
Get the PID of the current process.
This is a package of interfaces used for connecting new components to SALOME application.
Definition: DSC_Engines.idl:36
sequence< Engines::JobDescription > JobsList
Definition: SALOME_Launcher.idl:192
sequence< Engines::Parameter > ParameterList
Generic parameter list.
Definition: SALOME_Launcher.idl:45
sequence< string > FilesList
files list
Definition: SALOME_Launcher.idl:36
job_id
Definition: launcher_use_case.py:49
Definition: SALOME_Launcher.idl:188
Engines::JobParameters job_parameters
Definition: SALOME_Launcher.idl:190
long job_id
Definition: SALOME_Launcher.idl:189
Definition: SALOME_Launcher.idl:48
unsigned long mem_per_cpu
Specifies the memory limit per cpu (exclusive with resource_required.mem_mb)
Definition: SALOME_Launcher.idl:159
string job_type
Type of the job.
Definition: SALOME_Launcher.idl:61
string extra_params
String that is added to the job submission file - optional.
Definition: SALOME_Launcher.idl:165
boolean exclusive
Specifies if the job must run in exclusive mode (without sharing nodes with other jobs)
Definition: SALOME_Launcher.idl:156
string job_file
Local path to the file to be executed by the job.
Definition: SALOME_Launcher.idl:70
string launcher_file
Parameter for COORM
Definition: SALOME_Launcher.idl:182
string env_file
Local path to a script to be sourced in the environment of the job.
Definition: SALOME_Launcher.idl:81
string local_directory
Prefix to be applied to in_files.
Definition: SALOME_Launcher.idl:117
string verbose_py_log_level
steer verbose level of log level of python executed inside SALOME_Containers
Definition: SALOME_Launcher.idl:153
string wckey
Workload Characterization Key - mandatory on some clusters.
Definition: SALOME_Launcher.idl:162
string maximum_duration
Maximum time for the batch execution (expected format : "hh:mm").
Definition: SALOME_Launcher.idl:132
string queue
Name of the batch queue chosen - optional.
Definition: SALOME_Launcher.idl:143
string launcher_args
Parameter for COORM
Definition: SALOME_Launcher.idl:184
string pre_command
Pre processing script.
Definition: SALOME_Launcher.idl:76
string job_name
Name of the job.
Definition: SALOME_Launcher.idl:50
string work_directory
Remote directory where the job will be executed.
Definition: SALOME_Launcher.idl:111
string partition
Name of the partition - optional.
Definition: SALOME_Launcher.idl:148
Engines::ParameterList specific_parameters
Specific parameters for each type of job - optional.
Definition: SALOME_Launcher.idl:179
FilesList in_files
List of local data files to be copied to work_directory.
Definition: SALOME_Launcher.idl:88
string result_directory
Local directory where to get result files.
Definition: SALOME_Launcher.idl:126
ResourceParameters resource_required
Specifies the rules to choose the resource where to execute the job.
Definition: SALOME_Launcher.idl:140
FilesList out_files
List of results to get back at the end of the job.
Definition: SALOME_Launcher.idl:98
A generic parameter.
Definition: SALOME_Launcher.idl:40
string value
Definition: SALOME_Launcher.idl:42
string name
Definition: SALOME_Launcher.idl:41
Type to describe required properties of a resource.
Definition: SALOME_ResourcesManager.idl:42