Public Member Functions | |
SALOME_ContainerManager (CORBA::ORB_ptr orb, PortableServer::POA_var poa, SALOME_ResourcesManager *rm, SALOME_NamingService *ns) | |
~SALOME_ContainerManager () | |
Engines::Container_ptr | GiveContainer (const Engines::ContainerParameters ¶ms) |
Give a suitable Container given constraints. More... | |
void | ShutdownContainers () |
Loop on all the containers listed in naming service, ask shutdown on each. More... | |
void | Shutdown () |
shutdown all the containers, then the ContainerManager servant More... | |
Static Public Attributes | |
static const char * | _ContainerManagerNameInNS |
Protected Types | |
typedef std::vector< std::string > | actual_launch_machine_t |
Protected Member Functions | |
Engines::Container_ptr | FindContainer (const Engines::ContainerParameters ¶ms, const Engines::ResourceList &possibleResources) |
Find a container given constraints (params) on a list of machines (possibleComputers) More... | |
Engines::Container_ptr | FindContainer (const Engines::ContainerParameters ¶ms, const std::string &resource) |
Find a container given constraints (params) on a machine (theMachine) More... | |
std::string | BuildCommandToLaunchRemoteContainer (const std::string &resource_name, const Engines::ContainerParameters ¶ms, const std::string &container_exe="SALOME_Container") |
std::string | BuildCommandToLaunchLocalContainer (const Engines::ContainerParameters ¶ms, const std::string &machinesFile, const std::string &container_exe="SALOME_Container") |
std::string | BuildTempFileToLaunchRemoteContainer (const std::string &resource_name, const Engines::ContainerParameters ¶ms) throw (SALOME_Exception) |
void | RmTmpFile (std::string &tmpFile) |
void | AddOmninamesParams (std::string &command) const |
void | AddOmninamesParams (std::ostringstream &oss) const |
void | AddOmninamesParams (std::ofstream &fileStream) const |
std::string | BuildTemporaryFileName () const |
std::string | GetMPIZeroNode (const std::string machine, const std::string machinesFile) |
std::string | machinesFile (const int nbproc) |
std::set< pid_t > | getpidofprogram (const std::string program) |
std::string | getCommandToRunRemoteProcess (AccessProtocolType protocol, const std::string &hostname, const std::string &username) |
Engines::Container_ptr | LaunchContainer (const Engines::ContainerParameters ¶ms, const std::string &resource_selected, const std::string &hostname, const std::string &machFile, const std::string &containerNameInNS) |
bool | checkPaCOParameters (Engines::ContainerParameters ¶ms, std::string resource_selected) |
Engines::Container_ptr | StartPaCOPPContainer (const Engines::ContainerParameters ¶ms, std::string resource_selected) |
std::string | BuildCommandToLaunchPaCOProxyContainer (const Engines::ContainerParameters ¶ms, std::string machine_file_name, std::string &proxy_hostname) |
std::string | BuildCommandToLaunchPaCONodeContainer (const Engines::ContainerParameters ¶ms, const std::string &machine_file_name, SALOME_ContainerManager::actual_launch_machine_t &vect_machine, const std::string &proxy_hostname) |
void | LogConfiguration (const std::string &log_type, const std::string &exe_type, const std::string &container_name, const std::string &hostname, std::string &begin, std::string &end) |
CORBA::Object_ptr | LaunchPaCOProxyContainer (const std::string &command, const Engines::ContainerParameters ¶ms, const std::string &hostname) |
bool | LaunchPaCONodeContainer (const std::string &command, const Engines::ContainerParameters ¶ms, const std::string &name, SALOME_ContainerManager::actual_launch_machine_t &vect_machine) |
Protected Attributes | |
CORBA::ORB_var | _orb |
PortableServer::POA_var | _poa |
SALOME_ResourcesManager * | _ResManager |
SALOME_NamingService * | _NS |
std::string | _TmpFileName |
attribute that contains current tmp files generated More... | |
std::string | _CommandForRemAccess |
contains the rsh or ssh command to access directly to machine. More... | |
bool | _isAppliSalomeDefined |
different behaviour if $APPLI exists (SALOME Application) More... | |
int | _nbprocUsed |
attribute that contains the number of processes used in batch mode by MPI containers More... | |
pid_t | _pid_mpiServer |
Static Protected Attributes | |
static omni_mutex | _numInstanceMutex |
SALOME_ContainerManager::SALOME_ContainerManager | ( | CORBA::ORB_ptr | orb, |
PortableServer::POA_var | poa, | ||
SALOME_ResourcesManager * | rm, | ||
SALOME_NamingService * | ns | ||
) |
Constructor
orb | Define a CORBA single thread policy for the server, which avoid to deal with non thread-safe usage like Change_Directory in SALOME naming service |
SALOME_ContainerManager::~SALOME_ContainerManager | ( | ) |
destructor
Engines::Container_ptr SALOME_ContainerManager::GiveContainer | ( | const Engines::ContainerParameters & | params | ) |
Give a suitable Container given constraints.
CORBA Method:
params | Container Parameters required for the container |
void SALOME_ContainerManager::ShutdownContainers | ( | ) |
Loop on all the containers listed in naming service, ask shutdown on each.
CORBA Method:
void SALOME_ContainerManager::Shutdown | ( | ) |
shutdown all the containers, then the ContainerManager servant
CORBA method:
|
protected |
Find a container given constraints (params) on a list of machines (possibleComputers)
|
protected |
Find a container given constraints (params) on a machine (theMachine)
|
protected |
Builds the script to be launched
If SALOME Application not defined ($APPLI), see BuildTempFileToLaunchRemoteContainer()
Else rely on distant configuration. Command is under the form (example): ssh user distantPath/runRemote.sh hostNS portNS WORKINGDIR workingdir \ SALOME_Container containerName &"
|
protected |
builds the command to be launched.
|
protected |
Builds in a temporary file the script to be launched.
Used if SALOME Application ($APPLI) is not defined. The command is build with data from CatalogResources, in which every path used on remote computer must be defined.
|
protected |
removes the generated temporary file in case of a remote launch.
|
protected |
add to command all options relative to naming service.
|
protected |
add to command all options relative to naming service.
|
protected |
add to command all options relative to naming service.
|
protected |
generate a file name in /tmp directory
|
static |
|
protected |
attribute that contains current tmp files generated
|
protected |
contains the rsh or ssh command to access directly to machine.
|
protected |
different behaviour if $APPLI exists (SALOME Application)
|
protected |
attribute that contains the number of processes used in batch mode by MPI containers