Skip to content

FaaSr/FaaSr-Backend

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

212 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

What is FaaSr

FaaSr is a serverless middleware that abstracts heterogeneous serverless workflow deployment as directed, acyclic execution graphs. With FaaSr, the idiosyncrasies of different serverless platforms are made transparent, making it easy to scale or migrate workflows without refactoring. Additionally, because workflows are not limited to a single platform, functions can be deployed to the platforms best suited to execute them. Importantly, FaaSr preserves the serverless abstraction by not relying on any centralized server.

At the moment, FaaSr supports GitHub Action, AWS Lambda, GCP Serverless, OpenWhisk, and SLURM, and functions can be written in Python, R, or Julia (soon). No changes to code are needed to incorporate a function into a FaaSr workflow, unless the user wishes to use the FaaSr S3 API for persistent storage.

Each workflow function is executed inside of a FaaSr container on the user's platform of choice. Workflows leverage S3 for persistent data-storage, with a built-in API for performing I/O within user functions. This package provides backend tooling for DAG validation, compute server/data store checks, user package installation, function fetching and execution, workflow orchestration, and structured S3 logging.

See here for the complete documentation.

Using

To use FaaSr, you simply need to create a workflow JSON (see below) and host your functions on GitHub. Then, you can register, invoke, and set triggers for your workflows using FaaSr's UI.

Workflow builder

The GUI for creating a workflow can be found here: FaaSr-JSON-Builder

Prebuilt containers

GitHub Actions

ghcr.io/faasr/github-actions-python:latest (Python)
ghcr.io/faasr/github-actions-r:latest (R)

OpenWhisk

faasr/openwhisk-python:latest (Python)
faasr/openwhisk-r:latest (R)

Google Cloud

faasr/gcp-python:latest (Python)
faasr/gcp-r:latest (R)

Slurm

faasr/slurm-python:latest (Python)
faasr/slurm-r:latest (R)

AWS Lambda

Email cutlern [at] oregonstate.edu or build your own

See FaaSr-Docker for building your own containers

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors