0.1.0 • Published 6 years ago

@developmentseed/task-starter v0.1.0

Weekly downloads
-
License
MIT
Repository
github
Last release
6 years ago

@developmentseed/task-starter

Background

AWS Lambda functions are great but they don't fit a lot of processing and operation requirements. If your processing takes more than 5 minutes or it requires more memory and CPU provided in the Lambda environment, you must rethink where and how to deploy your code.

The ECS task-runner and task-starter solves this problem by enabling you to run an existing lambda function as an ECS task on a Fargate box. This approach requires having an existing lambda function in the first place.

Task Starter

task-starter is a lambda function that works with task-runner docker image. This lambda function receives a set of input parameters and starts an ECS task. You have to already setup the Task Runner on your aws account before you can use the task-starter.

Input Requirements

fieldtypepurpose
arnstringthe Lambda function arn
inputobjectthe input (event) to be given to the lambda function
subnetsarray of stringslist of subnets to run a Fargate instance on (this subnet must have access to internet)
securityGroupsarray of stringslist of security groups to run a Fargate instance on
clusterstringname of the cluster where the ECS task is going to be executed on
taskDefinitionstringname of an existing task definition for task-runner
roleArnstringthe IAM role arn to be attached to the ECS task

Example:

{
  "arn": "arn:aws:lambda:us-west-2:00000000000:function:myTestLambdaFunction",
  "input": {},
  "subnets": [
    "subnet-44e36e0f"
  ],
  "securityGroups": [
    "sg-baddbfcb"
  ],
  "cluster": "taskRunnerECSCluster",
  "taskDefinition": "taskRunnerTaskDefinition:1",
  "roleArn": "arn:aws:iam::00000000000:role/taskRunnerRole"
}