AWS Batch Support
- Dominant language
- Python
- Stars
- 11.1k
- Forks
- 1k
- Avg merge
- 1d 22h
- Merged PRs (30d)
- 2
Description
One of the ways I would like to use chalice is for longer running serverless computations. This fits quite nicely into AWS Batch when your computations aren't splitable through a chain of writes and event triggered Lambdas.
This could be done by creating an interface to Batch that mimics the Lambda interface, but consequentially would not be able to return a response. This would probably involve creating a number of boilerplate Lambdas that trigger and pass on parameters to the Batch job and in the case of HTTP, responds to callers with a 201 response once the job has been scheduled.
Additionally, a Docker container would have to be referenced or built, as that is a requirement of AWS Batch. In order to make the interface as seamless as possible I would favour building an image and uploading it to ECR. I also believe the idea to bundle chalicelib (and potentially other directories) as layers in #1001 would complement this very nicely as it would enable larger deployments to Batch (through adding files to the Docker image) while preserving the ability to deploy the same content to Lambdas (through layers).
I am majorly splitballing in this post, so any corrections or ideas to refine this would be appreciated as I think this would be an amazing feature!
Contributor guide
Research direction
The issue names no files, tests, or entry points. Start by reviewing Chalice's existing Lambda deployment flow and the AWS Batch, Docker, and ECR requirements; done would require an agreed interface and deployment design.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- aws, docker, python
- Domain
- cloud
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100