Closed prajinkhadka closed 2 weeks ago
Very nice progress! I left some comments.
The important issues are:
* CLI option and documentation * Testing Node.js * Moving resource allocation to proper resource classes. * Checking the "update" of container-based function on AWS. * Regression testing
Hi, Marcin, I have reviewed the changes. Also, I performed the regression tests for both Node.js and Python. I also added the logic to Fail early if container deployment flag is set as True for other than AWS.
@coderabbitai review
[!CAUTION]
Review failed
The pull request is closed.
This pull request introduces a variety of changes across multiple files to enhance support for containerized deployment in serverless benchmarks. Key modifications include the addition of a new setup script for a Python package, updates to configuration files to reflect AWS deployment settings, and enhancements to Dockerfiles for both Python and Node.js functions. Additionally, several classes and methods across the codebase have been updated to accommodate new parameters related to container deployment, improving the functionality and flexibility of the deployment process.
File Path | Change Summary |
---|---|
benchmarks/wrappers/aws/python/setup.py |
New setup script added for Python package, specifying dependencies and package structure. |
config/example.json |
Updated deployment settings from "openwhisk" to "aws", changed runtime from "nodejs" to "python" 3.8, added "container_deployment" field. |
config/systems.json |
Added "container_deployment" key, updated deployment files for AWS Python, included new package dependency for Node.js. |
dockerfiles/aws/nodejs/Dockerfile.function |
New Dockerfile for Node.js function, includes build argument for base image and sets up function handler. |
dockerfiles/aws/python/Dockerfile.function |
New Dockerfile for Python function, includes conditional installation of dependencies based on version. |
docs/modularity.md |
Updated documentation for clarity on adding benchmarks and extending the SeBS framework. |
docs/usage.md |
Added --container-deployment flag to CLI documentation and refined local deployment instructions. |
requirements.aws.txt |
Updated boto3-stubs to include ecr support. |
requirements.txt |
Added rich package for terminal formatting. |
sebs.py |
Enhanced CLI with new --container-deployment option, updated function signatures to include new parameters. |
sebs/aws/aws.py |
Updated methods for Docker image management and Lambda function creation, added new methods for ECR interactions. |
sebs/aws/config.py |
Enhanced AWSResources class with Docker registry management methods and properties. |
sebs/azure/azure.py |
Updated methods to handle container deployments, added error handling for unsupported features. |
sebs/benchmark.py |
Added properties for managing container-related information. |
sebs/cache.py |
Updated methods to include container_uri for code package management. |
sebs/config.py |
Added method for retrieving supported container deployment options. |
sebs/experiments/config.py |
Introduced _container_deployment attribute for configuration management. |
sebs/experiments/invocation_overhead.py |
Updated before_sample method to include new parameters for function updates. |
sebs/faas/system.py |
Enhanced methods for packaging and creating functions with container deployment support. |
sebs/gcp/gcp.py |
Updated methods to accommodate container deployment parameters. |
sebs/local/local.py |
Enhanced methods to manage container deployment parameters. |
sebs/openwhisk/openwhisk.py |
Updated methods for Docker image management and function creation with container deployment parameters. |
sebs/sebs.py |
Modified get_deployment method to validate container deployment configuration. |
sebs.py
, which may interact with the new deployment configurations.🐰 In a world of clouds and code,
Where functions hop and data flowed,
We build with care, with Docker's might,
Container dreams take joyful flight!
So let us cheer, with paws so spry,
For benchmarks soar, oh me, oh my! 🐇
Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media?
Remaining issues:
Added Support for container deployment in AWS.
Summary by CodeRabbit
Release Notes
New Features
ECRContainer
class for managing Docker images in AWS Elastic Container Registry.Bug Fixes
Documentation
Chores