OpenFaaS on AWS Fargate. Open source Functions as a Service without any infrastructure to manage
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github
aws
docs
examples
handlers
scripts
system
types
vendor
version
.editorconfig
.gitignore
.goreleaser.yml
.travis.yml
CONTRIBUTING.md
Dockerfile
Gopkg.lock
Gopkg.toml
LICENSE
MAINTAINERS
Makefile
README.md
docker-compose.yml
main.go

README.md

Mascot

faas-fargate

Run OpenFaaS on AWS serverless with Fargate.

Release Software License Travis Powered By: GoReleaser


Installation

Terraform deployment

Easy to get started: A terraform module has been developed to build out a standard deployment of faas-fargate on fargate. See: https://github.com/ewilde/terraform-aws-openfaas-fargate. This module deploys the whole stack on Fargate including openfaas gateway, nats and sets up default security setting etc...

Manually

  1. Use the published docker image
  2. Download from the releases tab

Configuration

All configuration is managed using environment variables

Option Usage Default Required
subnet_ids Comma separated list of subnet ids used to place function subnets from default vpc no
security_group_id Id of the security group to assign functions. If using terraform-aws-openfaas-fargate this is the output variable service_security_group no
cluster_name Name of the AWS ECS cluster. openfaas no
assign_public_ip Whether or not to associate a public ip address with your function. DISABLED no
enable_function_readiness_probe Boolean - enable a readiness probe to test functions. true no
write_timeout HTTP timeout for writing a response body from your function (in seconds). 8 no
read_timeout HTTP timeout for reading the payload from the client caller (in seconds). 8 no
image_pull_policy Image pull policy for deployed functions (Always, IfNotPresent, Never) Always no
LOG_LEVEL Logging level either: trace, debug, info, warn, error, fatal, panic. info no
AWS_DEFAULT_REGION AWS region faas-fargate is running in. us-east-1 no

Overview

diagram of the openfaas on fargate architecture

Contributions

We welcome contributions! Please refer to our contributing guidelines for further information.

Releasing

Releases are made using goreleaser and use semver

Example release

Step 1 tag the release

git tag v0.5.7 -m "feat: Adds verify_ssl support to environment resource"
git push origin v0.5.7

Step 2 wait for travis build to complete

Travis will:

  1. build the release
  2. run tests
  3. push to docker
  4. create a github release on the releases tab