Salome HOME
Merge from V7_3_BR branch 18/12/2013
authorvsr <vsr@opencascade.com>
Wed, 18 Dec 2013 15:11:02 +0000 (15:11 +0000)
committervsr <vsr@opencascade.com>
Wed, 18 Dec 2013 15:11:02 +0000 (15:11 +0000)
CMakeLists.txt
doc/CMakeLists.txt
doc/conf.py.in
doc/images/jobmanager_job_workflow_3.png
doc/images/jobmanager_job_workflow_4.png
doc/job.rst
doc/jobmanager_gui.rst
src/genericgui/BL_GenericGui.cxx
src/genericgui/BL_JobsManager_QT.cxx
src/salomegui/resources/SalomeApp.xml.in

index 73959a0e50d8805d5ef3263f0e0eadeb0e963da4..bcb22e8b6481e00ef2e75dc0f435e4df36ef291b 100755 (executable)
@@ -28,7 +28,7 @@ CMAKE_POLICY(SET CMP0003 NEW)
 STRING(TOUPPER ${PROJECT_NAME} PROJECT_NAME_UC)
 
 SET(${PROJECT_NAME_UC}_MAJOR_VERSION 7)
-SET(${PROJECT_NAME_UC}_MINOR_VERSION 2)
+SET(${PROJECT_NAME_UC}_MINOR_VERSION 3)
 SET(${PROJECT_NAME_UC}_PATCH_VERSION 0)
 SET(${PROJECT_NAME_UC}_VERSION
   ${${PROJECT_NAME_UC}_MAJOR_VERSION}.${${PROJECT_NAME_UC}_MINOR_VERSION}.${${PROJECT_NAME_UC}_PATCH_VERSION})
index b03ed9eb38657ed7d1aae502746721c12d37c996..03497df457d733bd42bd9b75c1967d93f678c1bc 100755 (executable)
 # See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 #
 
-# This file mainly prepares the environment in which sphinx should run:
-#  this sets the PYTHONPATH and LD_LIBRARY_PATH to include OMNIORB, DOCUTILS, SETUPTOOLS, etc ...
-
-# Prepare Sphinx options
-SET(SPHINXOPTS
-)
-SET(SOURCEDIR
-  ${CMAKE_CURRENT_SOURCE_DIR}
-)
-SET(SPHINXBUILD
-  sphinx-build
-)
-SET(PAPEROPT_a4
-  -D
-  latex_paper_size=a4
-)
-SET(ALLSPHINXOPTS
-  -d
-  doctrees
-  ${PAPEROPT_a4}
-  ${SPHINXOPTS}
-  ${SOURCEDIR}
-)
-
 SALOME_CONFIGURE_FILE(conf.py.in conf.py)
 
-# Write the shell file preparing the env for the Sphinx run:
-#    This uses the paths to SPHINX, DOCUTILS and SETUPTOOLS:
-#    Their root dir were found when looking for Sphinx (FindSalomeSphinx.cmake):
-
-SET(_pydir python${PYTHON_VERSION_MAJOR}.${PYTHON_VERSION_MINOR})
-IF(WIN32)
-  STRING(REPLACE "/" "\\" SCR "@SET PYTHONPATH=${CMAKE_INSTALL_PREFIX}\\lib\\${_pydir}\\site-packages\\salome\;%PYTHONPATH%
-  @SET PYTHONPATH=${CMAKE_INSTALL_PREFIX}\\bin\\salome\;%PYTHONPATH%
-  @SET PATH=${CMAKE_INSTALL_PREFIX}\\lib\\salome\;%PATH%
-  @SET PYTHONPATH=${CMAKE_INSTALL_PREFIX}\\${SALOME_INSTALL_PYTHON}\;%PYTHONPATH%
-  @SET PYTHONPATH=${CMAKE_INSTALL_PREFIX}\\${SALOME_INSTALL_PYTHON_SHARED}\;%PYTHONPATH%
-  @SET PYTHONPATH=${HDF5_ROOT_DIR}\\lib\;%PYTHONPATH%
-  @SET PYTHONPATH=${MPI_ROOT_DIR}\\lib\;%PYTHONPATH%
-
-  @SET PYTHONPATH=${KERNEL_ROOT_DIR}\\bin\\salome\;%PYTHONPATH%
-  @SET PATH=${KERNEL_ROOT_DIR}\\lib\\salome\;%PATH%
-  @SET PYTHONPATH=${KERNEL_ROOT_DIR}\\${SALOME_INSTALL_PYTHON}\;%PYTHONPATH%
-  @SET PYTHONPATH=${KERNEL_ROOT_DIR}\\${SALOME_INSTALL_PYTHON_SHARED}\;%PYTHONPATH%
-
-  @SET PYTHONPATH=${OMNIORB_ROOT_DIR}\\lib\\x86_win32\;%PYTHONPATH%
-  @SET PYTHONPATH=${OMNIORB_ROOT_DIR}\\lib\\python\;%PYTHONPATH%
-  @SET PATH=${OMNIORB_ROOT_DIR}\\lib\\x86_win32\;%PATH%
-  ")
-  SET(EXT "bat")
-  SET(CALL_STR "call")
-ELSE(WIN32)
-  SET(SCR  " export PYTHONPATH=${CMAKE_INSTALL_PREFIX}/lib/${_pydir}/site-packages/salome:\${PYTHONPATH}
-  export PYTHONPATH=${CMAKE_INSTALL_PREFIX}/bin/salome:\${PYTHONPATH}
-  export LD_LIBRARY_PATH=${CMAKE_INSTALL_PREFIX}/lib/salome:\${LD_LIBRARY_PATH}
-  export PYTHONPATH=${CMAKE_INSTALL_PREFIX}/${SALOME_INSTALL_PYTHON}:\${PYTHONPATH}
-  export PYTHONPATH=${CMAKE_INSTALL_PREFIX}/${SALOME_INSTALL_PYTHON_SHARED}:\${PYTHONPATH}
-  export PYTHONPATH=${HDF5_ROOT_DIR}/lib:\${PYTHONPATH}
-  export PYTHONPATH=${MPI_ROOT_DIR}/lib:\${PYTHONPATH}
-
-  export PYTHONPATH=${KERNEL_ROOT_DIR}/bin/salome:\${PYTHONPATH}
-  export LD_LIBRARY_PATH=${KERNEL_ROOT_DIR}/lib/salome:\${LD_LIBRARY_PATH}
-  export PYTHONPATH=${KERNEL_ROOT_DIR}/${SALOME_INSTALL_PYTHON}:\${PYTHONPATH}
-  export PYTHONPATH=${KERNEL_ROOT_DIR}/${SALOME_INSTALL_PYTHON_SHARED}:\${PYTHONPATH}
-
-  export PYTHONPATH=${OMNIORB_ROOT_DIR}/lib:\${PYTHONPATH}
-  export PYTHONPATH=${OMNIORB_ROOT_DIR}/lib/${_pydir}/site-packages:\${PYTHONPATH}
-  export PYTHONPATH=${OMNIORB_ROOT_DIR}/lib64/${_pydir}/site-packages:\${PYTHONPATH}
-  export PYTHONPATH=${OMNIORBPY_ROOT_DIR}/lib:\${PYTHONPATH}
-  export PYTHONPATH=${OMNIORBPY_ROOT_DIR}/lib/${_pydir}/site-packages:\${PYTHONPATH}
-  export PYTHONPATH=${OMNIORBPY_ROOT_DIR}/lib64/${_pydir}/site-packages:\${PYTHONPATH}
-  export LD_LIBRARY_PATH=${OMNIORB_ROOT_DIR}/lib:\${LD_LIBRARY_PATH}
-  export PYTHONPATH=${SETUPTOOLS_ROOT_DIR}/lib/${_pydir}/site-packages:\${PYTHONPATH}
-  export PYTHONPATH=${DOCUTILS_ROOT_DIR}/lib/${_pydir}/site-packages:\${PYTHONPATH}
-  export PYTHONPATH=${SPHINX_ROOT_DIR}/lib/${_pydir}/site-packages:\${PYTHONPATH}
-"
-  )
-  SET(EXT "sh")
-  SET(CALL_STR ".")
-ENDIF(WIN32)
-
-FILE(WRITE ${CMAKE_CURRENT_BINARY_DIR}/env_s.${EXT} "${SCR}")
+SET(_cmd_options -c ${CMAKE_CURRENT_BINARY_DIR} -b html -d doctrees -D latex_paper_size=a4 ${CMAKE_CURRENT_SOURCE_DIR} html)
+SALOME_GENERATE_ENVIRONMENT_SCRIPT(_cmd env_script "${SPHINX_EXECUTABLE}" "${_cmd_options}")            
 
-ADD_CUSTOM_TARGET(html_docs ${CALL_STR} ${CMAKE_CURRENT_BINARY_DIR}/env_s.${EXT} && ${SPHINXBUILD} -c ${PROJECT_BINARY_DIR}/doc -b html ${ALLSPHINXOPTS} html)
+ADD_CUSTOM_TARGET(html_docs COMMAND ${_cmd})
 
 INSTALL(CODE "EXECUTE_PROCESS(COMMAND \"${CMAKE_COMMAND}\" --build ${PROJECT_BINARY_DIR} --target html_docs)")
-INSTALL(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/html DESTINATION ${SALOME_INSTALL_DOC}/gui/JOBMANAGER)
+INSTALL(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/html/ DESTINATION ${SALOME_INSTALL_DOC}/gui/JOBMANAGER)
 
-SET_DIRECTORY_PROPERTIES(PROPERTIES ADDITIONAL_MAKE_CLEAN_FILES html)
+SET(make_clean_files html doctrees)
+SET_DIRECTORY_PROPERTIES(PROPERTIES ADDITIONAL_MAKE_CLEAN_FILES "${make_clean_files}")
index 8e2a17a9b6214619dd854823394aa19795c9af67..7e4cc2967e9d967c5ad1da84aa894196188d0018 100644 (file)
@@ -46,9 +46,9 @@ copyright = '2010-2013 CEA/DEN, EDF R&D, A. Ribes'
 # built documents.
 #
 # The short X.Y version.
-version = '@SHORT_VERSION@'
+version = '@SALOMEJOBMANAGER_MAJOR_VERSION@.@SALOMEJOBMANAGER_MINOR_VERSION@'
 # The full version, including alpha/beta/rc tags.
-release = '@VERSION@'
+release = '@SALOMEJOBMANAGER_VERSION@'
 
 # The language for content autogenerated by Sphinx. Refer to documentation
 # for a list of supported languages.
@@ -67,6 +67,11 @@ release = '@VERSION@'
 # for source files.
 exclude_trees = ['.build','ref','images','CVS']
 
+# A list of glob-style patterns that should be excluded when looking for source
+# files. They are matched against the source file names relative to the
+# source directory, using slashes as directory separators on all platforms.
+exclude_patterns = ['**/CVS']
+
 # The reST default role (used for this markup: `text`) to use for all documents.
 #default_role = None
 
index 7b2539858eb22ed51719f8902cf8ac8f8c43ceae..48508f08ceb600bcd8c8b2a300a0833df02ae892 100644 (file)
Binary files a/doc/images/jobmanager_job_workflow_3.png and b/doc/images/jobmanager_job_workflow_3.png differ
index 6e2e147819ef54a0f83c2fde2c9d68f2af77a81e..49f7ca7d1ef27e133fe0d98c959dc8471b18bad4 100644 (file)
Binary files a/doc/images/jobmanager_job_workflow_4.png and b/doc/images/jobmanager_job_workflow_4.png differ
index ecb98a831bb821dda3d68ae980a81131bf8824e5..b5639e18fcae1dbab34575c81906fc0bb26cf245 100644 (file)
@@ -61,10 +61,13 @@ The second table below describes the attributes of computation requirements.
                          duration is set to 0, the time will be set to the default value of the
                          batch queue selected.
 **Number of cpu**        It's the number of cpus/cores requested.
-**Memory**               It's the amount of memory per node expected.
+**Memory**               It's the amount of required memory. It is generally specified **per node**.
+                         With some batch mangers, it is possible to specify the required memory
+                         **per core** (only available with SLURM for now).
 **Queue**                It's optional. It permits to choose a specific batch queue on the targeted cluster.
                          If it is not defined, most of the batch systems will affect your job to the queue
                          that fits with the other attributes requirements.
+**Exclusive**            It indicates if the job can share nodes with other jobs or not.
 ======================== ==============================================================================
 
 Job's states
index 726949133c51b85636aac8606e56ba413df042b3..dca1fe141c99b55e29d764dea8004c0bd9ecaeb8 100644 (file)
@@ -88,14 +88,12 @@ will be executed. You can also define the batch queue that you want to use.
 
   **Create wizard page 3**
 
-The fourth page (see :ref:`figure_jobmanager_job_workflow_3`) permits to define the batch parameters related
-to the job. It's mandatory to define the *Remote work directory* that is the directory where the job will be executed.
-Note that if a work directory is defined for the selected resource, the work directory for the job will be
-created as a subdirectory of the resource work directory by default. The name of this subdirectory will
-contain the current date and time. Of course, you can override this default value.
-Input files defined in page 4 will be copied in this work directory. You also have to define the maximum duration
+The fourth page (see :ref:`figure_jobmanager_job_workflow_3`) allows to define the resource requirements
+and limits for the job. You can define the maximum duration
 (set 0 hours and 0 minutes to use the default value for the queue),
-the amount of memory needed and the number of processors/cores of the job.
+the amount of memory needed (per node or per core if the batch manager supports it), the number of
+processors/cores for the job, and whether it should use nodes exclusively (not sharing them with other
+jobs).
 
 .. _figure_jobmanager_job_workflow_3:
 
@@ -106,8 +104,14 @@ the amount of memory needed and the number of processors/cores of the job.
 
 The fifth page (see :ref:`figure_jobmanager_job_workflow_4`) permits to add the input and output files. 
 Input files are files located into the user
-computer that have to be transferred into the execution resource. In this page, you could also define the result 
-directory where job's results and logs will be copied.
+computer that have to be transferred into the execution resource. Output files will be copied to the user
+computer at the end of the job.
+It's mandatory to define the *Remote working directory* that is the directory where the job will be executed.
+Note that if a working directory is defined for the selected resource, the working directory for the job will be
+created as a subdirectory of the resource working directory by default. The name of this subdirectory will
+contain the current date and time. Of course, you can override this default value.
+Input files will be copied in this working directory.
+In this page, you can also define the result directory where the job's results and logs will be copied.
 
 .. _figure_jobmanager_job_workflow_4:
 
index e20a21709eabfc023ce1e76c689a3e3264da2a73..d254a8936ff6230d31573f6f3a4424a8880d0b8c 100644 (file)
@@ -54,6 +54,7 @@ BL::GenericGui::createDockWidgets()
   /* Summary */
   _dw_summary = new QDockWidget(_dock_parent);
   _dw_summary->setWindowTitle("Summary");
+  _dw_summary->setObjectName("SummaryDockWidget");
   _summary = new BL::Summary(_dw_summary, _jobs_manager);
   _summary->setModel(_model);
   QScrollArea * scroll_widget_summary = new QScrollArea(_dw_summary);
@@ -64,6 +65,7 @@ BL::GenericGui::createDockWidgets()
   /* ResourceCatalog */
   _dw_resource_catalog = new QDockWidget(_dock_parent);
   _dw_resource_catalog->setWindowTitle("Resource Catalog");
+  _dw_resource_catalog->setObjectName("ResourceCatalogDockWidget");
   _resource_catalog = new JM::ResourceCatalog(_dw_resource_catalog, _salome_services, false);
   QScrollArea * scroll_widget_resource = new QScrollArea(_dw_resource_catalog);
   scroll_widget_resource->setWidget(_resource_catalog);
index 5f1f15e78b124faed6740acd42ce7251dfd44f6f..16c65ce2f7edd24d4bca88087d600588571a72dc 100644 (file)
@@ -94,6 +94,7 @@ BL::JobsManager_QT::JobsManager_QT(QWidget * parent, BL::GenericGui * main_gui,
   scroll_widget->setWidgetResizable(true);
   setWidget(scroll_widget);
   setWindowTitle("Job Manager");
+  setObjectName("JobManagerDockWidget");
 }
 
 BL::JobsManager_QT::~JobsManager_QT()
index c6376d41783e7bd7bd695cce733710168c1dc7fc..6a3504e5c8a50086321a8eb1697302c98f096e68 100644 (file)
@@ -24,7 +24,7 @@
     <parameter name="name" value="JobManager"/>
     <parameter name="icon" value="jobmanager.png"/>
     <parameter name="documentation" value="jobmanager_help"/>
-    <parameter name="version" value="@VERSION@"/>
+    <parameter name="version" value="@SALOMEJOBMANAGER_VERSION@"/>
   </section>
   <section name="resources">
     <!-- Module resources -->