Python
To execute Function tasks, you need to perform additional steps before deploying them. Please refer to the following instructions to create a Function task in Python.
Task Preparation
Source Code Structure
In order to compile your source code, make sure you have the following file structure within the ❮sourceCodePath❯ folder that will be built.
📁 src └─ 📄 task.py
Supported Libraries
We support most of the Python's Standard Library. Please read about using the Python standard library on WebAssembly platforms. Additionally, we are limited by requirements for determinism. Therefore, modules for threading, multiprocessing, subprocesses, or sockets are not supported.
Truebit includes some built-in libraries for you to use in your programs. We will be adding more built-in libraries, so please keep checking this page for updates.
External files
To include your external files, you need to use the TAR utility to pack them together. In this manner files will be packaged into a single file and can also be easily referenced from your code.
Setup TAR
sudo apt install TAR Creating The TAR file
To create a single fs.tar file that includes all the folders and files you want, simply run the following command:
tar -H ustar -cvf fs.tar modulesIn this example, the tar command will generate a file called fs.tar which contains all the files found in the modules directory.
Considerations
fs.taris a reserved name for tar files in Truebit. You must always name the file in that way.The files included in the
fs.tarfile are read-only.
Input Data Files
You can use your own external data files in your function task. To include your data files, you need to use the TAR utility to pack them together and then, reference those files in your source code.
Modules
Import External Modules
To import external modules, pack them all together into an fs.tar file, then reference them in your Python code like this:
sys.path.append(os.path.abspath("modules"))
from fibonacci import fibonacci
from reverse import run_task as reverse_alphabetImport External Functions
To import external functions, pack them all together into an fs.tar file, then reference them in your Python code like this:
fibonacci = import_function_from_file('modules/fibonacci.py', 'fibonacci')
reverse_alphabet = import_function_from_file('modules/reverse.py', 'run_task')In the previous example, there's a function called fibonacci in the modules/fibonacci.py file, and another function called run_task in the modules/reverse.py file.
Import Standard
To use pure python code, just import the stardard set of libraries
import osImport Built-in
To include the built-in libraries provided by Truebit, you will need to import them in the following way
import numpy as np
import pandas as pd Last updated
Was this helpful?