예제 #1
0
        exit(12)
    else:
        if isinstance(cwlContent['baseCommand'], list):
            script = ' '.join(cwlContent['baseCommand'])
        else:
            script = cwlContent['baseCommand']
else:
    exit(11)

if (imountPoint == '/') or (omountPoint == '/'):
    exit(13)

if workingDir == '':
    workingDir = '/'

uf.imageStore(softName, softVersion, image, script, user, visibility,
              workingDir, imountPoint, omountPoint, description, cwlPath,
              biotools, doiFile, original, docker_or_local, covid19,
              instructions, gpu)

if 'inputs' not in cwlContent:
    cwlContent['inputs'] = []

if isinstance(cwlContent['inputs'], dict):
    exit_value = uf.inputStoreDict(softName, softVersion, cwlContent['inputs'])
elif isinstance(cwlContent['inputs'], list):
    exit_value = uf.inputStoreList(softName, softVersion, cwlContent['inputs'])
else:
    exit_value = 100
exit(exit_value)
예제 #2
0
    uniqid = str(uniqid)
    sql = "INSERT INTO operation_locks(id,operation) VALUES ('" + uniqid + "','image_upload')"
    cur.execute(sql)
    conn.commit()

    command = [
        'docker-tar-push', 'https://' + registry, imagePath,
        regAuth['username'], regAuth['password']
    ]
    try:
        out = subprocess.check_output(command, stderr=subprocess.STDOUT)
        print(out)
    except subprocess.CalledProcessError as exc:
        print(exc.output)
        exit(8)

    sql = "DELETE FROM operation_locks WHERE id='" + uniqid + "'"
    cur.execute(sql)
    conn.commit()

uf.imageStore(softName, softVersion, imageFull, script, user, visibility,
              workingDir, imountPoint, omountPoint, description, cwlPath,
              biotools, doiFile, mpi, original, dockerHub, covid19,
              instructions)

if 'inputs' not in cwlContent:
    cwlContent['inputs'] = []

exit_value = uf.inputStore(softName, softVersion, cwlContent['inputs'])
exit(exit_value)