#aws-lambda #aws-sdk #fargate #sdk #aws-fargate

zeroscaler-boot-fargate

A library to boot a Fargate task using AWS SDK for Rust

2 releases

new 0.1.1 May 23, 2025
0.1.0 May 16, 2025

#30 in #aws-lambda

Download history 145/week @ 2025-05-14

145 downloads per month

MPL-2.0 license

29KB
200 lines

Zeroscaler CDK TypeScript Construct Library project

npm version TypeScript AWS CDK PRs Welcome License: MPL 2.0

Construct (Zeroscaler) which contains and deploys a lambda that boots up your Fargate application when there is an incoming request. It also monitors

The construct defines an interface (ZeroscalerProps) to configure the visibility timeout of the queue.

Useful commands

  • npm run build compile typescript to js
  • npm run watch watch for changes and compile
  • npm run test perform the jest unit tests

Diagram of the Construct

flowchart TD
    A["Client"] L_A_B_0@-- HTTP Request --> B["Zeroscaler"]
    B -. Register Target .-> C["ELB Target Group"]
    B L_B_A_0@-- Serve HTML with refresh --> A
    C -- Health Check --> D["ECS Fargate"]
    D -- Boot --> E["Your Fargate Application"]
    A L_A_E_0@-- Refresh when booted --> E
    E L_E_A_0@-- Response --> A
    linkStyle 0 stroke:#00C853,fill:none
    linkStyle 1 stroke:#AA00FF,fill:none
    linkStyle 2 stroke:#00C853,fill:none
    linkStyle 3 stroke:#AA00FF,fill:none
    linkStyle 4 stroke:#AA00FF,fill:none
    linkStyle 5 stroke:#2962FF,fill:none
    linkStyle 6 stroke:#2962FF,fill:none
    L_A_B_0@{ animation: fast } 
    L_B_A_0@{ animation: fast } 
    L_A_E_0@{ animation: fast } 
    L_E_A_0@{ animation: fast }

Installation

npm install @zeroscaler/zeroscaler-cdk

Usage

import * as cdk from 'aws-cdk-lib';
import { Construct } from 'constructs';
import { ZeroScaler } from '@zeroscaler/zeroscaler-cdk';

new Zeroscaler(stack, 'MyZeroscaler', {
    targetGroupArn: 'arn:aws:elasticloadbalancing:...',
    fargateTaskArn: 'arn:aws:ecs:...',
    // Optionally override vpc or cluster
    });

License

MPL-2.0

Dependencies

~16–24MB
~323K SLoC