JHealthCare

live infrastructure demo

idle

No infrastructure exists right now.

idle provisioning live teardown

What the button does

It builds a real Kubernetes cluster on AWS. A spot EC2 instance launches, k3s installs onto it, and a HAPI FHIR server starts against a Postgres database running inside the cluster. About four minutes from click to answering requests.

FHIR is the standard modern electronic health record systems use to talk to each other. The server you're hitting is the same open-source implementation hospitals and vendors use for integration testing, running R4 against a live database you're welcome to query.

The part worth explaining

Before each cluster is destroyed, its database is dumped to S3. The next person who presses the button gets that dump restored during boot. The patient records you see were created on infrastructure that no longer exists, and they'll outlive this cluster too.

The infrastructure is disposable. The data is not. That split sits behind any serious production system. Here it's compressed into fifteen minutes so you can watch it happen.

Every record is synthetic. Nothing here describes a real person and nothing here is HIPAA-scoped.

How it's wired

This page is served from S3 behind CloudFront. The button posts to API Gateway, which calls a Lambda that takes a lock in DynamoDB and starts a Step Functions execution. That runs CodeBuild to terraform apply, holds the window open while polling for failure, then runs CodeBuild again to dump the database and terraform destroy.

Nothing is left behind. The instance, the VPC, the security group and the IAM role are created and destroyed on every single run.

Guardrails

A public button that provisions cloud resources is a wallet with a URL. Four things stand between it and an unbounded bill:

  • One build at a time, enforced by a conditional write in DynamoDB rather than a check in application code
  • A hard daily cap that starts refusing requests once it's reached
  • Request throttling at the API gateway
  • A reaper on a five minute schedule that terminates anything past its expiry, regardless of what the pipeline believes is happening

The reaper matters most. It's the only component that doesn't trust the others.

Today

Builds run (24h)
-
Builds remaining
-
Cost per build
about 5 cents
Cost while idle
under $1 a month