Skip to content

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_py package). 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 (the vm/ provider abstraction and the vm_start / vm_poll / vm_stop built-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