Code repositories
FaaSr is open-source software released under the MIT license. All of the source code is hosted on GitHub under the FaaSr organization. This page is a directory of the project's repositories, so that developers and reviewers can find the implementation behind each part of the system.
Core components
- FaaSr-Backend - the core middleware that runs inside every action container (the
FaaSr_pypackage). It contains the container entry point, the local RPC server and language client bindings, the cross-platform scheduler/dispatchers (GitHub Actions, AWS Lambda, Google Cloud, OpenWhisk, Slurm), the S3 data and logging APIs, the workflow JSON schema, and the ephemeral VM orchestration code (thevm/provider abstraction and thevm_start/vm_poll/vm_stopbuilt-in functions). - FaaSr-Docker - the Dockerfiles and GitHub Actions used to build and publish the base and platform-specific container images for each supported provider. See Building containers.
- FaaSr-workflow - the control-plane repository that users fork to manage their workflows. It holds the
FAASR REGISTER,FAASR INVOKE, and secret-sync GitHub Actions and their scripts, as well as the VM injection tool that augments workflows with VM orchestration actions. See Setting up the FaaSr-workflow repo. - FaaSr-workflow-builder - the React web application that composes and edits FaaSr-compliant workflow JSON files, deployed at faasr.io/FaaSr-workflow-builder. See Creating and editing workflows.
Examples and documentation
- FaaSr-Functions - a collection of example workflows (JSON) and R/Python functions that serve as templates, including the workflows used in the tutorial. See Example workflows and functions.
- faasr.github.io - the source for this documentation site, built with MkDocs and the Material theme.