[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[GNUnet-SVN] r27394 - gnunet-planetlab/gplmt
From: |
gnunet |
Subject: |
[GNUnet-SVN] r27394 - gnunet-planetlab/gplmt |
Date: |
Fri, 7 Jun 2013 13:26:51 +0200 |
Author: otarabai
Date: 2013-06-07 13:26:51 +0200 (Fri, 07 Jun 2013)
New Revision: 27394
Modified:
gnunet-planetlab/gplmt/README
Log:
updated gplmt readme
Modified: gnunet-planetlab/gplmt/README
===================================================================
--- gnunet-planetlab/gplmt/README 2013-06-07 11:07:45 UTC (rev 27393)
+++ gnunet-planetlab/gplmt/README 2013-06-07 11:26:51 UTC (rev 27394)
@@ -5,8 +5,8 @@
===============
GNUnet is peer-to-peer framework focusing on security. GNUnet use the
-PlanetLab testbed for largescale testing. We use gplmt to deploy and
-manage GNUnet and administer. You can use gplmt to perform maintenance
+PlanetLab testbed for largescale testing. We use gplmt to deploy,
+manage and administer GNUnet. You can use gplmt to perform maintenance
or adminitrative tasks on a large number of hosts in parallel.
Additional information and documentation about gplmt can be found at
@@ -100,11 +100,28 @@
Usage
===============
-To run run gplmt you have need to specify a configuration file a task file
-containing the tasks to perform.
+To run gplmt you need to specify at least a configuration file to perform:
+./gplmt.py -c <configuration>
+
+If a configuration file is not passed to gplmt, it will try to use
+~/.gplmt/gplmt.conf instead.
+
+The command(s) to run can be specified in different ways:
+
+Single command:
+
+./gplmt.py -c <configuration> -C <command>
+
+Tasklist file specified in configuration file:
+
+tasks = contrib/tasks.xml
+
+Tasklist file passed as argument
+
./gplmt.py -c <configuration> -t <tasks>
+
The hosts to use can be specified in different ways:
Single host
@@ -141,32 +158,65 @@
Here an example for an configuration file:
+[gplmt]
+# The file containing the list of hosts
+nodes = contrib/test_node.nodes
+# Which notification mechanism to use:
+# simple: print messages to stdout
+# result: result summary after all threads finish
+notification = result
+# The file containing the tasks to perform
+tasks = contrib/tasklists/check_node.xml
+
[planetlab]
-slice = tum_dht_testing
-nodes = contrib/current.nodes
-tasks = contrib/tasks.xml
+# The name of the respective planetlab slice
+slice = tumple_gnunet
+# Configuration for Planetlab API
+# Use PlanetLab nodes instead of nodes file
+# use_pl_nodes = yes
+# PlanetLab Europe
+api_url = https://www.planet-lab.eu/PLCAPI/
+# Planetlab
+#api_url = https://www.planet-lab.org/PLCAPI/
-A configuration file specifies the following options:
+# Planetlab username
+username = <pl_username>
+# Planetlab password
+password = <pl_pw>
-slice:
-The name of the respective planetlab slice
+[ssh]
+# Order of ssh authentication:
+#
+# The ssh_keyfile_filename passed in (if any)
+# Any key we can find through an SSH agent
+# Any "id_rsa" or "id_dsa" key discoverable in ~/.ssh/
+# Plain password auth, if a ssh_password was given
+ssh_keyfile = <keyfile>
+ssh_password = <password>
+# protocoll for put get operations (Planetlab does not support SFTP)
+ssh_transfer = scp
+#ssh_transfer = sftp
+# Use system's SSH "known hosts" file
+ssh_use_known_hosts = yes
+# Add node hostkeys automatically
+add_unkown_hostkeys = yes
-nodes:
-The file containing the list of hosts
-tasks:
-The file containing the tasks to perform
-
Nodes file
===============
A node file contains the list of the hosts where the tasks should be
-performed on. The structure is simple, each line contains a hostname
+performed on.
+GPLMT supports the following formats for nodes:
-Example:
+host1.example.com
+host2.example.com:222
address@hidden
address@hidden:222
+user:address@hidden:222
-dummy1.de
-dummy2.org
+In case a username and/or password is specified for a given node,it will
+override any credentials specified in the configuration file for this node.
The Tasklist
===============
@@ -174,33 +224,34 @@
A tasklist is the specification which tasks should be performed in
which order. The task list is written in XML. The basic element is the
root <tasklist> containing the tasks to execute. The tasks are
-sequentially executed. A task is defined using the <task> element.
+sequentially executed. A task is defined as:
-A ta
+<run> element: for running a command and checking the output
+<get> element: for copying a file from remote to local
+<put> element: for copying a file from local to remote
+Tasks can also be enclosed in a <sequence> element.
+
Here we have an example a tasklist first obtaining the current date and
-and the listing the contents of the tmp directory:
+and then copying a file to the remote host
-<?xml version="1.0" encoding="UTF-8"?>
-<tasklist xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="tasklist_schema.xsd">
- <task>
- <id>0</id>
- <name>get date</name>
- <type>run</type>
- <command>date</command>
+<?xml version="1.0" encoding="UTF-8"?>
+<tasklist name="Deploy file"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="../tasklist_schema.xsd">
+
+ <run id="0" name="check peer">
+ <command>sudo date</command>
<arguments></arguments>
+ <timeout>10</timeout>
<expected_return_code>0</expected_return_code>
<expected_output></expected_output>
- <stop_on_fail>0</stop_on_fail>
- </task>
- <task>
- <id>1</id>
- <name>list tmp</name>
- <type>run</type>
- <command>ls /tmp</command>
- <arguments></arguments>
- <expected_return_code>0</expected_return_code>
- <expected_output></expected_output>
- <stop_on_fail>0</stop_on_fail>
- </task>
+ <stop_on_fail>true</stop_on_fail>
+ </run>
+
+ <sequence enabled="true">
+ <put id="1" name="put gnunet.conf">
+ <source>contrib/gnunet.conf</source>
+ <destination>/home/gnunet.conf</destination>
+ <stop_on_fail>true</stop_on_fail>
+ </put>
+ </sequence>
</tasklist>
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [GNUnet-SVN] r27394 - gnunet-planetlab/gplmt,
gnunet <=