Exemplo n.º 1
0
from remote_run import remote_run, to_string, viz
from jetlag import Universal, RemoteJobWatcher
from knownsystems import *
import sys
from random import randint

uv = Universal()
uv.load(
    backend=backend_agave,
    notify='*****@*****.**',
    jetlag_id='rostam-sbrandt',
)

print("The complete list of valid jetlag_id's that can be used for this test:")
for sys in uv.systems():
    print(sys)
print()


def fib(n):
    if n < 2:
        return n
    else:
        return fib(n - 1) + fib(n - 2)


fibno = randint(13, 20)
print('fib(', fibno, ')=...', sep='', flush=True)

job = remote_run(uv, fib, (fibno, ), nodes=1, ppn=1)
job.wait()
Exemplo n.º 2
0
#!/usr/bin/env python3
from jetlag import Universal, pp, mk_input, pcmd, RemoteJobWatcher
from knownsystems import *

from time import sleep
import os
import html
import re

# Test creation of shelob configuration using Agave
uv = Universal()
uv.init(backend=backend_agave, notify='{NOTIFY_URL_PASSWORD}', **rostam)
os.unlink(uv.get_auth_file())
uv.init(backend=backend_agave, notify='{NOTIFY_URL_PASSWORD}', **rostam)
uv.configure_from_ssh_keys()

j1 = RemoteJobWatcher(uv, uv.hello_world_job('fork'))
print("Job was submitted")
j1.wait()
assert j1.status() == "FINISHED"
err = j1.err_output()
assert re.search(r'(?m)^This is stderr', err)
out = j1.std_output()
assert re.search(r'(?m)^This is stdout', out)

if True:
    j2 = RemoteJobWatcher(uv, uv.hello_world_job('queue'))
    print("Job was submitted")
    j2.wait()
    assert j2.status() == "FINISHED"
else:
Exemplo n.º 3
0
from jetlag import Universal, pp, mk_input, pcmd, RemoteJobWatcher
from knownsystems import *

from time import sleep
import os
import html

uv = Universal()
uv.init(backend=backend_tapis, notify='*****@*****.**', **shelob)

j1 = RemoteJobWatcher(uv, uv.hello_world_job('fork'))
print("Job was submitted")
j1.stop()
j1.wait()
assert j1.status() == "STOPPED"

print("Test passed")
exit(0)
Exemplo n.º 4
0
from jetlag import Universal, pp, mk_input, pcmd, RemoteJobWatcher
from knownsystems import *
from time import sleep
import os
import html

# Test creation of shelob configuration using Agave
uv = Universal()
uv.init(backend=backend_tapis, notify='*****@*****.**', **rostam)
uv.configure_from_ssh_keys()

j1 = RemoteJobWatcher(uv, uv.hello_world_job('fork'))
print("Job was submitted")
j1.wait()
assert j1.status() == "FINISHED"

if False:  # This does not work with Agave
    j2 = RemoteJobWatcher(uv, uv.hello_world_job('queue'))
    print("Job was submitted")
    j2.wait()
    assert j2.status() == "FINISHED"
else:
    print("Test skipped: Tapis can't queue on slurm")

print("Test passed")
exit(0)
Exemplo n.º 5
0
from gui_fun import gui_fun, settings
from jetlag import Universal

uv = Universal()

settings(uv.loadf, {"passw": "password", "utype": ["tapis", "agave"]})
r = gui_fun(uv.loadf)


def query_jetlag_id(jid):
    return jid


def set_jetlag_id(jid):
    uv.load(uv.values["backend"], uv.values["notify"], jid)
    print("jetlag id set to:", uv.values["jetlag_id"])


def on_load(_):
    jetlag_id = uv.values["jetlag_id"]
    if jetlag_id is None or jetlag_id.strip() in ["unknown", "none", ""]:
        jids = uv.jetlag_ids()
        if len(jids) == 0:
            print(
                "You are not authorized to use JetLag. Contact [email protected]"
            )
        else:
            print("You have not supplied a JetLag id... querying")
            settings(query_jetlag_id, {"jid": jids})
            res = gui_fun(query_jetlag_id)
            res.add_listener(set_jetlag_id)
Exemplo n.º 6
0
from jetlag import Universal, pp, mk_input, pcmd, RemoteJobWatcher
from knownsystems import *
import pprint
pp = pprint.PrettyPrinter(indent=4)

from time import sleep
import os
import html

# Test creation of shelob configuration using Agave
uv = Universal()
uv.init(
    backend=backend_tapis,
    #notify = "https://www.cct.lsu.edu/~sbrandt/pushbullet.php?key={PBTOK_PASSWORD}&status=${JOB_STATUS}:${JOB_ID}",
    notify='*****@*****.**',
    **shelob)
uv.configure_from_ssh_keys()

j1 = RemoteJobWatcher(uv, uv.hello_world_job('fork'))
print("Job was submitted")
j1.wait()
assert j1.status() == "FINISHED"

j2 = RemoteJobWatcher(uv, uv.hello_world_job('queue'))
print("Job was submitted")
j2.wait()
if j2.status() != "FINISHED":
    pp.pprint(j2.full_status())
    assert False

print("Test passed")
Exemplo n.º 7
0
from jetlag import Universal, pp, mk_input, pcmd
from time import sleep
import os
import html
from knownsystems import *

if False:
    uv = Universal()
    uv.init(backend=backend_agave, notify='*****@*****.**', **shelob)
    uv.configure_from_ssh_keys()

# Check configuration...
uv = Universal()
uv.load(backend_agave, '*****@*****.**', 'shelob')
uv.check_values(shelob)

mm = uv.get_meta('system-config-sbrandt-shelob')
pp.pprint(mm)

uv = Universal()
uv.load(backend_agave, '*****@*****.**', 'rostam')
uv.check_values(rostam)

uv = Universal()
uv.load(backend_tapis, '*****@*****.**', 'shelob')
uv.check_values(shelob)

uv = Universal()
uv.load(backend_tapis, '*****@*****.**', 'rostam')
uv.check_values(rostam)