When running alone as pid 1 in a container, most signals that would
cause the process to exit by default, are instead ignored by default.
The container runtime will send SIGTERM, wait 10 seconds, then send
SIGKILL, which will work, but moto.server can exit much faster if
it has an explicit SIGTERM handler.
* First failing test, and enough framework to run it.
* Rudimentary passing test.
* Sagemaker Notebook Support, take-1: create, describe, start, stop, delete.
* Added list_tags.
* Merged in model support from https://github.com/porthunt/moto/tree/sagemaker-support.
* Re-org'd
* Fixed up describe_model exception when no matching model.
* Segregated tests by Sagemaker entity. Model arn check by regex..
* Python2 compabitility changes.
* Added sagemaker to list of known backends. Corrected urls.
* Added sagemaker special case to moto.server.infer_service_region_host due to irregular url format (use of 'api' subdomain) to support server mode.
* Changes for PR 3105 comments of July 10, 2020
* PR3105 July 10, 2020, 8:55 AM EDT comment: dropped unnecessary re-addition of arn when formulating model list response.
* PR 3105 July 15, 2020 9:10 AM EDT Comment: clean-up SageMakerModelBackend.describe_models logic for finding the model in the dict.
* Optimized imports
Co-authored-by: Joseph Weitekamp <jweite@amazon.com>
Certain AWS requests are unsigned. Moto in standalone server mode
implements an heuristic to deduce the endpoint and region based on the
X-Amz-Target HTTP header. This commit extends this concept to add
additional endpoints that used unsigned requests at times.
* updates
- support lambda messages from SNS
- run lambda in docker container
* decode output
* populate timeout
* simplify
* whoops
* skeletons of cloudwatchlogs
* impl filter log streams
* fix logging
* PEP fixes
* PEP fixes
* fix reset
* fix reset
* add new endpoint
* fix region name
* add docker
* try to fix tests
* try to fix travis issue with boto
* fix escaping in urls
* fix environment variables
* fix PEP
* more pep
* switch back to precise
* another fix attempt
* fix typo
* fix lambda invoke
* fix more unittests
* work on getting this to work in new scheme
* fix py2
* fix error
* fix tests when running in server mode
* more lambda fixes
* try running with latest docker
adapted from aiodocker
* switch to docker python client
* pep fixes
* switch to docker volume
* fix unittest
* fix invoke from sns
* fix zip2tar
* add hack impl for get_function with zip
* try fix
* fix for py < 3.6
* add volume refcount
* try to fix travis
* docker test
* fix yaml
* try fix
* update endpoints
* fix
* another attempt
* try again
* fix recursive import
* refactor fix
* revert changes with better fix
* more reverts
* wait for service to come up
* add back detached mode
* sleep and add another exception type
* put this back for logging
* put back with note
* whoops :)
* docker in docker!
* fix invalid url
* hopefully last fix!
* fix lambda regions
* fix protocol
* travis!!!!
* just run lambda test for now
* use one print
* fix escaping
* another attempt
* yet another
* re-enable all tests
* fixes
* fix for py2
* revert change
* fix for py2.7
* fix output ordering
* remove this given there's a new unittest that covers it
* changes based on review
- add skeleton logs test file
- switch to docker image that matches test env
- fix mock_logs import
* add readme entry