Serverless status page served from AWS S3 generated by sourcegraph/checkup running in AWS Lambda
terraform apply, some dependencies need to be manually prepared.
Checkup static files and configuration
Checkup's UI is comprised of the static files inside it's
directory. This repository includes Checkup as a submodule, so it's enough to
ensure you clone and initialise submodules:
git clone --recurse-submodules https://github.com/yi-jiayu/status.git
If you have already cloned the repository, you can initialise the submodules with:
git submodule update --init
The Checkup binary needs to be built as well.
Since our executable will be run in Lambda, we will build it for Amazon Linux
GOOS=linux GOARCH=amd64. We will also use
CGO_ENABLED=0 because we are
not using SQLite or other cgo dependencies.
(cd checkup/cmd/checkup && CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build) mkdir -p layer/bin cp checkup/cmd/checkup/checkup layer/bin/
The following variables can be set:
bucket(required): Name of the S3 bucket to be created for storing checks.
ap-southeast-1): AWS region to create infrastructure in.
5 minutes): Interval between checks, specified as a CloudWatch Rate Expression.
Create a file
terraform.tfvars to specify these variables with the following
bucket = "bucket-name" aws_region = "ap-southeast-1" checkup_interval = "5 minutes"
terraform init followed by
terraform apply. The URL of your
status page will be output after the apply completes.