Skip to content
Browse files

conflict resolution

Merge branch 'master' of github.com:nimbusproject/nimbus

Conflicts:
	control/src/python/workspacecontrol/defaults/imageprocurement/propagate_lantorrent.py
	lantorrent/pylantorrent/server.py
  • Loading branch information...
2 parents ee53c59 + e5275d1 commit 141e3aba9e8cf169b3ae99e98d65301a8271ac24 BuzzTroll committed Nov 18, 2010
Showing with 440 additions and 150 deletions.
  1. +165 −0 control/src/python/workspacecontrol/defaults/imageprocurement/propagate_lantorrent.py
  2. +1 −1 control/src/python/workspacecontrol/defaults/lvrt/lvrt_common.py
  3. +9 −9 docs/m4/worksp.lib.m4
  4. +2 −1 docs/src/admin/index.html
  5. +2 −1 docs/src/admin/quickstart.html
  6. +79 −64 docs/src/admin/reference.html
  7. +3 −2 docs/src/admin/troubleshooting.html
  8. +2 −1 docs/src/admin/upgrading.html
  9. +2 −1 docs/src/admin/z2c/final-tests.html
  10. +2 −1 docs/src/admin/z2c/index.html
  11. +2 −1 docs/src/admin/z2c/networking-setup.html
  12. +3 −2 docs/src/admin/z2c/service-dependencies.html
  13. +2 −1 docs/src/admin/z2c/service-setup.html
  14. +2 −1 docs/src/admin/z2c/ssh-setup.html
  15. +2 −1 docs/src/admin/z2c/vmm-setup.html
  16. +2 −1 docs/src/changelog.html
  17. +2 −1 docs/src/dev/apis.html
  18. +2 −1 docs/src/dev/docs.html
  19. +6 −9 docs/src/dev/index.html
  20. +2 −1 docs/src/dev/meta.html
  21. +95 −1 docs/src/dev/reference.html
  22. +2 −1 docs/src/dev/releases.html
  23. +2 −1 docs/src/dev/sccs.html
  24. +2 −1 docs/src/doc/metadata-quickstart.html
  25. +2 −1 docs/src/elclients.html
  26. +2 −1 docs/src/faq.html
  27. +2 −1 docs/src/features.html
  28. +2 −1 docs/src/index.html
  29. +2 −1 docs/src/interfaces/deployment.html
  30. +2 −1 docs/src/interfaces/factory.html
  31. +2 −1 docs/src/interfaces/groupservice.html
  32. +2 −1 docs/src/interfaces/index.html
  33. +2 −1 docs/src/interfaces/metadata.html
  34. +2 −1 docs/src/interfaces/optional.html
  35. +2 −1 docs/src/interfaces/service.html
  36. +2 −1 docs/src/interfaces/statusservice.html
  37. +2 −1 docs/src/plugins/index.html
  38. +2 −1 docs/src/plugins/service-accounting.html
  39. +2 −1 docs/src/plugins/service-authz.html
  40. +2 −1 docs/src/plugins/service-network.html
  41. +2 −1 docs/src/plugins/service-prop.html
  42. +2 −1 docs/src/plugins/service-reqintake.html
  43. +2 −1 docs/src/plugins/service-sched.html
  44. +2 −1 docs/src/plugins/service-tasks.html
  45. +2 −1 docs/src/summary.html
  46. +1 −7 lantorrent/etc/lantorrent.inet.in
  47. +0 −15 lantorrent/etc/virga.xinetd
  48. +4 −2 lantorrent/pylantorrent/__init__.py
  49. +0 −1 lantorrent/pylantorrent/server.py
View
165 control/src/python/workspacecontrol/defaults/imageprocurement/propagate_lantorrent.py
@@ -0,0 +1,165 @@
+from commands import getstatusoutput
+import os
+from workspacecontrol.api.exceptions import *
+import propagate_scp
+import workspacecontrol.main.wc_args as wc_args
+
+class LantorrentPropadapter(propagate_scp.propadapter):
+
+ def __init__(self, params, common):
+ propagate_scp.propadapter.__init__(self, params, common)
+ self.ssh = None
+ self.ltport = None
+ self.ltip = None
+ self.scheme = "lantorrent://"
+
+ def validate(self):
+ # validate scp adaptor
+ propagate_scp.propadapter.validate(self)
+ self.c.log.debug("validating lantorrent propagation adapter")
+
+ self.ltip = self.p.get_conf_or_none("propagation", "lantorrentip")
+ if not self.ltip:
+ self.ltip = ""
+
+ self.ltport = self.p.get_conf_or_none("propagation", "lantorrentport")
+ self.ltport = int(self.ltport)
+ if not self.ltport:
+ self.ltport = 2893
+
+ self.ssh = self.p.get_conf_or_none("propagation", "lantorrentexe")
+ if not self.ssh:
+ raise InvalidConfig("no path to ssh")
+
+ if os.path.isabs(self.scp):
+ if not os.access(self.scp, os.F_OK):
+ raise InvalidConfig("SSH is configured with an absolute path, but it does not seem to exist: '%s'" % self.ssh)
+
+ if not os.access(self.scp, os.X_OK):
+ raise InvalidConfig("SSH is configured with an absolute path, but it does not seem executable: '%s'" % self.ssh)
+
+ self.c.log.debug("SSH configured: %s" % self.ssh)
+
+ self.sshuser = self.p.get_conf_or_none("propagation", "ssh_user")
+ if self.sshuser:
+ self.c.log.debug("SSH default user: %s" % self.sshuser)
+ else:
+ self.c.log.debug("no SSH default user")
+
+ def translate_to_scp(self, imagestr):
+ if imagestr[:len(self.scheme)] != self.scheme:
+ raise InvalidInput("scp trans invalid lantorrent url, not %s %s" % (self.scheme, imagestr))
+ url = "scp://" + imagestr[len(self.scheme):]
+ url_a = url.split("?")
+ return url_a[0]
+
+
+ def validate_unpropagate_target(self, imagestr):
+ imagestr = self.translate_to_scp(imagestr)
+ propagate_scp.propadapter.validate_unpropagate_target(self, imagestr)
+
+ def unpropagate(self, local_absolute_source, remote_target):
+ remote_target = self.translate_to_scp(remote_target)
+ propagate_scp.propadapter.unpropagate(self, local_absolute_source, remote_target)
+
+ def validate_propagate_source(self, imagestr):
+ # will throw errors if invalid
+ self._lt_command("fake", imagestr)
+
+ def propagate(self, remote_source, local_absolute_target):
+ self.c.log.info("lantorrent propagation - remote source: %s" % remote_source)
+ self.c.log.info("lantorrent propagation - local target: %s" % local_absolute_target)
+
+ cmd = self._lt_command(local_absolute_target, remote_source)
+ self.c.log.info("Running lantorrent command: %s" % cmd)
+
+ ret,output = getstatusoutput(cmd)
+ if ret:
+ errmsg = "problem running command: '%s' ::: return code" % cmd
+ errmsg += ": %d ::: output:\n%s" % (ret, output)
+ self.c.log.error(errmsg)
+ raise UnexpectedError(errmsg)
+ else:
+ self.c.log.info("Successfully ran %s. output %s" % (cmd, output))
+
+ self.c.log.info("Transfer complete.")
+
+ def _lt_command(self, local, remote):
+ """
+ Remote url: lantorrent://hostname:port/path.
+ """
+
+ if remote[:len(self.scheme)] != self.scheme:
+ raise InvalidInput("get command invalid lantorrent url, not %s %s" % (self.scheme, remote))
+
+ url = remote
+ lt_exe = self.p.get_arg_or_none(wc_args.EXTRA_ARGS)
+ if lt_exe == None:
+ raise InvalidInput("the prop-extra-args parameter must be used and be a path to the remote execution script")
+
+ (xfer_scheme, xfer_user, xfer_pw, xfer_host, xfer_port, xfer_path) =_url_parse(url)
+
+ if xfer_port == None:
+ xfer_port = 22
+
+ if xfer_user:
+ self.c.log.info("allowing client to specify this account: %s" % xfer_user)
+ else:
+ self.c.log.debug("client did not specify account")
+
+ # if default is not specified, we just uses current account
+ if self.sshuser:
+ self.c.log.debug("using the default ssh account")
+ xfer_user = self.sshuser
+ else:
+ self.c.log.debug("using the program runner for ssh account")
+
+ if xfer_user:
+ xfer_user = xfer_user + "@"
+ else:
+ xfer_user = ""
+ try:
+ import uuid
+ rid = str(uuid.uuid1())
+ except:
+ import commands
+ rid = commands.getoutput("uuidgen")
+ cmd = self.ssh + " %d %s%s %s %s %s %s %s:%d" % (xfer_port, xfer_user, xfer_host, lt_exe, xfer_path, local, rid, self.ltip, self.ltport)
+
+ self.c.log.debug("lantorrent command %s " % (cmd))
+
+ return cmd
+
+def _url_parse(url):
+ parts = url.split('://', 1)
+ scheme = parts[0]
+ rest = parts[1]
+
+ parts = rest.split('@', 1)
+ if len(parts) == 1:
+ user = None
+ password = None
+ else:
+ rest = parts[1]
+ u_parts = parts[0].split(':')
+ user = parts[0]
+ if len(u_parts) == 1:
+ password = None
+ else:
+ password = parts[1]
+
+ parts = rest.split('/', 1)
+ contact_string = parts[0]
+ if len(parts) > 1:
+ path = '/' + parts[1]
+ else:
+ path = None
+
+ parts = contact_string.split(':')
+ hostname = parts[0]
+ if len(parts) == 1:
+ port = None
+ else:
+ port = int(parts[1])
+
+ return (scheme, user, password, hostname, port, path)
View
2 control/src/python/workspacecontrol/defaults/lvrt/lvrt_common.py
@@ -248,7 +248,7 @@ def info(self, handle):
if state == DOM_STATE_NOSTATE:
# this is the case right after a graceful shutdown succeeds
self.c.log.debug("found VM with name '%s' but it has no state -- from the perspective 'above' this means it was not found at all." % handle)
- return None
+ return rvm
if state == DOM_STATE_RUNNING:
rvm.running = True
View
18 docs/m4/worksp.lib.m4
@@ -25,11 +25,11 @@ m4_define([[[_BREADCRUMB_DA_TP4_1',<a href="/index.html">Home</a> -> <a href="/d
m4_define([[[_BREADCRUMB_DA_TP5',<a href="/index.html">Home</a> -> <a href="/da/index.html">Dynamic Accounts</a> -> <a href="/da/TP5/index.html">TP5</a>)m4_dnl
m4_dnl
m4_define([[[_NIMBUS_TP2_1_DEPRECATED',<br><h1><font color="red"><b>DEPRECATED</b>: The most recent version is <a href="/vm/TP2.2/index.html">Nimbus TP2.2</a></font></h1><br>)m4_dnl
-m4_define([[[_NIMBUS_TP2_2_DEPRECATED',<h3><font color="red"><b>DEPRECATED</b>: This document describes an old release. Check <a href="_NIMBUS_WEBSITE/docs/">here</a> for the current version.</font></h3>)m4_dnl
-m4_define([[[_NIMBUS_2_3_DEPRECATED',<h3><font color="red"><b>DEPRECATED</b>: This document describes an old release. Check <a href="_NIMBUS_WEBSITE/docs/">here</a> for the current version.</font></h3>)m4_dnl
-m4_define([[[_NIMBUS_2_4_DEPRECATED',<h3><font color="red"><b>DEPRECATED</b>: This document describes an old release. Check <a href="_NIMBUS_WEBSITE/docs/">here</a> for the current version.</font></h3>)m4_dnl
-m4_define([[[_NIMBUS_2_5_DEPRECATED',<!-- current release -->)m4_dnl
-m4_define([[[_NIMBUS_2_6_DEPRECATED',<!-- current RC -->)m4_dnl
+m4_define([[[_NIMBUS_TP2_2_DEPRECATED',<h3><font color="red"><b>Warning</b>: This document describes an old release. Check <a href="_NIMBUS_WEBSITE/docs/">here</a> for the current version.</font></h3>)m4_dnl
+m4_define([[[_NIMBUS_2_3_DEPRECATED',<h3><font color="red"><b>Warning</b>: This document describes an old release. Check <a href="_NIMBUS_WEBSITE/docs/">here</a> for the current version.</font></h3>)m4_dnl
+m4_define([[[_NIMBUS_2_4_DEPRECATED',<h3><font color="red"><b>Warning</b>: This document describes an old release. Check <a href="_NIMBUS_WEBSITE/docs/">here</a> for the current version.</font></h3>)m4_dnl
+m4_define([[[_NIMBUS_2_5_DEPRECATED',<h3><font color="red"><b>Warning</b>: This document describes an old release. Check <a href="_NIMBUS_WEBSITE/docs/">here</a> for the current version.</font></h3>)m4_dnl
+m4_define([[[_NIMBUS_IS_DEPRECATED',<!-- current release -->)m4_dnl
m4_dnl
m4_define([[[_WORKSP_DA_DEPRECATED',
<div style="border:2px solid #000000;">
@@ -282,9 +282,9 @@ m4_define([[[_NIMBUS_LEFT2_DEV1_SIDEBAR',
<li>
<a href="../plugins/index.html" title="Extensibility" class="$2">Extensibility</a>
</li>
- <li>
+ <!-- <li>
<a href="apis.html" title="APIs" class="$3">APIs</a>
- </li>
+ </li> -->
<li>
<a href="sccs.html" title="Source Control" class="$4">Source Control</a>
</li>
@@ -314,9 +314,9 @@ m4_define([[[_NIMBUS_LEFT2_DEV2_SIDEBAR',
<li>
<a href="index.html" title="Extensibility" class="$2">Extensibility</a>
</li>
- <li>
+ <!-- <li>
<a href="../dev/apis.html" title="APIs" class="$3">APIs</a>
- </li>
+ </li> -->
<li>
<a href="../dev/sccs.html" title="Source Control" class="$4">Source Control</a>
</li>
View
3 docs/src/admin/index.html
@@ -5,7 +5,8 @@
_NIMBUS_LEFT2_ADMIN_SIDEBAR(y,n,n,n,n)
_NIMBUS_LEFT2_COLUMN_END
_NIMBUS_CENTER2_COLUMN
-_NIMBUS_2_6_DEPRECATED
+_NIMBUS_IS_DEPRECATED
+
<h2>Nimbus 2.6 Admin Guide</h2>
View
3 docs/src/admin/quickstart.html
@@ -5,7 +5,8 @@
_NIMBUS_LEFT2_ADMIN_SIDEBAR(n,y,n,n,n)
_NIMBUS_LEFT2_COLUMN_END
_NIMBUS_CENTER2_COLUMN
-_NIMBUS_2_6_DEPRECATED
+_NIMBUS_IS_DEPRECATED
+
<p>
This is a deprecated page, see the <a href="z2c/">Zero To Cloud Guide</a>
View
143 docs/src/admin/reference.html
@@ -5,7 +5,8 @@
_NIMBUS_LEFT2_ADMIN_SIDEBAR(n,n,y,n,n)
_NIMBUS_LEFT2_COLUMN_END
_NIMBUS_CENTER2_COLUMN
-_NIMBUS_2_6_DEPRECATED
+_NIMBUS_IS_DEPRECATED
+
<h2>Nimbus 2.6 Admin Reference</h2>
@@ -1027,6 +1028,15 @@
</p>
+<h3>Nimbus Context Broker REST frontend (default 8446</h3>
+<p>
+ The context broker also has a RESTful HTTP interface which listens on a separate port.
+ You can disable or change the port of this interface in a configuration file:
+ <tt class="literal">$NIMBUS_HOME/services/etc/nimbus-context-broker/jndi-config.xml</tt>.
+ Parameters under the <tt class="literal">rest</tt> resource control this interface.
+ Restart the service for changes to take effect.
+</p>
+
<h3>Nimbus Web application (default 1443)</h3>
<p>
When enabled, the web application listens by default on port 1443. This and other configuration
@@ -2107,93 +2117,98 @@
<p>
The following software is required on both service and VMM nodes:
<ol>
- <li>python2.4</li>
- <li>python simplejson</li>
+ <li>Python 2.5+ (but not Python 3.x)</li>
+ <li>Python <tt class="literal">simplejson</tt> module</li>
</ol>
</p>
<p>
-Lantorrent is run out of xinetd thus it must also be installed on all VMMs.
+Lantorrent is run out of <tt class="literal">xinetd</tt> thus it must also be installed on all VMMs.
</p>
<p>
To install LANTorrent you must take the following steps:
<ol>
-<li>edit $NIMBUS_HOME/nimbus-setup.conf</li>
- change lantorrent.enabled: False -&gt; lantorrent.enabled: True
+<li>
+ <p>
+ Edit <tt class="literal">$NIMBUS_HOME/nimbus-setup.conf</tt> and enable LANTorrent:
+ </p>
+ <pre class="panel">lantorrent.enabled: True</pre>
+</li>
-<li>edit $NIMBUS_HOME/services/etc/nimbus/workspace-service/other/common.conf</li>
- change the value of propagate.extraargs:
- propagate.extraargs=$NIMBUS_HOME/lantorrent/bin/lt-request
- <br />
- be sure to expand $NIMBUS_HOME to its full and actual path.
+<li>
+ <p>
+ Edit <tt class="literal">$NIMBUS_HOME/services/etc/nimbus/workspace-service/other/common.conf</tt>
+ and change the value of <tt class="literal">propagate.extraargs</tt>:
+ </p>
+ <pre class="panel">propagate.extraargs=$NIMBUS_HOME/lantorrent/bin/lt-request</pre>
+ <p>
+ Be sure to expand <tt class="literal">$NIMBUS_HOME</tt> to its full and actual path.
+ </p>
+</li>
-<li>install lantorrent on VMM</li>
+<li>
+ <p>Install LANTorrent on VMM</p>
<ul>
- <li>recursively copy $NIMBUS_HOME/lantorrent to /opt/nimbus/lantorrent.</li>
- <li>run ./vmm-install.sh on each node</li>
- either run it as your workspace control user or specify the workspace
+ <li>Recursively copy <tt class="literal">$NIMBUS_HOME/lantorrent</tt> to
+ <tt class="literal">/opt/nimbus/lantorrent</tt>.</li>
+ <li>Run <tt class="literal">./vmm-install.sh</tt> on each node.
+ Either run it as your workspace control user or specify the workspace
control user as the first and only argument to the script.
+ </li>
</ul>
+</li>
-<li>install LANTorrent into xinetd</li>
- the vmm-install.sh script creates the file lantorrent. This
- file is ready to be copied into /etc/xinetd.d/. Once this is done
- restart xinetd (/etc/init.d/xinetd restart).
-
-<li>change the propagation method.</li>
- edit the file:
- <BR>
- $NIMBUS_HOME/services/etc/nimbus/workspace-service/other/authz-callout-ACTIVE.xml
-
+<li>
+ <p>Install LANTorrent into xinetd</p>
+ <p>
+ The <tt class="literal">vmm-install.sh</tt> script creates the file <tt class="literal">lantorrent</tt>.
+ This file is ready to be copied into <tt class="literal">/etc/xinetd.d/</tt>. Once done,
+ restart xinetd.
+ </p>
+ <pre class="panel">
+ # /etc/init.d/xinetd restart
+ </pre>
+</li>
+<li>
+ <p>Change the propagation method.</p>
+ <p>Edit the file:
+ <tt class="literal">$NIMBUS_HOME/services/etc/nimbus/workspace-service/other/authz-callout-ACTIVE.xml</tt>
and change:
- <ul>
- <li><tt class="literal">
- &lt;property name="repoScheme" value="scp" /&gt;
- </tt></li>
- to:
- <li><tt class="literal">
- &lt;property name="repoScheme" value="lantorrent" /&gt;
- </tt></li>
- </ul>
-
-<li>restart the service:</li>
-$NIMBUS_HOME/bin/nimbusctl restart
-
-<li>[optional] if the path to nimbus on the workspace control nodes (VMMs)
- is not /opt/nimbus you will also need to edit a configuration file on
- all backends.</li>
+ </p>
+ <pre class="panel">&lt;property name="repoScheme" value="scp" /&gt;</pre>
+ to:
+ <pre class="panel">&lt;property name="repoScheme" value="lantorrent" /&gt;</pre>
+</li>
+<li>Restart the service:
+<pre class="panel">
+$ $NIMBUS_HOME/bin/nimbusctl restart
+</pre>
+</li>
- <ul>
- In the file:
- <li><tt class="literal">
- &lt;workspace control path&gt;/control/etc/workspace-control/propagation.conf
- </tt></li>
+<li>
+ <p>
+ [optional] If the path to nimbus on the workspace-control nodes (VMMs)
+ is not <tt class="literal">/opt/nimbus</tt> you will also need to edit a configuration file on
+ all backend nodes.
+ </p>
- make sure the value of:
+ <p>
+ In the file: <tt class="literal">&lt;workspace-control path&gt;/etc/workspace-control/propagation.conf</tt>
+ Adjust the value of:
- <li><tt class="literal">
+ <pre class="panel">
lantorrentexe: /opt/nimbus/bin/ltclient.sh
- </tt></li>
+ </pre>
- points to the proper location of you ltclinet.sh script. This should
- be a simple matter of changing /opt/nimbus to the path where you chose
+ <p>to point to the proper location of your <tt class="literal">ltclient.sh</tt> script. This should
+ be a simple matter of changing <tt class="literal">/opt/nimbus</tt> to the path where you chose
to install workspace control.
- </ul>
-
-<div class="note">
-<p class="note-title">cumulus.ini in Nimbus</p>
-For Nimbus installations this file can be found at
-<tt class="literal">$NIMBUS_HOME/cumulus/etc/cumulus.ini</tt>
-</p>
-</div>
-
-<p>
-Each file in the path is read in (provided it exists). The values found
-in each file override the values found in the previous file in this list.
+ </p>
+</li>
+</ol>
-</p>
<br />
<br />
<br />
View
5 docs/src/admin/troubleshooting.html
@@ -5,9 +5,10 @@
_NIMBUS_LEFT2_ADMIN_SIDEBAR(n,n,n,y,n)
_NIMBUS_LEFT2_COLUMN_END
_NIMBUS_CENTER2_COLUMN
-_NIMBUS_2_6_DEPRECATED
+_NIMBUS_IS_DEPRECATED
-<h2>Nimbus 2.6RC1 Troubleshooting</h2>
+
+<h2>Nimbus 2.6 Troubleshooting</h2>
<p>
Any questions can be posted to the workspace-user mailing list and will
View
3 docs/src/admin/upgrading.html
@@ -5,7 +5,8 @@
_NIMBUS_LEFT2_ADMIN_SIDEBAR(n,n,n,n,y)
_NIMBUS_LEFT2_COLUMN_END
_NIMBUS_CENTER2_COLUMN
-_NIMBUS_2_6_DEPRECATED
+_NIMBUS_IS_DEPRECATED
+
<h2>Upgrading from Nimbus 2.5 to 2.6</h2>
View
3 docs/src/admin/z2c/final-tests.html
@@ -5,7 +5,8 @@
_NIMBUS_LEFT2_Z2C_SIDEBAR(y)
_NIMBUS_LEFT2_COLUMN_END
_NIMBUS_CENTER2_COLUMN
-_NIMBUS_2_6_DEPRECATED
+_NIMBUS_IS_DEPRECATED
+
<h2>Final Tests</h2>
View
3 docs/src/admin/z2c/index.html
@@ -5,7 +5,8 @@
_NIMBUS_LEFT2_Z2C_SIDEBAR(y)
_NIMBUS_LEFT2_COLUMN_END
_NIMBUS_CENTER2_COLUMN
-_NIMBUS_2_6_DEPRECATED
+_NIMBUS_IS_DEPRECATED
+
<h2>Nimbus 2.6 Zero To Cloud Guide</h2>
View
3 docs/src/admin/z2c/networking-setup.html
@@ -5,7 +5,8 @@
_NIMBUS_LEFT2_Z2C_SIDEBAR(y)
_NIMBUS_LEFT2_COLUMN_END
_NIMBUS_CENTER2_COLUMN
-_NIMBUS_2_6_DEPRECATED
+_NIMBUS_IS_DEPRECATED
+
<h2>Install DHCPd and Configure Networking</h2>
View
5 docs/src/admin/z2c/service-dependencies.html
@@ -5,7 +5,8 @@
_NIMBUS_LEFT2_Z2C_SIDEBAR(y)
_NIMBUS_LEFT2_COLUMN_END
_NIMBUS_CENTER2_COLUMN
-_NIMBUS_2_6_DEPRECATED
+_NIMBUS_IS_DEPRECATED
+
<h2>Service Dependencies</h2>
@@ -27,7 +28,7 @@
</pre>
<p>
- Note that OpenJDK is not supported.
+ Note that GCJ is not supported.
</p>
<h3>Python 2.5 or later (but not 3.x)</h3>
View
3 docs/src/admin/z2c/service-setup.html
@@ -5,7 +5,8 @@
_NIMBUS_LEFT2_Z2C_SIDEBAR(y)
_NIMBUS_LEFT2_COLUMN_END
_NIMBUS_CENTER2_COLUMN
-_NIMBUS_2_6_DEPRECATED
+_NIMBUS_IS_DEPRECATED
+
<h2>Service Installation</h2>
View
3 docs/src/admin/z2c/ssh-setup.html
@@ -5,7 +5,8 @@
_NIMBUS_LEFT2_Z2C_SIDEBAR(y)
_NIMBUS_LEFT2_COLUMN_END
_NIMBUS_CENTER2_COLUMN
-_NIMBUS_2_6_DEPRECATED
+_NIMBUS_IS_DEPRECATED
+
<h2>SSH Setup</h2>
View
3 docs/src/admin/z2c/vmm-setup.html
@@ -5,7 +5,8 @@
_NIMBUS_LEFT2_Z2C_SIDEBAR(y)
_NIMBUS_LEFT2_COLUMN_END
_NIMBUS_CENTER2_COLUMN
-_NIMBUS_2_6_DEPRECATED
+_NIMBUS_IS_DEPRECATED
+
<h2>Install VMM Software</h2>
View
3 docs/src/changelog.html
@@ -7,7 +7,8 @@
_NIMBUS_LEFT2_COLUMN_END
_NIMBUS_CENTER2_COLUMN
-_NIMBUS_2_6_DEPRECATED
+_NIMBUS_IS_DEPRECATED
+
<h2>Changelog</h2>
View
3 docs/src/dev/apis.html
@@ -8,7 +8,8 @@
_NIMBUS_LEFT2_COLUMN_END
_NIMBUS_CENTER2_COLUMN
-_NIMBUS_2_6_DEPRECATED
+_NIMBUS_IS_DEPRECATED
+
<h2>APIs</h2>
View
3 docs/src/dev/docs.html
@@ -8,7 +8,8 @@
_NIMBUS_LEFT2_COLUMN_END
_NIMBUS_CENTER2_COLUMN
-_NIMBUS_2_6_DEPRECATED
+_NIMBUS_IS_DEPRECATED
+
<h2>Docs</h2>
View
15 docs/src/dev/index.html
@@ -8,21 +8,17 @@
_NIMBUS_LEFT2_COLUMN_END
_NIMBUS_CENTER2_COLUMN
-_NIMBUS_2_6_DEPRECATED
+_NIMBUS_IS_DEPRECATED
-<h2>Developer Resources (2.5)</h2>
+
+<h2>Developer Resources (2.6)</h2>
<p>
To learn how to make Nimbus components behave differently (beyond
configuration), see the <a href="../plugins/index.html">Extensibility
Guide</a>.
</p>
<p>
- To see online API documentation, go to the <a href="apis.html">APIs</a>
- section.
-</p>
-
-<p>
To learn about source control, including where to view the source online,
see <a href="sccs.html">Source control</a>.
</p>
@@ -34,8 +30,9 @@
</p>
<p>
- You <b>can contribute</b> without a contibutor voting process and many
- do. All that is necessary is that you sign a contributor's license
+ You <b>can contribute</b> without a vote to bring you in as a full committer and many
+ do. All that is necessary is that you sign a
+ <a href="http://dev.globus.org/wiki/Licensing_and_Contribution_Guidance#Legal_Requirements_for_Contributions">contributor's license</a>
which allows us to freely distribute your contributions. Your git
author information is preserved in the repository, you just don't
have free reign in this situation.
View
3 docs/src/dev/meta.html
@@ -7,7 +7,8 @@
_NIMBUS_LEFT2_COLUMN_END
_NIMBUS_CENTER2_COLUMN
-_NIMBUS_2_6_DEPRECATED
+_NIMBUS_IS_DEPRECATED
+
<h2>Nimbus is part of dev.globus</h2>
View
96 docs/src/dev/reference.html
@@ -8,7 +8,8 @@
_NIMBUS_LEFT2_COLUMN_END
_NIMBUS_CENTER2_COLUMN
-_NIMBUS_2_6_DEPRECATED
+_NIMBUS_IS_DEPRECATED
+
<div>
<h2>Developer reference</h2>
@@ -24,6 +25,11 @@
</li>
<li>
<p>
+ <a href="#pilot-fake">Pilot development environment</a>
+ </p>
+ </li>
+ <li>
+ <p>
<a href="#change-wsdl">Changing the WSDL</a>
</p>
</li>
@@ -294,6 +300,94 @@
<br />
<br />
+<br />
+<a name="pilot-fake"> </a>
+<h2>Pilot development environment _NAMELINK(pilot-fake)</h2>
+
+<p>
+ The following steps will allow you to develop the <b>service</b> portion of the pilot setup without actually needing an LRM installed or hypervisors.
+</p>
+<ol>
+
+<li>
+ Activate the pilot plugin, copy "resource-locator-pilot.xml" to "resource-locator-ACTIVE.xml"
+</li>
+
+<li>
+ Edit that, add any string here (e.g. "fake") in order to activate SSH based notifications:
+<div class="screen">
+&lt;property name="sshNotificationInfo" value="fake" /&gt;
+</div>
+</li>
+
+<li>Edit "services/etc/nimbus/workspace-service/pilot.conf"
+<div class="screen">
+ pbs.submit.path=/tmp/fakeqsub
+ pbs.delete.path=/bin/true
+</div>
+</li>
+
+<li>
+Create "/tmp/fakeqsub"
+<div class="screen">
+#!/bin/sh
+sleep 3
+echo "asdsadasd" # This is the LRM job ID.
+</div>
+</li>
+
+<li>
+Edit "services/container-log4j.properties"
+<div class="screen">
+log4j.category.org.nimbustools=DEBUG
+log4j.category.org.globus.workspace=DEBUG
+</div>
+</li>
+
+<li>
+Edit "services/etc/nimbus/workspace-service/logging.conf"
+<div class="screen">
+log.state=on
+log.trace=on
+</div>
+
+Or in some cases you might even want to enable the scheduler logging in
+ "services/etc/nimbus/workspace-service/other/main.xml"
+<div class="screen">
+&lt;property name="scheduler" value="on" /&gt;
+</div>
+</li>
+
+<li>
+Start service in fake mode (edit "services/etc/nimbus/workspace-service/other/common.conf" )
+</li>
+
+<li>Start a vm with cloud client</li>
+
+<li>grep logs for "pilot command" and note the "-i" parameter, e.g. "1e372dca-de93-4fd9-a125-9d66842804cc". That is the SLOT ID assigned to the LRM job. If you are launching many pilots at once (i.e., a cluster of 50 VMs, but one LRM job), each pilot process will report back with the <b>same id</b> but different hostname.
+</li>
+
+<li>
+Simulate reserved notification:
+<div class="screen">
+<b>$</b> ./services/var/nimbus/msg-sinks/pilotnotifications write 1e372dca-de93-4fd9-a125-9d66842804cc+++localhost pilot-reserved 0 2010-11-07-16-12-01
+</div>
+<ul>
+ <li>
+ <p>arg1 ("1e372dca-de93-4fd9-a125-9d66842804cc+++localhost")</p>
+
+ <p>"1e372dca-de93-4fd9-a125-9d66842804cc" is slot id from service logs</p>
+ <p>"+++" is separator</p>
+ <p>"localhost" is hostname where pilot ended up running</p>
+ </li>
+
+ <li><p>arg2 state, e.g. pilot-reserved</p></li>
+ <li><p>arg3, return code, e.g. 0</p></li>
+ <li><p>arg4, timestamp, YYYY-MM-DD-HH-MM-SS (always UTC/GMT)</p></li>
+</ul>
+</li>
+
+</ol>
<br />
<a name="change-wsdl"> </a>
View
3 docs/src/dev/releases.html
@@ -8,7 +8,8 @@
_NIMBUS_LEFT2_COLUMN_END
_NIMBUS_CENTER2_COLUMN
-_NIMBUS_2_6_DEPRECATED
+_NIMBUS_IS_DEPRECATED
+
<h2>Making releases</h2>
View
3 docs/src/dev/sccs.html
@@ -8,7 +8,8 @@
_NIMBUS_LEFT2_COLUMN_END
_NIMBUS_CENTER2_COLUMN
-_NIMBUS_2_6_DEPRECATED
+_NIMBUS_IS_DEPRECATED
+
<h2>Source Control</h2>
<p>
View
3 docs/src/doc/metadata-quickstart.html
@@ -2,7 +2,8 @@
_NIMBUS_HEADER(Metadata Quickstart)
_NIMBUS_HEADER2(n,n,y,n,n,n,n)
_NIMBUS_CENTER3_COLUMN
-_NIMBUS_2_6_DEPRECATED
+_NIMBUS_IS_DEPRECATED
+
<h2>Metadata Quickstart</h2>
View
3 docs/src/elclients.html
@@ -2,7 +2,8 @@
_NIMBUS_HEADER(EC2 Client Notes)
_NIMBUS_HEADER2(n,n,y,n,n,n,n)
_NIMBUS_CENTER3_COLUMN
-_NIMBUS_2_6_DEPRECATED
+_NIMBUS_IS_DEPRECATED
+
<h2>EC2 Client Notes</h2>
View
3 docs/src/faq.html
@@ -7,7 +7,8 @@
_NIMBUS_LEFT2_COLUMN_END
_NIMBUS_CENTER2_COLUMN
-_NIMBUS_2_6_DEPRECATED
+_NIMBUS_IS_DEPRECATED
+
<h2>Frequently Asked Questions</h2>
View
3 docs/src/features.html
@@ -7,7 +7,8 @@
_NIMBUS_LEFT2_COLUMN_END
_NIMBUS_CENTER2_COLUMN
-_NIMBUS_2_6_DEPRECATED
+_NIMBUS_IS_DEPRECATED
+
<h2>Major Features</h2>
View
3 docs/src/index.html
@@ -2,7 +2,8 @@
_NIMBUS_HEADER(2.6 Documentation)
_NIMBUS_HEADER2(n,n,y,n,n,n,n)
_NIMBUS_CENTER3_COLUMN
-_NIMBUS_2_6_DEPRECATED
+_NIMBUS_IS_DEPRECATED
+
<h2>Nimbus 2.6 Documentation</h2>
View
3 docs/src/interfaces/deployment.html
@@ -27,7 +27,8 @@
_NIMBUS_LEFT2_INTERFACES_SIDEBAR(n,n,y,n,n,n,n)
_NIMBUS_LEFT2_COLUMN_END
_NIMBUS_CENTER2_COLUMN
-_NIMBUS_2_6_DEPRECATED
+_NIMBUS_IS_DEPRECATED
+
<a name="deployment"></a>
View
3 docs/src/interfaces/factory.html
@@ -6,7 +6,8 @@
_NIMBUS_LEFT2_INTERFACES_SIDEBAR(n,n,n,y,n,n,n)
_NIMBUS_LEFT2_COLUMN_END
_NIMBUS_CENTER2_COLUMN
-_NIMBUS_2_6_DEPRECATED
+_NIMBUS_IS_DEPRECATED
+
<a name="factory"></a>
View
3 docs/src/interfaces/groupservice.html
@@ -6,7 +6,8 @@
_NIMBUS_LEFT2_INTERFACES_SIDEBAR(n,n,n,n,n,y,n)
_NIMBUS_LEFT2_COLUMN_END
_NIMBUS_CENTER2_COLUMN
-_NIMBUS_2_6_DEPRECATED
+_NIMBUS_IS_DEPRECATED
+
<a name="service"></a>
View
3 docs/src/interfaces/index.html
@@ -31,7 +31,8 @@
_NIMBUS_LEFT2_INTERFACES_SIDEBAR(y,n,n,n,n,n,n)
_NIMBUS_LEFT2_COLUMN_END
_NIMBUS_CENTER2_COLUMN
-_NIMBUS_2_6_DEPRECATED
+_NIMBUS_IS_DEPRECATED
+
<a name="interfaces"></a>
View
3 docs/src/interfaces/metadata.html
@@ -6,7 +6,8 @@
_NIMBUS_LEFT2_INTERFACES_SIDEBAR(n,y,n,n,n,n,n)
_NIMBUS_LEFT2_COLUMN_END
_NIMBUS_CENTER2_COLUMN
-_NIMBUS_2_6_DEPRECATED
+_NIMBUS_IS_DEPRECATED
+
<a name="metadata"></a>
View
3 docs/src/interfaces/optional.html
@@ -6,7 +6,8 @@
_NIMBUS_LEFT2_INTERFACES_SIDEBAR
_NIMBUS_LEFT2_COLUMN_END
_NIMBUS_CENTER2_COLUMN
-_NIMBUS_2_6_DEPRECATED
+_NIMBUS_IS_DEPRECATED
+
<a name="optional"></a>
View
3 docs/src/interfaces/service.html
@@ -6,7 +6,8 @@
_NIMBUS_LEFT2_INTERFACES_SIDEBAR(n,n,n,n,y,n,n)
_NIMBUS_LEFT2_COLUMN_END
_NIMBUS_CENTER2_COLUMN
-_NIMBUS_2_6_DEPRECATED
+_NIMBUS_IS_DEPRECATED
+
<a name="service"></a>
<h2>Workspace Service</h2>
View
3 docs/src/interfaces/statusservice.html
@@ -6,7 +6,8 @@
_NIMBUS_LEFT2_INTERFACES_SIDEBAR(n,n,n,n,n,n,y)
_NIMBUS_LEFT2_COLUMN_END
_NIMBUS_CENTER2_COLUMN
-_NIMBUS_2_6_DEPRECATED
+_NIMBUS_IS_DEPRECATED
+
<a name="service"></a>
<h2>Workspace Status Service</h2>
View
3 docs/src/plugins/index.html
@@ -14,7 +14,8 @@
_NIMBUS_LEFT2_COLUMN_END
_NIMBUS_CENTER2_COLUMN
-_NIMBUS_2_6_DEPRECATED
+_NIMBUS_IS_DEPRECATED
+
<h2>Extensibility Guide</h2>
View
3 docs/src/plugins/service-accounting.html
@@ -13,7 +13,8 @@
_NIMBUS_LEFT2_COLUMN_END
_NIMBUS_CENTER2_COLUMN
-_NIMBUS_2_6_DEPRECATED
+_NIMBUS_IS_DEPRECATED
+
<h2>Accounting</h2>
View
3 docs/src/plugins/service-authz.html
@@ -13,7 +13,8 @@
_NIMBUS_LEFT2_COLUMN_END
_NIMBUS_CENTER2_COLUMN
-_NIMBUS_2_6_DEPRECATED
+_NIMBUS_IS_DEPRECATED
+
<h2>Request authorization</h2>
View
3 docs/src/plugins/service-network.html
@@ -13,7 +13,8 @@
_NIMBUS_LEFT2_COLUMN_END
_NIMBUS_CENTER2_COLUMN
-_NIMBUS_2_6_DEPRECATED
+_NIMBUS_IS_DEPRECATED
+
<h2>Networking leases</h2>
View
3 docs/src/plugins/service-prop.html
@@ -13,7 +13,8 @@
_NIMBUS_LEFT2_COLUMN_END
_NIMBUS_CENTER2_COLUMN
-_NIMBUS_2_6_DEPRECATED
+_NIMBUS_IS_DEPRECATED
+
<h2>Propagation</h2>
View
3 docs/src/plugins/service-reqintake.html
@@ -13,7 +13,8 @@
_NIMBUS_LEFT2_COLUMN_END
_NIMBUS_CENTER2_COLUMN
-_NIMBUS_2_6_DEPRECATED
+_NIMBUS_IS_DEPRECATED
+
<h2>Request intake</h2>
View
3 docs/src/plugins/service-sched.html
@@ -13,7 +13,8 @@
_NIMBUS_LEFT2_COLUMN_END
_NIMBUS_CENTER2_COLUMN
-_NIMBUS_2_6_DEPRECATED
+_NIMBUS_IS_DEPRECATED
+
<h2>Scheduling/resource management</h2>
View
3 docs/src/plugins/service-tasks.html
@@ -13,7 +13,8 @@
_NIMBUS_LEFT2_COLUMN_END
_NIMBUS_CENTER2_COLUMN
-_NIMBUS_2_6_DEPRECATED
+_NIMBUS_IS_DEPRECATED
+
<h2>VMM control tasks</h2>
View
3 docs/src/summary.html
@@ -8,7 +8,8 @@
_NIMBUS_LEFT2_COLUMN_END
_NIMBUS_CENTER2_COLUMN
-_NIMBUS_2_6_DEPRECATED
+_NIMBUS_IS_DEPRECATED
+
<h2>Nimbus 2.6 - Bird's Eye View</h2>
View
8 lantorrent/etc/lantorrent.inet.in
@@ -1,9 +1,3 @@
-# default: off
-# description: An RFC 868 time server. This protocol provides a
-# site-independent, machine readable date and time. The Time service sends back
-# to the originating source the time in seconds since midnight on January first
-# 1900.
-# This is the tcp version.
service @SERVICENAME@
{
type = UNLISTED
@@ -12,6 +6,6 @@ service @SERVICENAME@
protocol = tcp
user = @WHO@
wait = no
- port = @PORT@
+ port = @PORT@
server = @LANTORRENT_HOME@/bin/lt.sh
}
View
15 lantorrent/etc/virga.xinetd
@@ -1,15 +0,0 @@
-# default: off
-# description: An RFC 868 time server. This protocol provides a
-# site-independent, machine readable date and time. The Time service sends back
-# to the originating source the time in seconds since midnight on January first
-# 1900.
-# This is the tcp version.
-service lantorrent
-{
- disable = no
- socket_type = stream
- protocol = tcp
- user = bresnaha
- wait = no
- server = @LANTORRENT_HOME@/bin/lt.sh
-}
View
6 lantorrent/pylantorrent/__init__.py
@@ -62,7 +62,8 @@ def __init__(self):
except:
emsg = "failed to load %s, using defaults" % (ini_file)
log(logging.WARNING, emsg, traceback)
- logging.basicConfig(filename=self.logfile, level=self.log_level)
+ logging.basicConfig(filename=self.logfile, level=self.log_level,
+ format="%(asctime)s - %(levelname)s - %(message)s")
log(logging.WARNING, "logging to %s at %d" % (self.logfile, self.log_level))
def set_defaults(self):
@@ -83,7 +84,8 @@ def load_settings(self, ini_file):
s = SafeConfigParser()
s.readfp(open(ini_file, "r"))
self.pw = s.get("security", "password")
- self.logfile = s.get("log", "file").replace("@LANTORRENT_HOME@", self.lt_home).replace("@PGM@", os.path.basename(sys.argv[0]))
+ prog = os.path.splitext(os.path.basename(sys.argv[0]))[0]
+ self.logfile = s.get("log", "file").replace("@LANTORRENT_HOME@", self.lt_home).replace("@PGM@", prog)
try:
log_level_str = s.get("log", "level")
self.log_level = log_levels[log_level_str]
View
1 lantorrent/pylantorrent/server.py
@@ -35,7 +35,6 @@ def __init__(self, inf, outf):
self.json_header = {}
self.source_conn = LTSourceConnection(inf)
self.outf = outf
- self.max_header_lines = 102400
self.block_size = 128*1024
self.suffix = ".lantorrent"
self.created_files = []

0 comments on commit 141e3ab

Please sign in to comment.
Something went wrong with that request. Please try again.