]> SALOME platform Git repositories - modules/jobmanager.git/commitdiff
Salome HOME
Work documentation :
authorribes <ribes>
Wed, 29 Sep 2010 13:31:48 +0000 (13:31 +0000)
committerribes <ribes>
Wed, 29 Sep 2010 13:31:48 +0000 (13:31 +0000)
- resource section
- adding css style for tables

doc/Makefile.am
doc/_static/basic.css [new file with mode: 0644]
doc/_static/default.css [new file with mode: 0644]
doc/images/jobmanager_resource_1.png [new file with mode: 0644]
doc/images/jobmanager_resource_2.png [new file with mode: 0644]
doc/resource.rst

index 266675f2954c935c58bb771efeb4f60895f1a7a9..817e3972c50ddb442ce284724ca0fc315cb7e420 100644 (file)
@@ -29,7 +29,7 @@ html/index.html:$(RSTFILES)
 endif
 
 #EXTRA_DIST= html htmldev _static
-EXTRA_DIST= html html/index.html
+EXTRA_DIST= html html/index.html _static images
 
 jobmanagerdocdir=$(docdir)/gui/JOBMANAGER
 
@@ -60,7 +60,9 @@ html:
 #               mkdir -p $@
 
 RSTFILES=          \
-index.rst          
+index.rst          \
+intro.rst          \
+resource.rst
 
 
 EXTRA_DIST+= $(RSTFILES) conf.py
diff --git a/doc/_static/basic.css b/doc/_static/basic.css
new file mode 100644 (file)
index 0000000..aeb1381
--- /dev/null
@@ -0,0 +1,433 @@
+/**
+ * Sphinx stylesheet -- basic theme
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ */
+
+/* -- main layout ----------------------------------------------------------- */
+
+div.clearer {
+    clear: both;
+}
+
+/* -- relbar ---------------------------------------------------------------- */
+
+div.related {
+    width: 100%;
+    font-size: 90%;
+}
+
+div.related h3 {
+    display: none;
+}
+
+div.related ul {
+    margin: 0;
+    padding: 0 0 0 10px;
+    list-style: none;
+}
+
+div.related li {
+    display: inline;
+}
+
+div.related li.right {
+    float: right;
+    margin-right: 5px;
+}
+
+/* -- sidebar --------------------------------------------------------------- */
+
+div.sphinxsidebarwrapper {
+    padding: 10px 5px 0 10px;
+}
+
+div.sphinxsidebar {
+    float: left;
+    width: 230px;
+    margin-left: -100%;
+    font-size: 90%;
+}
+
+div.sphinxsidebar ul {
+    list-style: none;
+}
+
+div.sphinxsidebar ul ul,
+div.sphinxsidebar ul.want-points {
+    margin-left: 20px;
+    list-style: square;
+}
+
+div.sphinxsidebar ul ul {
+    margin-top: 0;
+    margin-bottom: 0;
+}
+
+div.sphinxsidebar form {
+    margin-top: 10px;
+}
+
+div.sphinxsidebar input {
+    border: 1px solid #98dbcc;
+    font-family: sans-serif;
+    font-size: 1em;
+}
+
+img {
+    border: 0;
+}
+
+/* -- search page ----------------------------------------------------------- */
+
+ul.search {
+    margin: 10px 0 0 20px;
+    padding: 0;
+}
+
+ul.search li {
+    padding: 5px 0 5px 20px;
+    background-image: url(file.png);
+    background-repeat: no-repeat;
+    background-position: 0 7px;
+}
+
+ul.search li a {
+    font-weight: bold;
+}
+
+ul.search li div.context {
+    color: #888;
+    margin: 2px 0 0 30px;
+    text-align: left;
+}
+
+ul.keywordmatches li.goodmatch a {
+    font-weight: bold;
+}
+
+/* -- index page ------------------------------------------------------------ */
+
+table.contentstable {
+    width: 90%;
+}
+
+table.contentstable p.biglink {
+    line-height: 150%;
+}
+
+a.biglink {
+    font-size: 1.3em;
+}
+
+span.linkdescr {
+    font-style: italic;
+    padding-top: 5px;
+    font-size: 90%;
+}
+
+/* -- general index --------------------------------------------------------- */
+
+table.indextable td {
+    text-align: left;
+    vertical-align: top;
+}
+
+table.indextable dl, table.indextable dd {
+    margin-top: 0;
+    margin-bottom: 0;
+}
+
+table.indextable tr.pcap {
+    height: 10px;
+}
+
+table.indextable tr.cap {
+    margin-top: 10px;
+    background-color: #f2f2f2;
+}
+
+img.toggler {
+    margin-right: 3px;
+    margin-top: 3px;
+    cursor: pointer;
+}
+
+/* -- general body styles --------------------------------------------------- */
+
+a.headerlink {
+    visibility: hidden;
+}
+
+h1:hover > a.headerlink,
+h2:hover > a.headerlink,
+h3:hover > a.headerlink,
+h4:hover > a.headerlink,
+h5:hover > a.headerlink,
+h6:hover > a.headerlink,
+dt:hover > a.headerlink {
+    visibility: visible;
+}
+
+div.body p.caption {
+    text-align: inherit;
+}
+
+div.body td {
+    text-align: left;
+}
+
+.field-list ul {
+    padding-left: 1em;
+}
+
+.first {
+    margin-top: 0 !important;
+}
+
+p.rubric {
+    margin-top: 30px;
+    font-weight: bold;
+}
+
+/* -- sidebars -------------------------------------------------------------- */
+
+div.sidebar {
+    margin: 0 0 0.5em 1em;
+    border: 1px solid #ddb;
+    padding: 7px 7px 0 7px;
+    background-color: #ffe;
+    width: 40%;
+    float: right;
+}
+
+p.sidebar-title {
+    font-weight: bold;
+}
+
+/* -- topics ---------------------------------------------------------------- */
+
+div.topic {
+    border: 1px solid #ccc;
+    padding: 7px 7px 0 7px;
+    margin: 10px 0 10px 0;
+}
+
+p.topic-title {
+    font-size: 1.1em;
+    font-weight: bold;
+    margin-top: 10px;
+}
+
+/* -- admonitions ----------------------------------------------------------- */
+
+div.admonition {
+    margin-top: 10px;
+    margin-bottom: 10px;
+    padding: 7px;
+}
+
+div.admonition dt {
+    font-weight: bold;
+}
+
+div.admonition dl {
+    margin-bottom: 0;
+}
+
+p.admonition-title {
+    margin: 0px 10px 5px 0px;
+    font-weight: bold;
+}
+
+div.body p.centered {
+    text-align: center;
+    margin-top: 25px;
+}
+
+/* -- tables ---------------------------------------------------------------- */
+
+table.docutils {
+    border: 0 solid #dce;
+    border-collapse: collapse;
+}
+
+table.docutils td, table.docutils th {
+    padding: 2px 5px 2px 5px;
+    border-left: 0;    
+    background-color: #eef;    
+}
+
+table.field-list td, table.field-list th {
+    border: 0 !important;
+}
+
+table.footnote td, table.footnote th {
+    border: 0 !important;
+}
+
+table.docutils th {
+    border-top: 1px solid #cac;    
+    background-color: #ede;
+}
+
+th {
+    text-align: left;
+    padding-right: 5px;
+}
+
+th.head {
+    text-align: center;    
+}
+
+/* -- other body styles ----------------------------------------------------- */
+
+dl {
+    margin-bottom: 15px;
+}
+
+dd p {
+    margin-top: 0px;
+}
+
+dd ul, dd table {
+    margin-bottom: 10px;
+}
+
+dd {
+    margin-top: 3px;
+    margin-bottom: 10px;
+    margin-left: 30px;
+}
+
+dt:target, .highlight {
+    background-color: #fbe54e;
+}
+
+dl.glossary dt {
+    font-weight: bold;
+    font-size: 1.1em;
+}
+
+.field-list ul {
+    margin: 0;
+    padding-left: 1em;
+}
+
+.field-list p {
+    margin: 0;
+}
+
+.refcount {
+    color: #060;
+}
+
+.optional {
+    font-size: 1.3em;
+}
+
+.versionmodified {
+    font-style: italic;
+}
+
+p.deprecated {
+    background-color: #ffe4e4;
+    border: 1px solid #f66;
+    padding: 7px
+}
+
+.system-message {
+    background-color: #fda;
+    padding: 5px;
+    border: 3px solid red;
+}
+
+.footnote:target  {
+    background-color: #ffa
+}
+
+.impl-detail {
+    margin-top: 10px;
+    margin-bottom: 10px;
+    padding: 7px;
+    border: 1px solid #ccc;
+}
+
+.impl-detail .compound-first {
+    margin-top: 0;
+}
+
+.impl-detail .compound-last {
+    margin-bottom: 0;
+}
+
+/* -- code displays --------------------------------------------------------- */
+
+pre {
+    overflow: auto;
+}
+
+td.linenos pre {
+    padding: 5px 0px;
+    border: 0;
+    background-color: transparent;
+    color: #aaa;
+}
+
+table.highlighttable {
+    margin-left: 0.5em;
+}
+
+table.highlighttable td {
+    padding: 0 0.5em 0 0.5em;
+}
+
+tt.descname {
+    background-color: transparent;
+    font-weight: bold;
+    font-size: 1.2em;
+}
+
+tt.descclassname {
+    background-color: transparent;
+}
+
+tt.xref, a tt {
+    background-color: transparent;
+    font-weight: bold;
+}
+
+h1 tt, h2 tt, h3 tt, h4 tt, h5 tt, h6 tt {
+    background-color: transparent;
+}
+
+/* -- math display ---------------------------------------------------------- */
+
+img.math {
+    vertical-align: middle;
+}
+
+div.body div.math p {
+    text-align: center;
+}
+
+span.eqno {
+    float: right;
+}
+
+/* -- printout stylesheet --------------------------------------------------- */
+
+@media print {
+    div.document,
+    div.documentwrapper,
+    div.bodywrapper {
+        margin: 0 !important;
+        width: 100%;
+    }
+
+    div.sphinxsidebar,
+    div.related,
+    div.footer,
+    #top-link {
+        display: none;
+    }
+}
diff --git a/doc/_static/default.css b/doc/_static/default.css
new file mode 100644 (file)
index 0000000..c999f67
--- /dev/null
@@ -0,0 +1,210 @@
+/**
+ * Sphinx stylesheet -- default theme
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ */
+
+@import url("basic.css");
+
+/* -- page layout ----------------------------------------------------------- */
+
+body {
+    font-family: sans-serif;
+    font-size: 100%;
+    background-color: #11303d;
+    color: #000;
+    margin: 0;
+    padding: 0;
+}
+
+div.document {
+    background-color: #1c4e63;
+}
+
+div.documentwrapper {
+    float: left;
+    width: 100%;
+}
+
+div.bodywrapper {
+    margin: 0 0 0 230px;
+}
+
+div.body {
+    background-color: #ffffff;
+    color: #000000;
+    padding: 0 20px 30px 20px;
+}
+
+div.footer {
+    color: #ffffff;
+    width: 100%;
+    padding: 9px 0 9px 0;
+    text-align: center;
+    font-size: 75%;
+}
+
+div.footer a {
+    color: #ffffff;
+    text-decoration: underline;
+}
+
+div.related {
+    background-color: #133f52;
+    line-height: 30px;
+    color: #ffffff;
+}
+
+div.related a {
+    color: #ffffff;
+}
+
+div.sphinxsidebar {
+}
+
+div.sphinxsidebar h3 {
+    font-family: 'Trebuchet MS', sans-serif;
+    color: #ffffff;
+    font-size: 1.4em;
+    font-weight: normal;
+    margin: 0;
+    padding: 0;
+}
+
+div.sphinxsidebar h3 a {
+    color: #ffffff;
+}
+
+div.sphinxsidebar h4 {
+    font-family: 'Trebuchet MS', sans-serif;
+    color: #ffffff;
+    font-size: 1.3em;
+    font-weight: normal;
+    margin: 5px 0 0 0;
+    padding: 0;
+}
+
+div.sphinxsidebar p {
+    color: #ffffff;
+}
+
+div.sphinxsidebar p.topless {
+    margin: 5px 10px 10px 10px;
+}
+
+div.sphinxsidebar ul {
+    margin: 10px;
+    padding: 0;
+    color: #ffffff;
+}
+
+div.sphinxsidebar a {
+    color: #98dbcc;
+}
+
+div.sphinxsidebar input {
+    border: 1px solid #98dbcc;
+    font-family: sans-serif;
+    font-size: 1em;
+}
+
+/* -- body styles ----------------------------------------------------------- */
+
+a {
+    color: #355f7c;
+    text-decoration: none;
+}
+
+a:hover {
+    text-decoration: underline;
+}
+
+div.body p, div.body dd, div.body li {
+    text-align: justify;
+    line-height: 130%;
+}
+
+div.body h1,
+div.body h2,
+div.body h3,
+div.body h4,
+div.body h5,
+div.body h6 {
+    font-family: 'Trebuchet MS', sans-serif;
+    background-color: #f2f2f2;
+    font-weight: normal;
+    color: #20435c;
+    border-bottom: 1px solid #ccc;
+    margin: 20px -20px 10px -20px;
+    padding: 3px 0 3px 10px;
+}
+
+div.body h1 { margin-top: 0; font-size: 200%; }
+div.body h2 { font-size: 160%; }
+div.body h3 { font-size: 140%; }
+div.body h4 { font-size: 120%; }
+div.body h5 { font-size: 110%; }
+div.body h6 { font-size: 100%; }
+
+a.headerlink {
+    color: #c60f0f;
+    font-size: 0.8em;
+    padding: 0 4px 0 4px;
+    text-decoration: none;
+}
+
+a.headerlink:hover {
+    background-color: #c60f0f;
+    color: white;
+}
+
+div.body p, div.body dd, div.body li {
+    text-align: justify;
+    line-height: 130%;
+}
+
+div.admonition p.admonition-title + p {
+    display: inline;
+}
+
+div.note {
+    background-color: #eee;
+    border: 1px solid #ccc;
+}
+
+div.seealso {
+    background-color: #ffc;
+    border: 1px solid #ff6;
+}
+
+div.topic {
+    background-color: #eee;
+}
+
+div.warning {
+    background-color: #ffe4e4;
+    border: 1px solid #f66;
+}
+
+p.admonition-title {
+    display: inline;
+}
+
+p.admonition-title:after {
+    content: ":";
+}
+
+pre {
+    padding: 5px;
+    background-color: #eeffcc;
+    color: #333333;
+    line-height: 120%;
+    border: 1px solid #ac9;
+    border-left: none;
+    border-right: none;
+}
+
+tt {
+    background-color: #ecf0f3;
+    padding: 0 1px 0 1px;
+    font-size: 0.95em;
+}
\ No newline at end of file
diff --git a/doc/images/jobmanager_resource_1.png b/doc/images/jobmanager_resource_1.png
new file mode 100644 (file)
index 0000000..f60b1f7
Binary files /dev/null and b/doc/images/jobmanager_resource_1.png differ
diff --git a/doc/images/jobmanager_resource_2.png b/doc/images/jobmanager_resource_2.png
new file mode 100644 (file)
index 0000000..93de34a
Binary files /dev/null and b/doc/images/jobmanager_resource_2.png differ
index d5468d9ba4b49f27ef5cbda9e9609beb780bae16..a112ced9513ad5d48e3dc24722bd1731189be185 100644 (file)
@@ -25,36 +25,143 @@ These informations are used by the resource manager (service provided
 by the KERNEL) to choose and to user a resource when a container (in YACS)
 or a job (in JOBMANAGER) has to be launched.
 
-- **hostname:** It's the network name of the computer. If the computer is a cluster, you
-  have to give the frontal computer name.
+The description of each attribute is given in the table below. 
+
+**Warning:** The *mandatory* part is for using the resource with the JOBMANAGER.
+
+========================== ================ =============================================================
+**Attribute**              **Mandatory**    **Description**
+========================== ================ =============================================================
+**hostname**               Yes              It's the network name of the computer. If the computer is a 
+                                            cluster, you have to give the frontal computer name.
+**protocol**               Yes              Network protocol to use for creating connections 
+                                            (ssh or rsh).
+**username**               Yes              User name to use for creating connections.
+**batch**                  Yes              Type of batch system installed in the resource. Use *ssh* if
+                                            the resource is a single computer.
+**iprotocol**              Yes              Internal protocol to use on a cluster.
+**mpiImpl**                No               MPI implementation to use.
+
+**OS**                     No               It's the operating system name, ex: Linux, Windows, Debian.
+**nb_node**                No               It's the amount of node of the computer.
+**nb_proc_per_node**       No               It's the amount or processor or core of your computer.
+**mem_mb**                 No               It's the amount of memory in megabytes per node.
+**cpu_clock**              No               It's the frequency in gigahertz of the computer's processors.
+========================== ================ =============================================================
 
-- **protocol:**
-- **username:**
-- **batch:**
-- **iprotocol:**
-- **mpiImpl:**
+SALOME installation description
+-------------------------------
 
-- **OS:** It's the operating system name, ex: Linux, Windows, Debian.
-- **nb_node:** It's the amount of node of the computer.
-- **nb_proc_per_node:** It's the amount or processor or core of your computer.
-- **mem_mb:** It's the amount of memory in megabytes per node.
-- **cpu_clock:** It's the frequency in gigahertz of the computer's processors.
+A resource could contain a SALOME installation description.
+The description of each attribute is given in the table below.
 
+**Warning:** Attribute **applipath** is *mandatory* with JOBMANAGER SALOME related jobs.
 
-SALOME installation description
--------------------------------
+========================== =============================================================
+**Attribute**              **Description**
+========================== =============================================================
+**applipath**              It's the directory of the SALOME application to use into the 
+                           resource.
+**componentList**          It's the SALOME component list available in the SALOME 
+                           application.
+========================== =============================================================
+
+Where is the resource file ?
+----------------------------
 
-- **componentList:**
-- **applipath:**
+Resources are located into a XML resource file. SALOME tries to find this file
+in three different locations:
 
-Two scenarios with SALOME resource
+1. If **USER_CATALOG_RESOURCES_FILE** env file is defined, SALOME uses this file.
+2. If not in the SALOME application directory: $APPLIPATH/CatalogResources.xml.
+3. If not in the directory of the installation of SALOME KERNEL: 
+   $KERNEL_ROOT_DIR/share/salome/resources/kernel/CatalogResources.xml.
+
+By default, the resource manager creates a resource with the name and the hostname of the user computer.
+
+JOBMANAGER resource management GUI
 ++++++++++++++++++++++++++++++++++
 
+The JOBMANAGER provides a panel to manage the resources. This panel is showned in the 
+figure :ref:`figure_jobmanager_resource_1`. The panel provides some buttons and a list
+that shows the aviable resources. You can select one resource to enable buttons.
+
+.. _figure_jobmanager_resource_1:
+
+.. figure:: images/jobmanager_resource_1.png
+  :align: center
+
+  **JOBMANAGER resource management panel**
+
+The description of each button is given in the table below.
+
+========================== =============================================================
+**Button**                  **Description**
+========================== =============================================================
+**Refresh Resource List**  Resource file is read to refresh the list.
+**Show**                   Show the selected resource.
+**Edit**                   Edit the selected resource. The resource is saved is **Ok** 
+                           is clicked. If the resource name is changed, a new resource
+                           is added.
+**Add**                    Add a new resource.
+**Remove**                 Remove the selected resource.
+========================== =============================================================
+
+The figure :ref:`figure_jobmanager_resource_2` shows the panel of a resource. This panel
+shows all the informations of a resource.
+
+.. _figure_jobmanager_resource_2:
+
+.. figure:: images/jobmanager_resource_2.png
+  :align: center
+
+  **JOBMANAGER resource panel**
+
+Two scenarios with a SALOME resource
+++++++++++++++++++++++++++++++++++++
+
+This section describes to common scenarios for understanding how to describe
+a resource for the JOBMANAGER.
+
 Use an interactive resource
 ---------------------------
 
+In this scenario, you need to launch a job into your computer or an interactive computer
+available in your network.
+
+To launch a **command** job you need to fill the following attributes:
+
+- **hostname**
+- **protocol** = *ssh*
+- **username**
+- **batch** = *ssh*
+
+**Warning:** You have configure your ssh for allowing ssh commands without asking 
+interactives password (RSA or DSA keys).
+
+To launch a **SALOME** command job you also need to fill the following attributes:
+
+- **applipath**
+
 Use a cluster managed by batch system
 -------------------------------------
 
-JOBMANAGER resource management GUI
-++++++++++++++++++++++++++++++++++
+In this scenario, you need to launch a job into a cluster managed by a batch system.
+
+To launch a **command** job you need to fill the following attributes:
+
+- **hostname**
+- **protocol**
+- **username**
+- **batch**
+- **iprotocol**
+- **nb_proc_per_node**
+
+**Warning:** You have configure your ssh for allowing ssh commands without asking 
+interactives password (RSA or DSA keys) between your computer and the cluster and between
+the cluster's nodes.
+
+To launch a **SALOME** command job you also need to fill the following attributes:
+
+- **applipath**
+