321 Commits

Author SHA1 Message Date
Bert Blommers
273ca63d59 Linting 2020-11-11 15:55:37 +00:00
Matěj Cepl
5697ff87a8 Back to Black 2020-11-10 14:12:38 +01:00
Bert Blommers
032b9c4008 Tech Debt - Remove duplicate AWSError classes 2020-11-05 11:20:18 +00:00
Brian Pandola
ea19466c38
Fix missing properties when ecs:TaskDefinition created via CloudFormation (#3378)
There's a larger problem here that needs a more generalized solution,
but this solves the immediate issue with a minimum amount of code.

Closes #3171
2020-10-12 20:53:30 +01:00
Nick Stocchero
fc7f3fecb6 clean up and bring up to master 2020-09-21 17:42:44 -06:00
Nick Stocchero
4354cb06d1 remove comment 2020-09-21 17:42:44 -06:00
Nick Stocchero
8d5c70a924 different aggregation strategy 2020-09-21 17:42:44 -06:00
Nick Stocchero
d8cea0213d straighten out filter logic 2020-09-21 17:42:44 -06:00
Nick Stocchero
ceefe970bc small flake issue 2020-09-21 17:42:44 -06:00
Nick Stocchero
ff84b63484 address PR comments 2020-09-21 17:42:44 -06:00
Nick Stocchero
7bc5b5c08f Add IAM Role and Policy to Config 2020-09-21 17:42:44 -06:00
Kevin Frommelt
55b02c6ee9
Add support for Launch Templates in Auto Scaling Groups (#3236)
* Add support for Launch Templates in Auto Scaling Groups

* Use named parameters, simplify parameter validation
2020-08-26 15:15:07 +01:00
jweite
da07adae52
* Support for CloudFormation update and delete of Kinesis Streams (#3212)
* Support for CloudFormation stack resource deletion via backend resource method
  delete_from_cloudformation_json() via parse_and_delete_resource().
* Correction to the inappropriate inclusion of EndingSequenceNumber in open shards.
  This attribute should only appear in closed shards.  This regretfully prevents
  confirmation of consistent record counts after split/merge in unit tests.
* Added parameters/decorator to CloudFormationModel method declarations to calm-down Pycharm.

Co-authored-by: Joseph Weitekamp <jweite@amazon.com>
2020-08-03 16:04:05 +01:00
jweite
3342d49a43
S3 cloudformation update (#3199)
* First cut of S3 Cloudformation Update support: encryption property.

* Update type support for S3.  Abstract base class for CloudFormation-aware models, as designed by @bblommers, introduced to decentralize CloudFormation resource and name property values to model objects.

* Blackened...

* Un-renamed param in s3.models.update_from_cloudformation_json() and its call to stay compatible with other modules.

Co-authored-by: Bert Blommers <bblommers@users.noreply.github.com>
Co-authored-by: Joseph Weitekamp <jweite@amazon.com>
Co-authored-by: Bert Blommers <info@bertblommers.nl>
2020-08-01 22:43:03 +01:00
Adam Richie-Halford
9a9a1d8413
Decentralize cloudformation naming responsibilities (#3201)
* #3127 - Decentralize CF naming responsibilities

* Decentralize CloudFormation naming responsibilities

* Update URLs in cloudformation_resource_type functions

* Fix flake8 errors

* Black formatting

* Add a bunch of imports to populate CloudFormationModel.__subclasses__

* Add noqa to s3 models import statement in cloudformation/parsing.py

* Black formatting

* Remove debugging print statement

Co-authored-by: Bert Blommers <info@bertblommers.nl>
2020-08-01 15:23:36 +01:00
Waldemar Hummer
08a08b6af8
Fix SQS tag list from CloudFormation resource creation (#3197)
* fix sqs tag list from cloudformation resource creation

the method `create_from_cloudformation_json` of the Sqs resource
does not handle the difference of format of the Tags field in the
resource template and the format expected in Sqs resource class.

In cfn resource template Tags is specified as a list of dicts. But
the Sqs resource expects that the tags field be a single dict.
This behaviour causes a crash when a queue is created with tags
from `create_from_cloudformation_json` and later the list_queue_tags
is called because it tries to call `items` from `queue.tags` but
tags is actually a list of dicts.

* fix comment

* fix linter

* minor

Co-authored-by: Hudo Assenco <hudo.assenco@gmail.com>
2020-07-29 11:44:02 +01:00
Macwan Nevil
c166d97a97
Bugfix: S3 time precision issue fixed (#3182)
* Bugfix: S3 time precision issue fixed

* Bugfix: S3 time precision issue fixed

* s3 timeformat fix

* Quickfix S3 timefix
2020-07-26 16:00:15 +01:00
Bert Blommers
8ff32bf4fa Append region-info to UserAgent-header, if it already exists 2020-06-30 15:00:08 +01:00
Bert Blommers
f963d2ebaa Allow service-invocations without region (S3, e.g.) 2020-06-27 20:13:42 +01:00
Bert Blommers
389939bf8a Get region from args or kwargs 2020-06-27 19:46:26 +01:00
Bert Blommers
6ab2f58b21 Linting 2020-06-27 19:05:34 +01:00
Bert Blommers
7d43a1d23d Store Region-info in UserAgent-header 2020-06-27 15:11:41 +01:00
Gordon Cassie
b88f166099
Fix: Support streaming upload from requests. (#3062)
* Fix: Support streaming upload from requests.

* [FIX] style.

Co-authored-by: Gordon Cassie <gordon.cassie@closingfolders.com>
2020-06-11 06:50:50 +01:00
Steve Pulec
59c71760ff
Keep order in request body to ensure auth signing works. (#3024)
* Keep order in request body to ensure auth signing works.

* Lint.

* More OrderedDict to ensure data parameter order.

* Lint.

* Improve CF test assertions.

* Fix syntax error.

* Cleanup CF test.
2020-05-24 08:51:45 +01:00
zscholl
35fde06381 update last_used for access keys 2020-04-30 09:10:42 -05:00
Bert Blommers
d6d2a38c76 Fix circular import issue 2020-04-30 12:11:33 +01:00
Stijn Seghers
b8820009e8
Lazily import submodules 2020-04-28 10:40:32 +12:00
Stijn Seghers
e2af07df44
Keep pkg_resources import function-local (~0.06s) 2020-04-28 10:28:47 +12:00
Steve Pulec
ac6c550fe6
Merge pull request #2852 from bblommers/feature/mock_eb
Add mock for ElasticBean
2020-04-25 18:42:25 -05:00
Daniel Wallace
d9e2aeed58
blacken 2020-04-22 10:02:25 -05:00
Daniel Wallace
50a147592d
Make all CallbackResponse requests into a Werkzeug Request
The "request" object in CallbackResponse is the PreparedRequest send by
whatever client is used to contact the mocked moto service. This can end
up with unparsed bodies, as we added for processing presigned post
requests in #2155. This will make sure that all of the requests comming
in from mocked functions also get processed by werkzeug as if it was
running a live server.
2020-04-22 09:08:30 -05:00
Bert Blommers
888e0c31a0 Linting 2020-03-30 13:42:00 +01:00
Bert Blommers
3ece2dabff Merge remote-tracking branch 'nielslaukens/feature/mock_eb' into feature/mock_eb 2020-03-30 13:38:56 +01:00
Asher Foa
374b623e1d Fix some 'DeprecationWarning: invalid escape sequence' warnings and use str.format for string interpolation.
I am seeing a lot of deperecation warnings when I use moto for my tests (running under pytest), so I figured I'll clean up some of them.
2020-03-12 13:50:59 -07:00
Bert Blommers
47349b30df #2567 - When mocking URLs, always return the first match 2020-02-27 08:54:57 +00:00
Mike Grima
11b7be0e85 Implemented S3 Account-level public access block.
- Also added AWS Config listing and fetching support
- Also fixed Lambda test breakage
2020-02-17 15:41:27 -08:00
Fabio Dias
743dd46399 black linting 2019-12-16 21:25:20 -05:00
Fabio Dias
fd9ac4b9a5 ACCOUNT_ID moved to moto.core, MOTO_ACCOUNT_ID env var override 2019-12-16 21:05:29 -05:00
Mike Grima
84ccdbd1cd Implemented S3 Public Access Block 2019-12-12 17:45:31 -08:00
Bert Blommers
5f6e8fd6fe Merge branch 'master' into feature/2546 2019-11-22 06:22:54 +00:00
Steve Pulec
4983f6af91 Fix for updated botocore IoT requestUris. 2019-11-21 13:35:02 -05:00
Bert Blommers
1d85288244 Ensure Flask sends through custom error messages 2019-11-20 08:57:38 +00:00
Mike Grima
bd777cad44 Fix for moto not unmocking.
- Fixes #2575
- Also upgraded Travis CI to make use of Bionic instead of Xenial
- This may also address concerns raised in #1793
2019-11-18 15:28:31 -08:00
Asher Foa
96e5b1993d Run black on moto & test directories. 2019-10-31 10:36:05 -07:00
Steve Pulec
54c8a7dea1
Merge pull request #2519 from yan12125/python38
Python 3.8 support
2019-10-30 22:52:40 -05:00
Patrick Mende
5cccb03c91
Remove newlines from XML responses
This is a second attempt at resolving the issues with producing an XML consistent with what is produced from AWS (i.e., no spaces/new lines between tags). Another attempt (https://github.com/spulec/moto/pull/2205) is currently failing in tests.

This attempt uses precompiled regex patterns as class attributes of the `_TemplateEnvironmentMixin` to remove trailing spaces and newlines after a `">"`, and preceding newlines/spaces before a `"<"`. This *explicitly* wasn't done with a single regex to ensure that even things like `"...<ID>\n      12345\n    </ID>"` are properly collapsed.
2019-10-30 14:08:24 -07:00
Chih-Hsuan Yen
18173a5951
Replace # flake8: noqa with # noqa
The former syntax is actually a mis-use and rejected since Flake8 3.6
[1].

[1] https://gitlab.com/pycqa/flake8/merge_requests/219
2019-10-27 20:41:22 +08:00
gruebel
c3cb411c07 Refactor sqs.get_queue_attributes & add AttributeNames handling 2019-10-27 12:13:33 +01:00
Mike Grima
2a2c3e80f0 Adding support for querying the AWS Config resource for S3.
- Need to add support still for batch requests and batch aggregation requests in a future PR
2019-10-13 10:14:15 -07:00
Mike Grima
c4b310d7a5 Adding support for querying AWS Config for supported configurations.
At this time, only adding support for S3.
2019-10-03 11:43:56 -07:00