This repository contains the code of UNICORE sidecar InterLink plugin. It enables compute task offloading to the UNICORE interfaced HPC resources. At the backend, the plugin receives a (pod creation) request from an Interlink instance, the plugin then creates a UNICORE job containing instructions to deploy a pod as an apptainer container on a HPC system.
The requester should fetch an access token using the script from the target UNICORE site before initiating any off-loading request. Before executing the script, please update the script by providing UNICORE site's base url and valid credentials (username and password). If the UNICORE site is deployed at Forschungszentrum Juelich, JuDoor credentials are required. The instructions to create a JuDoor account can be found under the following link.
The fetched access token should be copied into a new unicoreToken
field of the yaml file.
metadata:
annotations:
unicoreToken: "eyJhbGciOiJSUzI1NiJ9.eyJzdWIiOi..."
- It is recommended to use the latest version of Python. UNICORE plugin supports Python 3.8 and newer.
- pyunicore - UNCORE python client library.
- For a detailed list of dependencies, please refer to the Python's requirements file in this repository's main folder.
Check out this git repo:
git clone https://github.com/interTwin-eu/interlink-unicore-plugin.git
Modify the config file properly and run the server by executing the following command:
cd interlink-unicore-plugin/src/
python3 handles.py --port <server_port> # default port is 8000