cctools
|
Python Client object. More...
Public Member Functions | |
__init__ (self, hostport, timeout=60, authentication=None, tickets=None, debug=False) | |
Create a new chirp client. | |
whoami (self, absolute_stop_time=None, timeout=None) | |
Returns a string with identity of the client according to the server. | |
listacl (self, path='/', absolute_stop_time=None, timeout=None) | |
Returns a string with the ACL of the given directory. | |
setacl (self, path, subject, rights, absolute_stop_time=None, timeout=None) | |
Returns a string with the ACL of the given directory. | |
resetacl (self, path, rights, absolute_stop_time=None, timeout=None) | |
Set the ACL for the given directory to be only for the rights to the calling user. | |
ls (self, path, absolute_stop_time=None, timeout=None) | |
Returns a list with the names of the files in the path. | |
stat (self, path, absolute_stop_time=None, timeout=None) | |
Returns a chirp.Stat object with information on path. | |
chmod (self, path, mode, absolute_stop_time=None, timeout=None) | |
Changes permissions on path. | |
put (self, source, destination=None, absolute_stop_time=None, timeout=None) | |
Copies local file/directory source to the chirp server as file/directory destination. | |
get (self, source, destination=None, absolute_stop_time=None, timeout=None) | |
Copies server file/directory source to the local file/directory destination. | |
rm (self, path, absolute_stop_time=None, timeout=None) | |
Removes the given file or directory from the server. | |
mkdir (self, path, mode=493, absolute_stop_time=None, timeout=None) | |
Recursively create the directories in path. | |
hash (self, path, algorithm='sha1', absolute_stop_time=None, timeout=None) | |
Computes the checksum of path. | |
job_create (self, job_description) | |
Creates a chirp job. | |
job_kill (self, *job_ids) | |
Kills the jobs identified with the different job ids. | |
job_commit (self, *job_ids) | |
Commits (starts running) the jobs identified with the different job ids. | |
job_reap (self, *job_ids) | |
Reaps the jobs identified with the different job ids. | |
job_status (self, *job_ids) | |
Obtains the current status for each job id. | |
job_wait (self, waiting_time, job_id=0) | |
Waits waiting_time seconds for the job_id to terminate. | |
Python Client object.
This class is used to create a chirp client
ndcctools.chirp.Client.__init__ | ( | self, | |
hostport, | |||
timeout = 60 , |
|||
authentication = None , |
|||
tickets = None , |
|||
debug = False |
|||
) |
Create a new chirp client.
self | Reference to the current task object. |
hostport | The host:port of the server. |
timeout | The time to wait for a server response on every request. |
authentication | A list of prefered authentications. E.g., ['tickets', 'unix'] |
tickets | A list of ticket filenames. |
debug | Generate client debug output. |
ndcctools.chirp.Client.whoami | ( | self, | |
absolute_stop_time = None , |
|||
timeout = None |
|||
) |
Returns a string with identity of the client according to the server.
self | Reference to the current task object. |
absolute_stop_time | If given, maximum number of seconds since epoch to wait for a server response. (Overrides any timeout.) |
timeout | If given, maximum number of seconds to wait for a server response. |
ndcctools.chirp.Client.listacl | ( | self, | |
path = '/' , |
|||
absolute_stop_time = None , |
|||
timeout = None |
|||
) |
Returns a string with the ACL of the given directory.
Throws an IOError on error (no such directory).
self | Reference to the current task object. |
path | Target directory. |
absolute_stop_time | If given, maximum number of seconds since epoch to wait for a server response. (Overrides any timeout.) |
timeout | If given, maximum number of seconds to wait for a server response. |
ndcctools.chirp.Client.setacl | ( | self, | |
path, | |||
subject, | |||
rights, | |||
absolute_stop_time = None , |
|||
timeout = None |
|||
) |
Returns a string with the ACL of the given directory.
Throws a GeneralError on error.
self | Reference to the current task object. |
path | Target directory. |
subject | Target subject. |
rights | Permissions to be granted. |
absolute_stop_time | If given, maximum number of seconds since epoch to wait for a server response. (Overrides any timeout.) |
timeout | If given, maximum number of seconds to wait for a server response. |
ndcctools.chirp.Client.resetacl | ( | self, | |
path, | |||
rights, | |||
absolute_stop_time = None , |
|||
timeout = None |
|||
) |
Set the ACL for the given directory to be only for the rights to the calling user.
Throws a GeneralError on error.
self | Reference to the current task object. |
path | Target directory. |
rights | Permissions to be granted. |
absolute_stop_time | If given, maximum number of seconds since epoch to wait for a server response. (Overrides any timeout.) |
timeout | If given, maximum number of seconds to wait for a server response. |
ndcctools.chirp.Client.ls | ( | self, | |
path, | |||
absolute_stop_time = None , |
|||
timeout = None |
|||
) |
Returns a list with the names of the files in the path.
Throws an IOError on error (no such directory).
self | Reference to the current task object. |
path | Target file/directory. |
absolute_stop_time | If given, maximum number of seconds since epoch to wait for a server response. (Overrides any timeout.) |
timeout | If given, maximum number of seconds to wait for a server response. |
ndcctools.chirp.Client.stat | ( | self, | |
path, | |||
absolute_stop_time = None , |
|||
timeout = None |
|||
) |
Returns a chirp.Stat object with information on path.
Throws an IOError on error (e.g., no such path or insufficient permissions).
self | Reference to the current task object. |
path | Target file/directory. |
absolute_stop_time | If given, maximum number of seconds since epoch to wait for a server response. (Overrides any timeout.) |
timeout | If given, maximum number of seconds to wait for a server response. |
ndcctools.chirp.Client.chmod | ( | self, | |
path, | |||
mode, | |||
absolute_stop_time = None , |
|||
timeout = None |
|||
) |
Changes permissions on path.
Throws a GeneralFailure on error (e.g., no such path or insufficient permissions).
self | Reference to the current task object. |
path | Target file/directory. |
mode | Desired permissions (e.g., 0755) |
absolute_stop_time | If given, maximum number of seconds since epoch to wait for a server response. (Overrides any timeout.) |
timeout | If given, maximum number of seconds to wait for a server response. |
ndcctools.chirp.Client.put | ( | self, | |
source, | |||
destination = None , |
|||
absolute_stop_time = None , |
|||
timeout = None |
|||
) |
Copies local file/directory source to the chirp server as file/directory destination.
If destination is not given, source name is used. Raises chirp.TransferFailure on error.
self | Reference to the current task object. |
source | A local file or directory. |
destination | File or directory name to use in the server (defaults to source). |
absolute_stop_time | If given, maximum number of seconds since epoch to wait for a server response. (Overrides any timeout.) |
timeout | If given, maximum number of seconds to wait for a server response. |
ndcctools.chirp.Client.get | ( | self, | |
source, | |||
destination = None , |
|||
absolute_stop_time = None , |
|||
timeout = None |
|||
) |
Copies server file/directory source to the local file/directory destination.
If destination is not given, source name is used. Raises chirp.TransferFailure on error.
self | Reference to the current task object. |
source | A server file or directory. |
destination | File or directory name to be used locally (defaults to source). |
absolute_stop_time | If given, maximum number of seconds since epoch to wait for a server response. (Overrides any timeout.) |
timeout | If given, maximum number of seconds to wait for a server response. |
ndcctools.chirp.Client.rm | ( | self, | |
path, | |||
absolute_stop_time = None , |
|||
timeout = None |
|||
) |
Removes the given file or directory from the server.
Raises OSError on error.
self | Reference to the current task object. |
path | Target file/directory. |
absolute_stop_time | If given, maximum number of seconds since epoch to wait for a server response. (Overrides any timeout.) |
timeout | If given, maximum number of seconds to wait for a server response. |
ndcctools.chirp.Client.mkdir | ( | self, | |
path, | |||
mode = 493 , |
|||
absolute_stop_time = None , |
|||
timeout = None |
|||
) |
Recursively create the directories in path.
Raises OSError on error.
self | Reference to the current task object. |
path | Target file/directory. |
mode | Unix permissions for the created directory. |
absolute_stop_time | If given, maximum number of seconds since epoch to wait for a server response. (Overrides any timeout.) |
timeout | If given, maximum number of seconds to wait for a server response. |
ndcctools.chirp.Client.hash | ( | self, | |
path, | |||
algorithm = 'sha1' , |
|||
absolute_stop_time = None , |
|||
timeout = None |
|||
) |
Computes the checksum of path.
Raises IOError on error.
self | Reference to the current task object. |
path | Target file. |
algorithm | One of 'md5' or 'sha1' (default). |
absolute_stop_time | If given, maximum number of seconds since epoch to wait for a server response. (Overrides any timeout.) |
timeout | If given, maximum number of seconds to wait for a server response. |
ndcctools.chirp.Client.job_create | ( | self, | |
job_description | |||
) |
Creates a chirp job.
See http://ccl.cse.nd.edu/software/manuals/chirp.html for details.
job_description | A dictionary with a job chirp description. |
ndcctools.chirp.Client.job_kill | ( | self, | |
* | job_ids | ||
) |
Kills the jobs identified with the different job ids.
job_ids | Job ids of the chirp jobs to be killed. |
ndcctools.chirp.Client.job_commit | ( | self, | |
* | job_ids | ||
) |
Commits (starts running) the jobs identified with the different job ids.
job_ids | Job ids of the chirp jobs to be committed. |
ndcctools.chirp.Client.job_reap | ( | self, | |
* | job_ids | ||
) |
Reaps the jobs identified with the different job ids.
job_ids | Job ids of the chirp jobs to be reaped. |
ndcctools.chirp.Client.job_status | ( | self, | |
* | job_ids | ||
) |
Obtains the current status for each job id.
The value returned is a list which contains a dictionary reference per job id.
job_ids | Job ids of the chirp jobs to be reaped. |
ndcctools.chirp.Client.job_wait | ( | self, | |
waiting_time, | |||
job_id = 0 |
|||
) |
Waits waiting_time seconds for the job_id to terminate.
Return value is the same as job_status. If the call timesout, an empty string is returned. If job_id is missing, <job_wait>
waits for any of the user's job.
waiting_time | maximum number of seconds to wait for a job to finish. |
job_id | id of the job to wait. |