-
Notifications
You must be signed in to change notification settings - Fork 4
Plugins
.
ATTENTION: bliss is now saga-python. Please check out the new website for the latest releases and documentation!
The plug-ins bind the SAGA Python API to specific middleware backends. The following plug-ins are available in the latest release of SAGA Python:
The Local plug-in allows to execute jobs on the local machine via 'fork'. The plug-in supports the job API. The plug-in doesn't support any custom security contexts.
URL schema to trigger the plug-in is: fork://
Example usage:
# a local job service
js = saga.job.Service("fork://localhost")
The PBS plug-in interfaces with a PBS, PBS Pro or TORQUE scheduler locally or remotely via SSH and GSISSH. The plug-in supports the job API. The plug-in supports custom security contexts of the type saga.context.SSH
.
URL schema to trigger the plug-in is: pbs+ssh://
, pbs+gsissh://
(remote) and pbs://
(local)
Example usage:
ctx = saga.Context()
ctx.type = saga.Context.SSH
ctx.userid = 'username' # like 'ssh username@host ...'
ctx.usercert = '/Users/username/.ssh/id_rsa_special' # like ssh -i ...'
session = saga.Session()
session.contexts.append(ctx)
# a pbs+ssh job service
js = saga.job.Service("pbs+ssh://alamo.futuregrid.org", session=session)
The SGE plug-in interfaces with a Sun Grid Engine (SGE) scheduler locally or remotely via SSH and GSISSH. The plug-in supports the job API. The plug-in supports custom security contexts of the type saga.context.SSH
.
URL schema to trigger the plug-in is: sge+ssh://
, sge+gsissh://
(remote) and sge://
(local)
Example usage:
# Explicit X509 context. Only necessary for non-default contexts.
ctx = saga.Context()
ctx.type = saga.Context.X509
ctx.userproxy = '/tmp/x509_up501_special'
session = saga.Session()
session.contexts.append(ctx)
# an sge+ssh job service
js = saga.job.Service("sge+gsissh://lonestar.tacc.utexas.edu", session=session)
The TORQUE/XT5TORQUE plug-in interfaces with a TORQUE scheduler locally or remotely via SSH and GSISSH. The plug-in supports the job API. The XT5TORQUE version is specifically for TORQUE schedulers running on Cray XT5 machines. The plug-in supports custom security contexts of the type saga.context.SSH
and saga.context.X509
.
URL schema to trigger the plug-in is: torque+ssh://
, torque+gsissh://
(remote) and torque://localhost
(local), and for Cray XT5 machines: xt5torque+ssh://
, xt5torque+gsissh://
(remote) and xt5torque://localhost
(local)
Example usage:
ctx = saga.Context()
ctx.type = saga.Context.SSH
ctx.userid = 'username' # like 'ssh username@host ...'
ctx.usercert = '/Users/username/.ssh/id_rsa_special' # like ssh -i ...'
session = saga.Session()
session.contexts.append(ctx)
# a job service connecting to the torque scheduler on a Cray XT5 machine
js = saga.job.Service("xt5torque+ssh://xray.futuregrid.org", session=session)
The SSH plug-in allows to submit jobs to a remote host via SSH. The plug-in supports the job API. The plug-in supports custom security contexts of the type saga.context.SSH
.
URL schema to trigger the plug-in is: ssh://
Example usage:
ctx = saga.Context()
ctx.type = saga.Context.SSH
ctx.userid = 'username' # like 'ssh username@host ...'
ctx.usercert = '/Users/username/.ssh/id_rsa_special' # like ssh -i ...'
session = saga.Session()
session.contexts.append(ctx)
# an ssh job service connecting to an EC2 instance
js = saga.job.Service("ssh://my-ec2-public-ip.amazonaws.com", session=session)
The SFTP plug-in supports file transfer to and from remote hosts via SSH/SFTP. The plug-in supports the file API. The plug-in supports custom security contexts of the type saga.context.SSH
URL schema to trigger the plug-in is: sftp://
.
Example usage:
ctx = saga.Context()
ctx.type = saga.Context.SSH
ctx.userid = 'username' # like 'ssh username@host ...'
ctx.usercert = '/Users/username/.ssh/id_rsa_special' # like ssh -i ...'
session = saga.Session()
session.contexts.append(ctx)
# an sftp remote directory service
dir = saga.file.Directory("sftp://alamo.futuregrid.org/home/username/myapp", session=session)
dir.make_dir("run_01")