Skip to main content

Python helper functions for using the UNICORE REST API

Project description

# # Python library for using the UNICORE REST API #

This library covers part of the UNICORE REST API, making common tasks like file access, job submission and management, workflow submission and management more convenient, and ingrating UNICORE features better with typical Python usage.

For the full, up-to-date documentation of the REST API, see https://sourceforge.net/p/unicore/wiki/REST_API

Development of this library was funded in part by the Human Brain Project

For more information about the Human Brain Project, see https://www.humanbrainproject.eu/

See LICENSE file for licensing information

# Getting started with pyUNICORE

Install from PyPI with

pip install -U pyunicore

Sample code to create a client for a UNICORE site

import pyunicore.client as unicore_client import json from base64 import b64encode

base_url = “https://localhost:8080/DEMO-SITE/rest/core

# authenticate with username/password token = b64encode(b”demouser:test123”).decode(“ascii”) transport = unicore_client.Transport(token, oidc=False)

client = unicore_client.Client(transport, base_url) print(json.dumps(client.properties, indent = 2))

# Running a sample job and reading result data

my_job = {‘Executable’: ‘date’}

job = client.new_job(job_description=my_job, inputs=[]) print(json.dumps(job.properties, indent = 2))

job.poll() # wait for job to finish

work_dir = job.working_dir print(json.dumps(work_dir.properties, indent = 2))

stdout = work_dir.stat(“/stdout”) print(json.dumps(stdout.properties, indent = 2))

content = stdout.raw().read() print(content)

# Connecting to a Registry and listing all registered services

import pyunicore.client as unicore_client import json, b64encode

registry_url = “https://localhosz:8080/REGISTRY/rest/registries/default_registry

# authenticate with username/password token = b64encode(b”demouser:test123”).decode(“ascii”) transport = unicore_client.Transport(token, oidc=False)

r = unicore_client.Registry(tr, registry_url) print(r.site_urls)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyunicore-0.9.6.tar.gz (26.8 kB view details)

Uploaded Source

File details

Details for the file pyunicore-0.9.6.tar.gz.

File metadata

  • Download URL: pyunicore-0.9.6.tar.gz
  • Upload date:
  • Size: 26.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/3.7.3 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.59.0 CPython/3.9.2

File hashes

Hashes for pyunicore-0.9.6.tar.gz
Algorithm Hash digest
SHA256 8592ad753de0ee85fa32582f017303fe7b0489b841a1e0e3563c4b106e118a00
MD5 ddc08e37ac4645673d3f89b468b72bb6
BLAKE2b-256 02cf84a6314005a73a09044e69fc51bb7bba415287cda309a08ab36efaf271e7

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page