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 integrating 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.8.tar.gz (30.3 kB view details)

Uploaded Source

File details

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

File metadata

  • Download URL: pyunicore-0.9.8.tar.gz
  • Upload date:
  • Size: 30.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.3 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.0 CPython/3.9.6

File hashes

Hashes for pyunicore-0.9.8.tar.gz
Algorithm Hash digest
SHA256 73a7cf31df33d4c40b7bd9bb94d6fb6634a12df7d820bf614ae66d159cd61a05
MD5 7962d581647009c0a51da4c5e40b89ea
BLAKE2b-256 f52ec84e746ad86a0bb333c2d3e121a35bd5f5da8282f1e8cff9ce7cf70ce44f

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