Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(new): Added AWS Lambda module #655

Merged
merged 1 commit into from
Jul 31, 2024

Conversation

Tranquility2
Copy link
Contributor

As part of the effort described, detailed and presented on #559
This is the 4th (and final in this track) PR that should provide support for AWS Lambda containers.

This module will add the ability to test and run Amazon Lambdas (using the built-in runtime interface emulator)
For example:

from testcontainers.aws import AWSLambdaContainer
from testcontainers.core.waiting_utils import wait_for_logs
from testcontainers.core.image import DockerImage

with DockerImage(path="./modules/aws/tests/lambda_sample", tag="test-lambda:latest") as image:
    with AWSLambdaContainer(image=image, port=8080) as func:
        response = func.send_request(data={'payload': 'some data'})
        assert response.status_code == 200
        assert "Hello from AWS Lambda using Python" in response.json()
        delay = wait_for_logs(func, "START RequestId:")

This can (and probably will) be used with the provided LocalStackContainer to help simulate more advance AWS cases.


Based on the work done on:

Expended from issue #83

Copy link

codecov bot commented Jul 26, 2024

Codecov Report

All modified and coverable lines are covered by tests ✅

Please upload report for BASE (main@068c431). Learn more about missing BASE report.

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #655   +/-   ##
=======================================
  Coverage        ?   77.59%           
=======================================
  Files           ?       12           
  Lines           ?      598           
  Branches        ?       89           
=======================================
  Hits            ?      464           
  Misses          ?      108           
  Partials        ?       26           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@alexanderankin alexanderankin merged commit 9161cb6 into testcontainers:main Jul 31, 2024
15 checks passed
alexanderankin pushed a commit that referenced this pull request Aug 14, 2024
🤖 I have created a release *beep* *boop*
---


##
[4.8.0](testcontainers-v4.7.2...testcontainers-v4.8.0)
(2024-08-14)


### Features

* Adding support for Cassandra and Scylla
([#167](#167))
([2d8bc11](2d8bc11))
* **compose:** ability to retain volumes when using context manager
([#659](#659))
([e1e3d13](e1e3d13))
* **compose:** add ability to get docker compose config
([#669](#669))
([8c28a86](8c28a86))
* **core:** add ability to do OR & AND for waitforlogs
([#661](#661))
([b1453e8](b1453e8))
* **new:** Added AWS Lambda module
([#655](#655))
([9161cb6](9161cb6))
* refactor network setup
([#678](#678))
([d5de0aa](d5de0aa))


### Bug Fixes

* Add Db2 support
([#673](#673))
([1e43923](1e43923))
* bring back cassandra driver bc otherwise how does it get installed for
cassandra module test run?
([#680](#680))
([71c3a1a](71c3a1a))
* **rabbitmq:** add `vhost` as parameter to RabbitMqContainer
([#656](#656))
([fa2081a](fa2081a))
* **selenium:** add Arg/Options to api of selenium container
([#654](#654))
([e02c1b3](e02c1b3)),
closes
[#652](#652)

---
This PR was generated with [Release
Please](/~https://github.com/googleapis/release-please). See
[documentation](/~https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants