Commit Graph

3905 Commits

Author SHA1 Message Date
Anton Grübel
fe9f1dfe14
Add tag & untag user (#3638)
* Add iam.tag_user

* Add iam.untag_user

* Fix Python2 error
2021-02-01 11:37:54 +00:00
aantillonl
e9dc5edf7f
Update SNS get_endpoint_attributes response for Not Found endpoints (#3637)
The response returned for sns.get_endpoint_attributes was not in
sync with the actual response from boto.

Co-authored-by: Antillon, Alejandro <alejandro.antillon@f-secure.com>
2021-01-31 12:29:10 +00:00
Brian Pandola
cd044ef00b
Remove redundant test code (#3640)
These tests, when run, do not execute any `moto` code. They fail the
parameter validation check in `botocore`, which raises an exception
before ever sending a request.  These tests do not cover or verify
any `moto` behavior and have been removed.
2021-01-31 12:21:24 +00:00
Brian Pandola
779d18e00c
Fix: Golang aws-sdk fails to parse elbv2:CreateLoadBalancer response (#3639)
The `botocore` response parsers are forgiving when it comes to timestamps,
but a real AWS backend does return time zone details for this attribute.

Verified failure/fix using the Go repo included in the issue report.

Fixes #3516
2021-01-31 11:39:11 +00:00
Brian Pandola
1037929bf8
Add arns to iot responses (#3634)
Closes #3623
Supersedes #2974
2021-01-31 11:02:08 +00:00
William Richard
5c4b68c5ea
Add support for the force argument for ecs.delete_service (#3631)
This argument allows you to delete a service even when its DesiredCount is non-zero.

https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/ecs.html#ECS.Client.delete_service
2021-01-31 10:09:52 +00:00
Brian Pandola
f4b81e69b8
Address pytest warnings (#3629)
* Address `boto` deprecation warnings

This commit eliminates the following warning:

../boto/ec2/connection.py:582:
  PendingDeprecationWarning: The current get_all_instances implementation will be replaced with get_all_reservations.

`boto` isn't likely to ever make good on this warning, but doing the replacement will
declutter the `moto` test output.

* Remove `invoke_lambda` tracebacks from unit test logging

If an exception is encountered, the details are returned in the response payload.
Printing the traceback was just adding noise to the pytest output.

* Use known AMIs in unit tests

This commit eliminates the following warning in the pytest output:

`PendingDeprecationWarning: Could not find AMI with image-id:ami-123456, in the near future this will cause an error.`

Known, pre-loaded AMI image ids are used instead of random ids that don't actually
exist in the moto backend.  The integrity of the tests is unaffected by this change.

A test has been added to provide explicit coverage of the PendingDeprecationWarning
raised when an invalid AMI image id is passed to moto.
2021-01-29 11:31:56 +00:00
Brian Pandola
cd25ab7a16
Fix: broken build with release of botocore 1.19.62 (#3628)
The latest release of `botocore` (1.19.62) makes changes to the parameter
validation code, which for some reason was also covered by a couple of
`moto` tests.

These tests, when run, do not execute any `moto` code.  They fail the
parameter validation check in `botocore`, which raises an exception
before ever sending a request.  These tests do not cover or verify
any `moto` behavior and have been removed.

Ref: ff8ae76ecc

Closes #3627
2021-01-29 09:06:25 +00:00
Anton Grübel
199da2220b
Add EventBridge Archive CRUD endpoints (#3617)
* Add events.create_archive

* Add events.describe_archive

* Add events.list_archives

* Add events.update_archive

* Add events.delete_archive

* Add actual archive functionality

* Fix test

* Fix PR issues
2021-01-28 10:47:53 +00:00
Brian Pandola
9e1fcac9d4
Use known AMI in internal tests (#3620)
Moto's implementation of autoscaling:CreateLaunchConfiguration is a little too loose,
allowing the ImageId parameter to be omitted and defaulting it to None, which results
in dozens of deprecation warnings:

`PendingDeprecationWarning: Could not find AMI with image-id:ami-123456, in the near future this will cause an error.`

This commit refactors calls to CreateLaunchConfiguration to explicitly pass in a known
AMI ImageId in order to avoid these warnings.

The integrity of the tests is unaffected by this change.
2021-01-27 19:49:33 +00:00
usmangani1
651998853b
Fix:SNS Create FIFO Topic (#3533)
* Fix:SNS Create FIFO Topic

* Added more tests

* change regular expression and added tests

* Handling NPE

Co-authored-by: usmanokc <usman@okcredit.in>
2021-01-26 15:04:52 +00:00
Brian Pandola
98d79dca97
Address boto deprecation warnings (#3616)
This commit eliminates the following warning (of which there are currently dozens):

../boto/ec2/connection.py:582:
  PendingDeprecationWarning: The current get_all_instances implementation will be replaced with get_all_reservations.

`boto` isn't likely to ever make good on this warning, but doing the replacement will
declutter the `moto` test output.
2021-01-26 14:07:19 +00:00
Laurie O
ddd3c0edc4
Assume synchronous Lambda invocation by default (#3615)
* Assume synchronous Lambda invocation by default

* Support Python 2 with dict-unpacking
2021-01-26 13:28:01 +00:00
Bert Blommers
8591eda9d6
Introduce Github Actions to replace TravisCI (#3610) 2021-01-26 12:37:03 +00:00
Andrea Amorosi
5a41866f71
Added redshift.get_cluster_credentials (#3611)
* Added redshift.get_cluster_credentials

* Marked endpoint in list

* Removed f string from tests

* Python 2.7 compat changes

* Fixed parameter retrieval

* Formatting

* Removed try/catch in favor of if

* Changed to existing random_string util

Co-authored-by: Andrea Amorosi <aamorosi@amazon.es>
2021-01-25 13:19:50 +00:00
Brian Pandola
38124ab1c9
Fix ec2 filter by empty tag value (#3605)
* Fix ec2 filter by empty tag value

Return `None` instead of an empty string when the tag key does not exist
and replace the falsy check with a more explicit `is None`, which allows
empty string values to correctly pass through the filter comparator.

Behavior confirmed against a real AWS backend.

Closes #3603

* Make test case more explicit

Test case now pulled directly from the issue report (#3603).

Co-authored-by: Bert Blommers <bblommers@users.noreply.github.com>
2021-01-24 12:00:25 +00:00
Brian Pandola
cb03223c9b
Add TagSpecification support to ec2:CreateImage (#3604)
* Bump `botocore` to minimum version that supports TagSpecifications for this action.
* Add test coverage.

Closes #3602
2021-01-23 12:57:34 +00:00
Jordan Dimov
f11e3183bb
Implementation of core AWS Media Live endpoins (#3428)
* Initial attempt to mock AWS Media Live create_channel endpoint. Test fails.

* Completes basic implementation of Media Live create_channel endpoint

* Completes basic implementation of Media Live list_channels endpoint

* Adds skaffolds for describe_channel and delete_channel

* Adds unit test for delete_channel

* Adds unit test for describe_channel

* Reduces repetitive code by introducing a Channel model

* Implements MediaLive start_channel and stop_channel endpoints

* Fixes lack of support for the dash character in resource ARNs

* Implements MediaLive update_channel endpoint.

* Implements MediaLive create_input endpoint (and Input model).

* Implements MediaLive describe_input endpoint.

* Implements MediaLive list_inputs endpoint.

* Implements MediaLive update_input endpoint.

* Addse server tests for MediaLive

* Adds further url patterns for medialive

* Fixes url patterns

* Fixes url patterns
2021-01-19 16:11:39 +00:00
Macwan Nevil
02ac5ca111
added sse support for s3 (#3592)
* added sse support for s3

* lint fixed for py37
2021-01-18 18:17:13 +00:00
Erez Freiberger
9784e1b487
adding layers support for lambda backend (#3563)
* adding layers support for lambda backend

* improving lambda layer tests

* adding lambda list_layers and fixing tests

* make format
2021-01-17 15:28:49 +00:00
Modhaffer Rahmani
8fe5a680a5
Added explicit exception raise when no stack found. (#3559)
* Added explicit exception raise when no stack found.

Currently, any operation that uses 'get_stack' method from 'CloudFormationBackend' class
will fail with AttributeError or jinja2 exception if ran against non-existing stack(created/deleted)
To fix the issue I explicitly raised a 'ValidationError' exception.
Added tests for boto and boto3 responses.

* Moved non-existing stack tests to 'test_stack_events'

When using 'update_stack' to test raising an exception when the stack doesn't exist
test coverage dropped by 0.5%. I am using stack_events instead.

* Removed some unreachable paths

After adding the exception couple of paths in the code are unreachable as 'get_stack' doesn't return 'None' anymore.
This is the reason why coverall was reporting decreased coverage.

* Removed an unreachable path I missed

* Added couple of tests in cloudformation/models

* Added more assertions around raised exception

* Formatted document using black to fix issue with travis.
2021-01-16 14:42:51 +00:00
Rahul Ranjan
628c026a07
Sort s3 object versions by last_modified_on in descending order (#3588)
* Sort s3 object versions by last_modified_on in descending order

- addresses https://github.com/localstack/localstack/issues/3433

* fix for python 2

* fix lint
2021-01-15 18:28:28 +00:00
Brian Pandola
7ff60683e0
Expose contextual data when Lambda test fails (#3590)
This test is flaky, but when it fails we don't get any indication as to why.
This commit ensures that the reason for failure will be part of the assertion
message.

Once we have information about why this test fails, we can troubleshoot further
and hopefully come up with a permanent fix.
2021-01-15 14:42:35 +00:00
Anders Kaseorg
8befcb6a48
Leave the global responses configuration alone (#3529)
Instead of modifying responses._default_mock, create our own
responses.RequestsMock object that we can modify as needed without
interfering with other users of the responses library.

Fixes #3264.

Signed-off-by: Anders Kaseorg <andersk@mit.edu>
2021-01-15 09:12:41 +00:00
Szymon Zmilczak
c8151e1bb4
IoT: Added Rules implementation (#3552)
* feat(iot): Added IoT Rules implementation

* fix(iot): Split IoT Rules tests into multiple test cases

* fix(iot): Updated rule creation to work with python 2

Co-authored-by: Szymon Zmilczak <szymon.zmilczak@machiq.com>
2021-01-14 14:52:23 +00:00
Bert Blommers
d1696a37e5
#2710 - S3 - Raise specific error when GetObject is called with unknown VersionId (#3532) 2021-01-13 16:06:09 +00:00
Bert Blommers
0f32f3c50c
#3542 - CloudFormation - Fix SecurityGroup ingress rules (#3553) 2021-01-13 13:36:56 +00:00
Bert Blommers
df8bd43a45
#2965 - S3 - GetObject - Treat empty Range-argument as a regular GET (#3531) 2021-01-13 10:00:18 +00:00
Bert Blommers
77dd35e3b8
Use known ImageID in internal tests (#3555) 2021-01-13 09:02:11 +00:00
aaronfowles-emis
a2246df1a4
Implement full Database object for Glue get_database() - fix for #3571. (#3572)
* implement potential fix for #3571.

* freeze_time decorator not used in TEST_SERVER_MODE
2021-01-11 13:10:18 +00:00
Anton Grübel
17d94f9e09
Add validation to put_events (#3579)
* Add validation to put_events

* Add extra test for put_events

* Fix Python 2.7 error
2021-01-11 09:41:31 +00:00
Erez Freiberger
f749f583ee
Add get_function_configuration support for Lambda (#3562)
* Add get_function_configuration support for Lambda

* remove unnesecary code from test and use _lambda_region when asserting

* rename function and skip coping configuration

* run black formatting
2021-01-10 15:24:04 +00:00
Brian Pandola
640df04840
Implement Add to List for dynamodb:UpdateItem (#3585)
This handles the add-to-list case using the legacy `AttributeUpdates` parameter.

* Added test coverage.
* Verified against real AWS backend.

Closes #3561
2021-01-10 14:20:41 +00:00
Miltos
13252cc4e3
Fix ResourceNotFoundError exception message (#3582)
* Fix ResourceNotFoundError message

* Fix and update unit test for invalid `describe_identity_pool`.
2021-01-10 13:26:40 +00:00
Jordan Sanders
6dfd64ff3c
More accurately mock ECS RegisterTaskDefinition (#3584)
The mocked response for ECS RegisterTaskDefinition has drifted from what
actually returns when run against a real ECS endpoint. I created a
minimal task definition for both EC2:

```
>>> ecs.register_task_definition(
      family="moto",
      containerDefinitions=[
          {
              "name": "hello_world",
              "image": "hello-world:latest",
              "memory": 400
           }
       ]
  )["taskDefinition"]

{'taskDefinitionArn': 'arn:aws:ecs:us-east-1:************:task-definition/moto:1',
 'containerDefinitions': [{'name': 'hello_world',
   'image': 'hello-world:latest',
   'cpu': 0,
   'memory': 400,
   'portMappings': [],
   'essential': True,
   'environment': [],
   'mountPoints': [],
   'volumesFrom': []}],
 'family': 'moto',
 'revision': 1,
 'volumes': [],
 'status': 'ACTIVE',
 'placementConstraints': [],
 'compatibilities': ['EC2']}
```

and FARGATE:
```
>>> ecs.register_task_definition(
      family="moto",
      containerDefinitions=[
          {
              "name": "hello_world",
              "image": "hello-world:latest",
              "memory": 400
           }
       ],
       requiresCompatibilities=["FARGATE"],
       networkMode="awsvpc",
       cpu="256",
       memory="512"
  )["taskDefinition"]

{'taskDefinitionArn': 'arn:aws:ecs:us-east-1:************:task-definition/moto:2',
 'containerDefinitions': [{'name': 'hello_world',
   'image': 'hello-world:latest',
   'cpu': 0,
   'memory': 400,
   'portMappings': [],
   'essential': True,
   'environment': [],
   'mountPoints': [],
   'volumesFrom': []}],
 'family': 'moto',
 'networkMode': 'awsvpc',
 'revision': 2,
 'volumes': [],
 'status': 'ACTIVE',
 'requiresAttributes': [{'name': 'com.amazonaws.ecs.capability.docker-remote-api.1.18'},
  {'name': 'ecs.capability.task-eni'}],
 'placementConstraints': [],
 'compatibilities': ['EC2', 'FARGATE'],
 'requiresCompatibilities': ['FARGATE'],
 'cpu': '256',
 'memory': '512'}
```

This change adds several default keys to the task based on those two
real responses and the AWS documentation:
https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_RegisterTaskDefinition.html

The mock still doesn't match the real response exactly but it's much
closer than it was before.
2021-01-09 14:07:35 +00:00
Anton Grübel
f4418185d1
Add launchType parameter to ECS (#3578) 2021-01-08 17:14:40 +00:00
Brian Pandola
d712a98ce1
Enable AWSLambda and STS mocking for AWS China regions/endpoints (#3574)
Fixes #3570
2021-01-08 14:22:12 +00:00
Brian Pandola
1a98c4f14a
Fix: handling of boolean value privateDnsEnabled in ec2:VpcEndpoint (#3566)
* Properly coerce `privateDnsEnabled` to boolean value when parsing requests.
* Per AWS spec, default `privateDnsEnabled` request value to `True`.
* Properly serialize `privateDnsEnabled` as boolean value in responses.
* Add test coverage.

Ref: #3540
2021-01-08 08:05:44 +00:00
usmangani1
bce682a867
Fix:Added nat-gateway tags (#3560)
* Fix:Added nat-gateway tags

* Removed changes
2021-01-07 17:59:46 +00:00
Robin Wilkins
a31599d000
Support cognito admin user password auth flow (#3547)
Applies the user credentials pattern from the ADMIN_NO_SRP_AUTH flow
to the ADMIN_USER_PASSWORD_AUTH auth flow for Cognito admin_initiate_auth
requests.

Co-authored-by: Robin Wilkins <r.wilkins@waracle.com>
2020-12-15 07:48:52 +00:00
Pavel
c9c30b8286
Enabled SNS endpoint attr must be lowercased (#3543)
As per sample response:
https://docs.aws.amazon.com/sns/latest/api/API_GetEndpointAttributes.html
2020-12-14 15:08:33 +00:00
irahulranjan
54bd336457
Fix: FIFO DLQ locks message group id (#3537)
* fix https://github.com/localstack/localstack/issues/3319

* fix review comments
2020-12-14 09:19:22 +00:00
irahulranjan
7b97141184
fix Fifo queue delivers duplicate message(s) (#3538)
* fix https://github.com/localstack/localstack/issues/3339

* fixe lint issues

* Fix review comments
- move deduplication time to constants
- make tests parameterized
- update tests as per review comments

* change variable name expectedCount => expected_count

* fix tests for python 2.7
increase deduplication mock config to account for delays

* ignore time mocking test in server mode
2020-12-13 14:39:10 +00:00
irahulranjan
dffc0e449c
Fix: ListObjectsV2 behaving differently than AWS API (#3545)
* fix : localstack issue https://github.com/issues?q=is%3Aopen+is%3Aissue+label%3A%22good+first+issue%22+language%3Ago

* add assertion for error message as well
2020-12-13 13:38:25 +00:00
Don Kuntz
effb075b62
Add glue.batch_update_partition (#3534)
* Add glue.batch_update_partition

* Fix error output for glue.batch_update_partition and add test case for non-existent partition in the batch update
2020-12-10 20:03:37 +00:00
Anders Kaseorg
4aff7147b5
test_stepfunctions: Fix failures under non-UTC timezone (#3528)
These tests were passing with TZ=UTC, but under a non-UTC timezone
they were failing:

E       AssertionError: given
E       X = [{'timestamp': datetime.datetime(2020, 1, 1, 0, 0, tzinfo=tzutc()), …}, …]
E           and
E       Y = [{'timestamp': datetime.datetime(2020, 1, 1, 0, 0, tzinfo=tzlocal()), …}, …]
E       X[0]['timestamp'] != Y[0]['timestamp']

With this fix, they pass either way.

Signed-off-by: Anders Kaseorg <andersk@mit.edu>
2020-12-09 12:25:11 +00:00
Jordan Sanders
b4e961148f
Pass the default ECS cluster and raise accurate exceptions (#3522)
* Pass the "default" cluster

* Mock ECS exceptions more accurately

Moto's mock ECS has drifted fairly far from the actual ECS API in terms
of which exceptions it throws. This change begins to bring mock ECS's
exceptions in line with actual ECS exceptions. Most notably:

- Several custom exceptions have been replaced with their real ECS
exception. For example, "{0} is not a cluster" has been replaced with
ClusterNotFoundException
- Tests have been added to verify (most of) these exceptions work
correctly. The test coverage was a little spotty to begin with.
- The new exceptions plus the change to pass the "default" cluster
exposed a lot of places where mock ECS was behaving incorrectly. For
example, the ListTasks action is always scoped to a single cluster in
ECS but it listed tasks for all clusters in the mock. I've minimally
updated the tests to make them pass, but there's lots of opportunity to
refactor both this method's test and its implementation.

This does not provide full coverage of exceptions. In general, I ran
these operations against actual ECS resources and cross-referenced the
documentation to figure out what actual exceptions should be thrown and
what the messages should be. Consequently, I didn't update any
exceptions that took more than trivial amount of time to reproduce with
real resources.
2020-12-08 12:55:49 +00:00
Benjamin Brabant
7c7a1222d2
Fix saml-assertion parsing in assume-role-with-saml (#3523)
* Retrieve SAML Attribute by Name instead of relying on order which is too fragile

* Handle case when SAML Attribute SessionDuration is not provided, as it is not a required attribute from SAML response

When session duration not provided, AWS consider by default a duration of one hour as cited in the following documentation:
"If this attribute is not present, then the credential last for one hour (the default value of the DurationSeconds parameter of the AssumeRoleWithSAML API)."
https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_create_saml_assertions.html#saml_role-session-duration

Traceback was:
[...]
  File "/Users/benjamin.brabant/Projects/PERSO/moto/moto/sts/responses.py", line 79, in assume_role_with_saml
    role = sts_backend.assume_role_with_saml(
  File "/Users/benjamin.brabant/Projects/PERSO/moto/moto/sts/models.py", line 99, in assume_role_with_saml
    role = AssumedRole(**kwargs)
TypeError: __init__() missing 1 required positional argument: 'duration'

* Process saml xml namespaces properly instead of relying on textual prefix that can vary between identity providers

* Handle when SAML response AttributeValue xml tag contains attributes that force xmltodict to build a dictionary as for complex types instead of directly returning string value

Leverage force_cdata option of xmltodict parser that always return a complex dictionary even if xml tag contains only text and no attributes.

* Improve existing test_assume_role_with_saml to be coherent with other assume_role_with_saml tests and remove dead code at the same time
2020-12-08 09:08:40 +00:00
usmangani1
af60306371
Fix:Ec2-VPC:Added functionality describe-vpc-endpoint (#3524)
* Fix:Ec2:Added fucntionality describe-vpc-endpoint

* Refactor

* Added test cases for errors
2020-12-07 21:39:57 +00:00
Bert Blommers
e1fc3a9596
#3506 - DynamoDB - Allow StringSets to be passed to update_item() (#3519) 2020-12-07 09:31:53 +00:00
usmangani1
d44beb0c9d
Fix:Cloudformation descibe stacks special chars (#3514)
* Fix:descibe stacks special chars

* removed debug statements

* Linting

Co-authored-by: usmanokc <usman@okcredit.in>
2020-12-06 08:11:52 +00:00
usmangani1
cfaaa70ea9
FIX:Ec2:Added:Tags for EIP (#3505)
* FIX:Ec2:Added:Tags for EIP

* removed files

* Fix tests
2020-12-06 00:04:46 +00:00
Brian Pandola
8f83f51897
Refactor tests marked xfail to use proper assertions (#3515) 2020-12-04 16:00:48 +00:00
Brian Pandola
dcd034045b
Fix: ClusterType, NumberOfNodes not validated when modifying Redshift cluster (#3513)
By definition, `single-node` clusters can only consist of 1 node. Likewise,
`multi-node` clusters must have 2 or more nodes.

* Ensure `ClusterType` parameter is either `multi-node` or `single-node`.
* Ensure proper validation of `NumberOfNodes` parameter based on `ClusterType`
  parameter.
* Fix existing test case that incorrectly allowed a `multi-node` cluster to
  consist of 1 node.
* Add dedicated test for resizing a cluster from `single-node` to `multi-node`
  and back again.

Behavior and error messages have been verified against a real AWS backend.
2020-12-04 13:22:19 +00:00
Brian Pandola
5e21e50424
Fix: elasticbeanstalk ApplicationArn does not contain ApplicationName (#3511)
Fixes #3510
2020-12-04 10:31:28 +00:00
Steve Pulec
b6369d6250
Merge pull request #3512 from xnegativx/fix-auth-params
Fix challenge parameters for cognito-idp/initiate_auth flow
2020-12-03 18:07:32 -06:00
Steve Pulec
51928f2410
Merge pull request #3508 from bblommers/feature/ec2-describe-instance-type-offerings
EC2: describe instance type offerings
2020-12-03 18:06:06 -06:00
Ciaran Evans
48df5bd5af
Add basic get_execution_history implementation for Step Functions (#3507)
* Add format command to makefile

* Refactor executions to be a attribute of StateMachine

* Begin to add tests for execution history

* Add tests for failed and successful event histories, with implementations

* Add failure case to environment var check

* Skip test if in server mode and update implementation coverage

* Add conditional import for mock to cover python 2

* Refactor stop execution logic into StateMachine

* Refactor event history environment variable into settings.py

* Remove typing and os import
2020-12-03 18:32:06 +00:00
Antonin
c5d0aa0c10 fix SALT and SRP_B params 2020-12-03 11:42:10 +01:00
usmangani1
ffa7f2e41a
Fix:SES:Get Template Html part (#3504)
* SES:Get Template Html part

* Linting

* Linting

Co-authored-by: Bert Blommers <info@bertblommers.nl>
2020-12-03 07:42:19 +00:00
Bert Blommers
936fb19539 DescribeInstanceTypeOfferings - script that hardcodes all offerings 2020-12-02 14:41:24 +00:00
Bert Blommers
5d208bfd04 Merge branch 'master' into add_instance_type_offerings 2020-12-02 10:57:07 +00:00
usmangani1
b2adcdf518
Fix:RDS:add DBParameterGroupArn in describe-db-parameter-groups & cre… (#3462)
* Fix:RDS:add DBParameterGroupArn in describe-db-parameter-groups & create-db-parameter-group

* Test change

* Fixed tests

* tests change acconutID

* linting

Co-authored-by: usmankb <usman@krazybee.com>
2020-12-01 19:53:01 +00:00
Brian Pandola
ae85c539fd Remove boto package dependency
The `boto` library (long ago superseded by `boto3`) has not had an official
release in over two years or even a commit in the last 18 months.  Importing
the package (or indirectly importing it by via `moto`) generates a deprecation
warning.  Additionally, an ever-increasing number of `moto` users who have
left `boto` behind for `boto3` are still being forced to install `boto`.

This commit vendors a very small subset of the `boto` library--only the code
required by `moto` to run--into the /packages subdirectory.  A README file
is included explaining the origin of the files and a recommendation for how
they can be removed entirely in a future release.

NOTE: Users of `boto` will still be able to use `moto` after this is merged.

closes #2978
closes #3013
closes #3170
closes #3418

relates to #2950
2020-11-26 23:59:15 -08:00
Garrett
9e3b23758a
[dynamodb2] Support include projection on indexes (#3498)
* [dynamodb2] Support include projection on indexes

* linter
2020-11-25 20:28:05 +00:00
Brian Pandola
d58d3e2c2e
Fix: yield tests ignored by pytest runner (#3500)
Closes #3499
2020-11-25 10:48:05 +00:00
Brian Pandola
5a2cbf1eca Fix: Duplicate test name causing loss of coverage
A test added in #2401 copied the name of an existing test, preventing it
from being run.  This commit renames the second test, allowing both to
be picked up by the test runner.
2020-11-24 03:29:52 -08:00
Brian Pandola
cf7869d0e2 Add check for UnknownSnapshotCopyRegionFault error 2020-11-24 03:29:52 -08:00
Brian Pandola
b4d7d183ab Add additional detail to ClientError assertions
We check the message now to ensure we've raised the *correct* ClientError
2020-11-24 03:29:52 -08:00
Brian Pandola
49c6e65603 Fix: DeleteCluster behavior with SkipFinalClusterSnapshot
Original code was trying to raise a ClientError directly.  Change to
appropriate Redshift exception class.

* Fix test assertion for `boto`.
* Add test coverage for `boto3`.
2020-11-24 03:29:52 -08:00
Brian Pandola
555be78f6e Fix: redshift:DescribeClusterSnapshots should not raise ClusterNotFoundError
Real AWS backend returns an empty array instead of raising an error.
2020-11-24 03:29:52 -08:00
Brian Pandola
161cb46886 Add coverage for ContentType=JSON server requests
The `boto` library explicitly requests JSON responses from Redshift endpoints
2020-11-24 03:29:52 -08:00
Nuwan Goonasekera
c658cfea0d
Run black and fix tests 2020-11-24 00:51:00 +05:30
Nuwan Goonasekera
114a8efac8
Improved describe instance types + tests 2020-11-23 15:30:52 +05:30
Nuwan Goonasekera
a69bad57ef
Added instance type offer filters 2020-11-23 15:30:52 +05:30
Brian Pandola
53a3e52c67
Fix: EMR ReleaseLabel validation does not respect semantic versioning (#3489)
Fixes #3474
2020-11-22 18:54:59 +00:00
Brian Pandola
93b393c679
Fix: Python 2/3 Incompatibility (#3488)
Previous code would raise `TypeError: 'dict_keys' object is not subscriptable`
when run under Python 3.

* Re-write code in Python 2/3 compatible way.
* Add clarifying comment.
* Add test coverage.

Supersedes #3227
2020-11-21 13:36:33 +00:00
Brian Pandola
4245497a97
Fix: redshift:EnableSnapshotCopy raises incorrect Exception (#3485)
The previous code was trying to raise a botocore ClientError directly, which
was actually generating a secondary AttributeError because the arguments passed
to ClientError() were incorrect.

This replaces the ClientError() call with a proper moto exception class for
Redshift and fixes the test assertions appropriately.

Supersedes #1957
2020-11-21 10:35:46 +00:00
Mykola Mykhalov
689cd8f285
Implement IAM instance profile associations (#3482)
* Add associate_iam_instance_profile describe_iam_instance_profile_associations, disassociate_iam_instance_profile, replace_iam_instance_profile_association

* More tests, removed type hints, filter fix

* Ec2 fix
2020-11-20 22:00:53 +00:00
usmangani1
54e296eb53
Fix:CloudWatch List metrics with dimensions (#3461)
* Fix:CloudWatch List metrics with dimensions

* Fix:CloudWatch List metrics with dimensions

* Fixed new cases and added more tests

Co-authored-by: usmankb <usman@krazybee.com>
2020-11-20 12:38:48 +00:00
Rafael de Elvira
8a95878a81
Route53: Implement dummy GetChange endpoint (#3486)
* Route53: Implement dummy GetChange endpoint

* fix typo in GET_CHANGE_RESPONSE
2020-11-20 07:21:05 +00:00
Brian Pandola
f7467164e4
Fix Race Condition in batch:SubmitJob (#3480)
* Extract Duplicate Code into Helper Method

DRY up the tests and replace the arbitrary `sleep()` calls with a more
explicit check before progressing.

* Improve Testing of batch:TerminateJob

The test now confirms that the job was terminated by sandwiching a `sleep`
command between two `echo` commands.  In addition to the original checks
of the terminated job status/reason, the test now asserts that only the
first echo command succeeded, confirming that the job was indeed terminated
while in progress.

* Fix Race Condition in batch:SubmitJob

The `test_submit_job` in `test_batch.py` kicks off a job, calls `describe_jobs`
in a loop until the job status returned is SUCCEEDED, and then asserts against
the logged events.

The backend code that runs the submitted job does so in a separate thread. If
the job was successful, the job status was being set to SUCCEEDED *before* the
event logs had been written to the logging backend.

As a result, it was possible for the primary thread running the test to detect
that the job was successful immediately after the secondary thread had updated
the job status but before the secondary thread had written the logs to the
logging backend.  Under the right conditions, this could cause the subsequent
logging assertions in the primary thread to fail.

Additionally, the code that collected the logs from the container was using
a "dodgy hack" of time.sleep() and a modulo-based conditional that was
ultimately non-deterministic and could result in log messages being dropped
or duplicated in certain scenarios.

In order to address these issues, this commit does the following:

* Carefully re-orders any code that sets a job status or timestamp
  to avoid any obvious race conditions.
* Removes the "dodgy hack" in favor of a much more straightforward
  (and less error-prone) method of collecting logs from the container.
* Removes arbitrary and unnecessary calls to time.sleep()

Before applying any changes, the flaky test was failing about 12% of the
time.  Putting a sleep() call between setting the `job_status` to SUCCEEDED
and collecting the logs, resulted in a 100% failure rate.  Simply moving
the code that sets the job status to SUCCEEDED to the end of the code block,
dropped the failure rate to ~2%.  Finally, removing the log collection
hack allowed the test suite to run ~1000 times without a single failure.

Taken in aggregate, these changes make the batch backend more deterministic
and should put the nail in the coffin of this flaky test.

Closes #3475
2020-11-18 10:49:25 +00:00
Oide Brett
83507fbc37
fixed issue in update_configuration for lambda when setting VPC config property (#3479) 2020-11-18 08:45:31 +00:00
Ayush Ghosh
7f73015f02
Fix XML encoding in Route53 JInja2 Templates #3469 (#3473)
* Use Jinja2 escape functionality to escape html attributes in value response

* Add tests

* fix formatting
2020-11-18 07:23:49 +00:00
Guillermo Arribas
62fd975da0
EventBridge: put_rule and list_rules should store and retrieve EventBusName property (#3472)
Co-authored-by: Guillermo Arribas <garribas@atlassian.com>
2020-11-17 15:36:17 +00:00
jweite
5fe921c2bc
Added support for EMR Security Configurations and Kerberos Attributes. (#3456)
* Added support for EMR Security Configurations and Kerberos Attributes.

* Revised exception-raising test to work with pytest api.

* Added htmlcov to .gitignore; upgrading botocore to 1.18.17, per commit d29475e.

Co-authored-by: Joseph Weitekamp <jweite@amazon.com>
2020-11-17 10:54:34 +00:00
Rich Unger
f045af7e0a
Add support for empty strings in non-key dynamo attributes (#3467)
* Add support for empty strings in non-key attributes

https://github.com/spulec/moto/issues/3339

* Nose, not pytest

* Revert "Nose, not pytest"

This reverts commit 5a3cf6c887dd9fafa49096c82cfa3a3b7f91d224.

* PUT is default action
2020-11-17 09:12:39 +00:00
Oide Brett
62d382ff70
Fixed issue 3448 for DynamoDB update_item (#3463)
* Fixed issue 3448 for DynamoDB update_item

* Tidied up fix for issue 3448 for DynamoDB update_item

* Reformatted fix for issue 3448 for DynamoDB update_item

* removed use of f-strings in test case as it fails in Travis CI build due to Python 2.7 support of f strings
2020-11-17 07:41:54 +00:00
Brian Pandola
d29475ed19
Fix: TagList missing in rds:DescribeDBInstance response (#3459)
Previously, tags were only available via rds:ListTagsForResource, but are now
included in the Create/DescribeDBInstance responses as of Botocore 1.18.17[1]

[1]: f29d23c53e (diff-d10722c0e11ded323c8d240066d7ed31e93a1e6423d54e091b7d54b86e6bd4e0)

Fixes #3458
2020-11-16 09:30:53 +00:00
Brian Pandola
93453eba05
Improve ec2:DescribeSubnets filtering (#3457)
* Add response/model/test coverage for filtering by `state`
* Add explicit test case for filtering by `vpc-id`

Closes #801
2020-11-16 08:17:36 +00:00
Steve Pulec
6107561717
Merge pull request #3451 from bpandola/fix-3450
Fix: Return `Tags` in iam:CreateUserResponse
2020-11-15 11:25:10 -06:00
gsamaras
d068653dea
dynamodb2 support for default Action ('Put') in update_item (#3454)
Co-authored-by: Georgios Samaras <gsamaras@amazon.com>
2020-11-14 11:10:38 +00:00
Bert Blommers
273ca63d59 Linting 2020-11-11 15:55:37 +00:00
Bert Blommers
cb6731f340 Convert fixtures/exceptions to Pytest 2020-11-11 15:54:01 +00:00
Matěj Cepl
6d364dc7aa Pytest model of exceptions uses 'value' attribute instead of 'exception'. 2020-11-11 12:21:04 +01:00
Matěj Cepl
2705698d83 Mark functions as requiring network 2020-11-10 14:12:38 +01:00
Matěj Cepl
5697ff87a8 Back to Black 2020-11-10 14:12:38 +01:00
Matěj Cepl
ea489bce6c Finish porting from nose to pytest. 2020-11-10 08:25:05 +01:00
Matěj Cepl
77dc60ea97 Port test suite from nose to pytest.
This just eliminates all errors on the tests collection. Elimination of
failures is left to the next commit.
2020-11-10 08:23:44 +01:00
Steve Pulec
e5adfd6f12
Merge pull request #3443 from bpandola/fix-2862
Add ssm:SendCommand support for instance tag Targets
2020-11-09 19:57:25 -06:00
Brian Pandola
b8e08539e3 Fix: Return Tags in iam:CreateUserResponse
Fixes #3450
2020-11-09 14:59:06 -08:00
Brian Pandola
2f70373c2e
Add CloudFormation Update support for AWS::StepFunctions::StateMachine (#3440)
Closes #3402
2020-11-08 12:44:23 +00:00
Brian Pandola
3b9635b3c7 Add ssm:SendCommand support for instance tag Targets
Replace the special-case code to handle Cloud Formation tags with a more
generic implementation that covers all instance tags.

Supersedes #2863
Closes #2862
2020-11-08 00:06:35 -08:00
pwrmiller
725ad7571d
Adds some basic endpoints for Amazon Forecast (#3434)
* Adding some basic endpoints for Amazon Forecast, including all dataset group related endpoints

* Adds better testing around exception handling in forecast endpoint, removes some unused code, and cleans up validation code

* Fix unused imports, optimize imports, code style fixes

Co-authored-by: Paul Miller <pwmiller@amazon.com>
2020-11-06 08:23:47 +00:00
Peter Lithammer
b7cf2d4478
ecr: Fix "imageDigest" value in ecr.list_images() response (#3436) 2020-11-05 14:10:23 +00:00
Brian Pandola
574f46e212
Implement additional Step Functions endpoints (#3437)
* Implement tagging/untagging for State Machine resources

* Implement `stepfunctions:UpdateStateMachine` endpoint
2020-11-05 10:16:48 +00:00
Brian Pandola
76265576ac
Fix: describe/list attribute discrepancy in Secrets Manager (#3432)
`secretsmanager:DescribeSecret` returns `VersionIdsToStages`
`secretsmanager:ListSecrets` returns the same information in `SecretVersionsToStages`

* Verified fix against real AWS backend.

Fixes #3406
2020-11-03 14:18:56 +00:00
Brian Pandola
f584e16ab9
Fix: eventName for a deleted record should be REMOVE instead of DELETE (#3431)
Verified API documentation[1] against the real AWS backend.

[1]: https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_streams_Record.html#DDB-Type-streams_Record-eventName

Fixes #3400
2020-11-02 17:21:09 +00:00
usmangani1
f57a77451c
Fix:Added Tags for Network-ACL,RouteTable,InternetGateway (#3430)
* Fix:Added Tags for Network-ACL,RouteTable,InternetGateway

* Modified internet-gateway tags

* Lint

Co-authored-by: usmankb <usman@krazybee.com>
2020-11-02 13:30:02 +00:00
Brian Pandola
171130fe7b
Add support for CloudFormation resource AWS::StepFunctions::StateMachine (#3429)
Closes #3402

Co-authored-by: Bert Blommers <bblommers@users.noreply.github.com>
2020-11-02 11:53:03 +00:00
usmangani1
53c3eb6240
Fix:SecretsManager :Error on Invalid secretID (#3413)
* Fix:SecretsManager :Error on Invalid secretID

* Fixed tests

Co-authored-by: usmankb <usman@krazybee.com>
2020-11-02 10:15:40 +00:00
usmangani1
9970be2309
Fix: Adding alarm arn to describe alarms response (#3409)
* Fix: adding alarm arn to describe alarms response

* Fix:Delete subscriptions on delete topic

* modified tests

Co-authored-by: usmankb <usman@krazybee.com>
2020-11-02 08:56:18 +00:00
Brian Pandola
68e3d394ab
Stepfunctions improvements (#3427)
* Implement filtering for stepfunctions:ListExecutions

* Add pagination to Step Functions endpoints

Implements a generalized approach to pagination via a decorator method for the
Step Functions endpoints.  Modeled on the real AWS backend behavior, `nextToken`
is a dictionary of pagination information encoded in an opaque string.

With just a bit of metadata hard-coded (`utils.PAGINATION_MODEL`), backend `list`
methods need only be decorated with `@paginate` and ensure that their returned
entities are sorted to get full pagination support without any duplicated code
polluting the model.

Closes #3137
2020-11-01 10:16:41 +00:00
Eoin Shanaghy
a3880c4c35
Metric data query alarms (#3419)
* Add support for metric data query alarms (Metrics=[..])

* Fix trailing whitespace

* Allow for unordered metrics in Python 2.7

* Add describe_alarm assertions and support DatapointsToAlarm
2020-10-31 15:56:24 +00:00
jweite
f8d2ce2e6a
Notebook Lifecycle Config create, describe and delete (#3417)
* Notebook Lifecycle Config create, describe and delete

* PR3417 comment changes: raise on create with duplicate name, derive a ValidationException class and use it instead of RESTException, unit test for delete non-existing.

Co-authored-by: Joseph Weitekamp <jweite@amazon.com>
2020-10-30 21:05:06 +00:00
jweite
cbd4efb42d
ApplicationAutoscaling: support autoscaling policies, deregister_scalable_target (#3350)
* ApplicationAutoscaling: support autoscaling policies, deregister_scalable_target.

* PR3350 comment changes: drop unnecessary pass statements, unit test three exception cases.

Co-authored-by: Joseph Weitekamp <jweite@amazon.com>
2020-10-30 15:21:34 +00:00
Erinna Chen
d499d4d179
Fix update for application autoscaling register target (#3423) 2020-10-29 14:18:38 +00:00
Brian Pandola
2f23f6b26b
Fix dynamodb:TransactGetItems response for items that do not exist (#3420)
If the requested item has no projected attributes, the corresponding ItemResponse
object is an empty Map.[1]  Verified against real AWS.

Fix existing general test case and add an explicit test case to cover this scenario.

[1]: https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_TransactGetItems.html#API_TransactGetItems_ResponseElements

Fixes #3404
2020-10-29 11:50:45 +00:00
usmangani1
19fc76f466
Fix: SNS Delete subscriptions on topic deletion (#3410)
* Fix:Delete subscriptions on delete topic

* Changed tests

Co-authored-by: usmankb <usman@krazybee.com>
2020-10-29 08:52:02 +00:00
Bert Blommers
cc27f1ef0c S3 - Add more detail to error responses 2020-10-28 14:22:18 +00:00
Neal Granger
a5fc14b5bc
Add missing Fn::GetAtt attributes to S3 bucket mock (#3396)
* Add missing `Fn::GetAtt` attributes to S3 bucket mock

Addresses an issue reported here https://github.com/localstack/aws-cdk-local/issues/1

* Reformat touched files with `black`

* Reformat touched files with `black` on Python 3.7
2020-10-27 16:04:32 +00:00
Artem
53cc3dd67a
Fix SQS md5 attribute hashing. (#3403)
* Fix sqs md5 attribute hashing.

* Fix test name.

* Fix format.
2020-10-27 12:13:47 +00:00
Brian Pandola
c0a25bbd9a
Fix: VpnGatewayId parameter casing in ec2:CreateVpnConnection request (#3401)
Fixes #3397
2020-10-27 07:41:01 +00:00
usmangani1
14980371d7
FIX:Add secrets Manager Tag resource Funtionality (#3392)
* FIX:Add secrets Manager Tag resoruce Funtionality

* Fixed review comments

Co-authored-by: usmankb <usman@krazybee.com>
2020-10-22 11:14:32 +01:00
Brian Pandola
9eb58eea41
Fix: nextToken value in logs:DescribeLogGroups response (#3398)
The pagination for this endpoint has been modified to more closely
model the real AWS behavior:
* Log Groups are now sorted alphabetically by `logGroupName`.
* `nextToken` is now a string containing the last `logGroupName` in the
  current response.
* Specifying an invalid `nextToken` does not generate an error, but does
  return an empty group list.
* `nextToken` is not included in the response if there are no additional
  items to return.

Fixes #3395
2020-10-21 09:47:09 +01:00
usmangani1
fcc85a9645
Including Message attributes when ALL is passed (#3393)
* Including Message attributes when ALL is passes

* Added tests

Co-authored-by: usmankb <usman@krazybee.com>
2020-10-19 09:04:38 +01:00
davidaah
2fe3aee359
Allow creation of subnets from secondary VPC IPv4 CIDR blocks (#3391)
* allow subnets to be created from secondary vpc cidr block

* add additional test case for invalid cidr
2020-10-16 16:02:01 +01:00
Brian Pandola
28c1690fc2
Add Support for SNS Topic KmsMasterKeyId Attribute (#3389)
We do not do any validation of the `KmsMasterKeyId` attribute, and simply
store it as-as.  This mimics the behavior in AWS, where the key is not
validated until it is actually used (when publishing[1]).

[1]: https://docs.aws.amazon.com/sns/latest/dg/sns-server-side-encryption.html

Closes #3216
2020-10-16 12:30:07 +01:00
Brian Pandola
6505c893b8
Fix: S3 Bucket does not support attribute type Arn in Fn::GetAtt (#3388)
Fixes #3387
2020-10-16 11:29:26 +01:00
Brian Pandola
99556620a9
Fix: Empty sets not removed from item after UpdateExpression (#3386)
DynamoDB does not support empty sets. If the last item in a set is
deleted as part of an UpdateExpression, the attribute must be removed.

Ref: https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/HowItWorks.NamingRulesDataTypes.html

Fixes #3296
2020-10-14 16:32:42 +01:00
Brian Pandola
ccda76898a
Add KMS Support to EBS Encrypted Volumes (#3383)
* Properly coerce `Encrypted` attribute to bool on request/response.
* Create and use a default AWS managed CMK for EBS when clients request
  an encrypted volume without specifying a KmsKeyId.

NOTE: A client-provided KmsKeyId is simply stored as-is, and is not validated
against the KMS backend. This is in keeping with other moto backends (RDS, Redshift)
that currently also accept unvalidated customer master key (CMK) parameters, but could
be an area for future improvement.

Closes #3248
2020-10-14 15:18:50 +01: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
nom3ad
fe361f861d
Enable more unit tests for ACM (#3372)
* Enable more unit tests for ACM

* put a smile on travis-ci face

Co-authored-by: nom3ad <nom3ad@gmail.com>
Co-authored-by: Bert Blommers <bblommers@users.noreply.github.com>
2020-10-12 14:43:36 +01:00
waynemetcalfe
0a938f7bb4
issue-3379 iam list_roles: implement PathPrefix, MaxItems and Marker (#3380)
* issue-3379 iam list_roles: implement PathPrefix, MaxItems and Marker

* issue-3379 fix cloudformation test
2020-10-12 12:13:20 +01:00
nom3ad
ea0ba91f63
support Tags parameter in ACM import_certificate() and request_certificate() methods (#3373)
* ACM: support `tags` parameter in import_certificate()

* ACM: support tags parameter in  request_certificate()

* ACM: better tag operations with more unit tests

Co-authored-by: nom3ad <nom3ad@gmail.com>
2020-10-12 07:55:14 +01:00
nom3ad
502818be4c
Fixes acm:describe_certificate for imported certificates having no SAN extension (#3370)
* Fix(test_acm): describe_certificate testcase does't execute

* handle acm certificates lacking extensions

Co-authored-by: nom3ad <nom3ad@gmail.com>
2020-10-10 22:32:42 +01:00
Brian Pandola
c54f182ca1
Implement additional filters for ecs.ListTasks (#3376)
Closes #1785
2020-10-10 20:02:08 +01:00
Brian Pandola
4a336b8b04
Add ec2.vpc resource support to Tagging API (#3375)
Closes #1849
2020-10-10 19:05:21 +01:00
Brian Pandola
a2bd4515eb
Add better support for SQS MaximumMessageSize attribute (#3374)
Closes #3205
2020-10-10 17:54:36 +01:00
Brian Pandola
db7842653f
iot:DeleteThingGroup should return success even for non-existent groups (#3367)
Closes #3026
2020-10-09 15:57:00 +01:00
Brian Pandola
c1b2c78db2
Fix TagFilter implementation in tag:GetResources (#3366)
The `tag_filter` method has been re-arranged to mimic the actual AWS behavior:
Return `True` if *any* tag matches a filter and *all* filters are matched.

Python's closures are late-binding, so we have to modify the lambdas accordingly!

Closes #2814
2020-10-09 13:55:48 +01:00
Brian Pandola
d00cefa25c
Add tagging to ec2.CopySnapshot (#3365)
The `@freeze_time` decorator was removed because it is not necessary (and was
causing the test to be skipped).

Closes #2940
2020-10-09 12:33:07 +01:00
Anton Grübel
349b9a990d
Add registeredAt to ecs container instance (#3358) 2020-10-05 15:39:59 +01:00
Sarang Joshi
08da2c92d9
fix(dynamodb2): Fix update_item nested insert (#3355)
When comparing old and new values when doing a nested item update, the
`!=` implementation fails when the value being compared is `None`. This
results in an exception when trying to insert a new item into a nested
map. So just do a quick check that the original value is exists before
doing the comparison, as the `None` default is what is tripping this.
2020-10-05 13:40:33 +01:00
Jon Michaelchuck
2391a4ab97
[SecretsManager] Handle missing secrets versions (#3349)
* SecretsManager - handle missing secrets versions

The get_secret_value method should raise ResourceNotFoundException
if a secret exists but the provided VersionId does not.

* Run black

* 2.x support

* black fix?

* secret is not a dict. Fix error msg output.
2020-10-05 12:22:54 +01:00
Roman Dmytrenko
c1a7f29c62
Fix issue with wrong parameter signed to secret_binary during secret rotation in Secrets Manager (#3348)
* fix issue with wrong parameter signed to secret_binary

* reformat test
2020-10-05 11:10:32 +01:00
usmangani1
a65c0f004c
Fix:SQS Receive Message (MessageAttributes) in response (#3303)
* Fix:SQS Receive Message (MessageAttributes) in response

* Fixed tests

Co-authored-by: usmankb <usman@krazybee.com>
2020-10-05 10:10:24 +01:00
jweite
9bc6bded6e
EMR: Support for StepConcurrencyLevel. (#3351)
Co-authored-by: Joseph Weitekamp <jweite@amazon.com>
2020-10-02 14:07:13 +01:00
ljakimczuk
a668349a70
Add set_default_policy_version to the IAM backend (#3347)
* Adding set_default_policy_version

* Adding tests and reformatting

* Reformatting tests
2020-10-01 10:24:03 +01:00
Steve Pulec
7cead73aa1
Merge pull request #3341 from bblommers/bugfix/3302
SecretsManager: Make Secret ARN persistent
2020-09-30 16:02:32 -05:00
usmangani1
f9ce99f0d1
Fix:SQS md5 calculation for custom string data type. (#3346)
* Fix:SQS md5 calculation for custom string data type.

* Linting

Co-authored-by: Bert Blommers <info@bertblommers.nl>
2020-09-30 18:40:00 +01:00
usmangani1
1c3ba83fc2
Fix : SQS Create Queue with attributes (#3345)
* Considering only new attributes while queue creation

* Linting

Co-authored-by: usmankb <usman@krazybee.com>
Co-authored-by: Bert Blommers <info@bertblommers.nl>
2020-09-30 16:34:15 +01:00
jweite
1dd5cf08a8
Transcribe Medical Support (#3299)
* Transcribe first cut: Medical: start, get and delete jobs.

* Added list_medical_transcription_job() support to Transcribe.

* Support for medical vocabularies.

* Added transcribe to list of backends to fix server mode error.

* PR3299 requested changes: don't offer deprecated decorator, regionalize download_uri, create/use service-specific exceptions.

Co-authored-by: Joseph Weitekamp <jweite@amazon.com>
2020-09-30 13:18:26 +01:00
Giovanni Torres
195ba81c56
feat: update events remove_targets API response (#3340)
* feat: update events remove_targets API response

* test: add missing test for expected exception
2020-09-29 11:51:17 +01:00
Bert Blommers
369f6bbfc9 3302 - Make Secret ARN persistent 2020-09-28 14:51:30 +01:00
ljakimczuk
3bc18455a2
WIP: Introducing VPC Flow Logs (#3337)
* Start working on flow logs

* Change test

* Constructing tests

* Changing exceptions and adding more tests

* Adding more tests

* Changing model and adding more tests

* Adding support for tags

* Mocking Access error with non-existing Log Group Name

* Adding FlowLogAlreadyExists support

* Changing style

* Reformatted code

* Reformatted tests

* Removing needless test

* Adding support for CloudFormation

* Reformatting slightly

* Removing arnparse and using split

* Rearranging tests

* Fixing FilterNotImplementedError test

* Moving imports to 'if' clauses and adding explicit test for 'cloud-watch-logs' type

* Setting names matching boto3 API and restoring 'not-implementd-filter' test

* Reformatting tests with black
2020-09-28 07:16:06 +01:00
usmangani1
55e7caccfe
Fix:EC2 Tags in create vpc and create subnet (#3338)
Co-authored-by: usmankb <usman@krazybee.com>
2020-09-27 09:24:17 +01:00
Benjamin
82dbaadfc4
added organizations detach_policy response, model, and tests, issue #… (#3278)
* added organizations detach_policy response, model, and tests, issue #3239

Signed-off-by: Ben <ben.lipscomb@fmr.com>

* Created individual tests for detach_policy exceptions, updated regex statements for Root, OU, and Account Id
2020-09-25 16:55:29 +01:00
Wolfgang Bauer
a4701dbbe6
Add tags to Elastic IP Addresses (#3310)
* Make ElasticAddress a tagged resource

To be able to filter on tags on ElasticAddresses, I need to have tags.

* remove unneeded commented lines

Was beginning of how to to it before further checking how it is done with other resources.

* do not ignore network-interface-owner-id filter

* add TODO about currently hardcoded region

* remove hardcoding region

* add testing for tags

creating and allocation, adding tags and querying for it

* separate test for tags into own method

* Linting

Co-authored-by: Bert Blommers <info@bertblommers.nl>
2020-09-25 15:25:30 +01:00
Steve Pulec
ce60e9e3b8
Merge pull request #3314 from bblommers/dependency-test
List dependencies for services - add integration test
2020-09-23 07:07:31 -05:00
jweite
cd20668e9c
Support for autoscaling policies in run_jobflow, add_instance_group and list_instance_groups. (#3288)
Support for cluster_id parameter substitution in autoscaling policy cloudwatch alarm dimensions.
New operations put_autoscaling_policy and remove_autoscaling_policy support

Co-authored-by: Joseph Weitekamp <jweite@amazon.com>
2020-09-23 11:21:45 +01:00
Macwan Nevil
427a222aa0
feature added: support for api RolePermissionsBoundary (#3329)
* feature added: support for api PutUserPermissionsBoundary; DeleteRolePermissionsBoundary

* minor test fix

* lint fixed

* refractored test case

* Issue 3224 s3 copy glacier object (#3318)

* 3224 Enhancement - S3 Copy restored glacier objects

- adds setter for expiry date
- copy sets expiry date to none when source is glacier object
- throws error for copying glacier object only if not restored/still restoring

* 3224 Enhancement - S3 Copy restored glacier objects

- throws error for copying deep archive object only if not restored/still restoring

* Fix:s3 List Object response:delimiter  (#3254)

* Fix:s3 List Object delimiter in response

* fixed tests

* fixed failed tests

Co-authored-by: usmankb <usman@krazybee.com>

* feature added: support for api PutUserPermissionsBoundary; DeleteRolePermissionsBoundary

* minor test fix

* lint fixed

* refractored test case

* added test case for put role exception

Co-authored-by: ruthbovell <63656505+ruthbovell@users.noreply.github.com>
Co-authored-by: usmangani1 <sgosman_chem@yahoo.com>
Co-authored-by: usmankb <usman@krazybee.com>
2020-09-22 12:43:59 +01:00
Ben Dennerley
958e95cf5c
Make IoT certificate ID generation deterministic and prevent duplicate certificates from being created (#3331)
* Make IoT certificate id generation deterministic

Fixes #3321

As per https://stackoverflow.com/questions/55847788/how-does-aws-iot-generate-a-certificate-id,
the IoT certificate ID is the SHA256 fingerprint of the
certificate. Since moto doesn't generate full certificates we will
instead use the SHA256 hash of the passed certificate pem.

* Don't allow duplicate IoT certificates to be created

Fixes #3320

When using boto3, trying to register a certificate that already
exists will throw a ResourceAlreadyExistsException. Moto should
follow the same pattern to allow testing error handling code in
this area.
2020-09-22 10:28:12 +01:00
Nick Stocchero
fd69c93a09 use botocore regions and refactor sorting 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
8dd90db83c add missing test for policies 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
ayushbhawsar
2e0e542efe
added cognito idp function admin_set_user_password to the code (#3328)
* added cognito idp function  to the code

* fixed linting issues
2020-09-21 18:40:07 +01:00
usmangani1
0b9903a3df
Fix:s3 List Object response:delimiter (#3254)
* Fix:s3 List Object delimiter in response

* fixed tests

* fixed failed tests

Co-authored-by: usmankb <usman@krazybee.com>
2020-09-21 16:21:18 +01:00
ruthbovell
1022aa0968
Issue 3224 s3 copy glacier object (#3318)
* 3224 Enhancement - S3 Copy restored glacier objects

- adds setter for expiry date
- copy sets expiry date to none when source is glacier object
- throws error for copying glacier object only if not restored/still restoring

* 3224 Enhancement - S3 Copy restored glacier objects

- throws error for copying deep archive object only if not restored/still restoring
2020-09-21 07:37:50 +01:00
jweite
da4de072a9
ApplicationAutoscaling: support for all the current various forms of resource_id (#3305)
* Change to test_s3 method test_presigned_url_restrict_parameters to tolerate change in exception messages, spurred by boto3 1.14.59 release.

* ApplicationAutoscaling: support for all the current various forms of resource_id.

* Factored logic for extracting application autoscaling resource_type from resource_id to separate function, per PR3304 comment.

Co-authored-by: Joseph Weitekamp <jweite@amazon.com>
2020-09-19 20:13:44 +01:00
Guy Moses
7ce1e87477
[fix] cognito-idp list_users Filter arg now support spaces (#3317) 2020-09-19 11:26:01 +01:00
Leo Sutic
cc0bd5213f
Enable CORS from everywhere using flask-cors. (#3316)
Co-authored-by: Leo Sutic <leo.sutic@matterport.com>
2020-09-19 10:07:17 +01:00
Leo Sutic
94543f6e48
Include response headers when deleting objects. (#3313)
* Return delete meta.

* Add tests.

* Lint fixes.

Co-authored-by: Leo Sutic <leo.sutic@matterport.com>
2020-09-15 13:29:09 +01:00
Bert Blommers
0ab21f62a8 Linting 2020-09-13 19:42:38 +01:00
Bert Blommers
db1d7123f6 List dependencies for services - add integration test to verify 2020-09-13 16:08:23 +01:00
jweite
9f0f230d13
Change to test_s3 method test_presigned_url_restrict_parameters to tolerate change in exception messages, spurred by boto3 1.14.59 release. (#3308)
Co-authored-by: Joseph Weitekamp <jweite@amazon.com>
2020-09-11 11:17:36 +01:00
Arcadiy Ivanov
c2d1ce2c14
Add If-Match, If-None-Match and If-Unmodified-Since to S3 GET/HEAD (#3021)
fixes #2705
2020-09-11 10:17:39 +01:00
Karthikeyan Singaravelan
7054143701
Fix deprecation warnings due to invalid escape sequences. (#3273)
* Fix deprecation warnings due to invalid escape sequences.

* Fix linter error.
2020-09-10 09:20:26 +01:00
Daniel Okey-Okoro
c321ad46b0
fix: deleting non-existent topic shouldn't raise KeyError (#3285) 2020-09-10 08:32:41 +01:00
Steve Pulec
c3b8b2343b
Merge pull request #3286 from ciaranevans/add-input-validation
Add Step Function Execution Input validation
2020-09-04 19:48:05 -05:00
Toshiya Kawasaki
c66812edba
Add kinesisvideo archived media (#3280)
* add get_hls_streaming_session_url

* add get_dash_streaming_session_url

* add get_clip

* add test_server for kinesisvideo archived media

* fix for lint

* fix for lint

* avoid testing kinesisvideoarchivedmedia with TEST_SERVER_MODE=true
2020-09-04 12:14:48 +01:00
Ciaran Evans
6a467ec50f Add validation on execution input 2020-09-04 10:22:21 +01:00
Ciaran Evans
ca64d8fc7a
Implement Execution inputs for Step Functions (#3284)
* Add input attribute to Execution and test with describe_execution

* Switch back method name
2020-09-04 09:58:16 +01:00
zhil3
8854fd06e8
Add describe_endpoint and register_certificate_without_ca in iot_mock module with unittest (#3279)
Co-authored-by: Zhi Li <zhi_li@trendmicro.com>
2020-09-04 09:11:17 +01:00
usmangani1
d2e16ecc2e
Fix:s3 Presign Post with object acl (#3246)
* Fix:s3 Presign Post with object acl

* Added import in tests

Co-authored-by: usmankb <usman@krazybee.com>
2020-09-02 18:35:53 +01:00
Karthikeyan Singaravelan
3fb7cf75d4
Fix deprecation warning due to base64.decodestring in Python 3. (#3272) 2020-09-02 11:10:29 +01:00
Toshiya Kawasaki
25161c0c18
Add kinesisvideo (#3271)
* kinesisvideo create_stream

* add kinesis video stream description

* add kinesisvideo describe_stream

* add kinesisvideo list_streams

* add kinesisvideo delete_stream

* remove unused comment

* remove duplicated definition

* add kinesis video exceptions

* pass region_name to kinesisvideo client in test

* fix kinesisvideo url path

* resolve conflict of kinesisvideo url and kinesis url

* specify region name to kinesisvideobackend

* Add get-dataendpoint to kinesisvideo

* include stream name in ResourceInUseException of kinesisvideo

* use ACCOUNT_ID from moto.core in kinesisvideo

* add server test for kinesisvideo

* split up kinesisvideo test
2020-09-02 08:51:51 +01:00
usmangani1
00a5641cb9
Fix:s3 Presign Put Request with File upload (#3235)
* Fix:s3 Presign Put Request with File upload

* Added imports in test

Co-authored-by: usmankb <usman@krazybee.com>
2020-09-02 07:10:56 +01:00
usmangani1
3ea46617d9
Fix:sqs get-queue-attributes response template (#3255)
* Fix:sqs get-queue-attributes response template

* Fix:removed debug statements

* Modified the template

* "fixed build issues"

* Linting

Co-authored-by: usmankb <usman@krazybee.com>
Co-authored-by: Bert Blommers <info@bertblommers.nl>
2020-09-01 18:05:25 +01:00
Peter Baumgartner
94c676b9cf
include=["TAGS"] for describe_task_definition (#3265)
* include=["TAGS"] for describe_task_definition

* Different approach

* describe_services tags and tests
2020-09-01 10:24:08 +01:00
xsphrx
236ab59afe
added cognito-idp initiate_auth and PASSWORD_VERIFIER challenge to respond_to_auth_challenge (#3260)
* added cognito-idp initiate_auth and PASSWORD_VERIFIER challenge to respond_to_auth_challenge

* fixed for python2

* added mfa, REFRESH_TOKEN to initiate_auth, SOFTWARE_TOKEN_MFA to respond_to_auth_challenge

* added negative tests

* test
2020-09-01 09:20:31 +01:00
usmangani1
bcf61d0b09
Fix: Api-Gateway ApiKeyAlreadyExists headers change. (#3162)
* Fix: Api-Gateway ApiKeyAlreadyExists headers change.

* Added test for non decorator

* Fixed cli errors

* Fix:fixed build errors

* Fix: assert only in case of non server mode

Co-authored-by: usmankb <usman@krazybee.com>
2020-09-01 08:25:59 +01:00
usmangani1
0a89f9d1df
Fix:SQS:Added Non existent queue name in ERROR RESPONSE (#3261)
* Fix:SQS:Added Non existent queue name in ERROR RESPONSE

* Linting

Co-authored-by: Bert Blommers <info@bertblommers.nl>
2020-08-27 17:31:20 +01:00
usmangani1
1c939a5f06
Fix:EC2-Create-Subnet availability Zone Id support (#3198)
* Fix:EC2-Create-Subnet availability Zone Id support

* Linting

* Fix:fixed build errors

* linting

Co-authored-by: Bert Blommers <bblommers@users.noreply.github.com>
Co-authored-by: Bert Blommers <info@bertblommers.nl>
Co-authored-by: usmankb <usman@krazybee.com>
2020-08-27 16:31:39 +01:00
jweite
49d92861c0
Iam cloudformation update, singificant cloudformation refactoring (#3218)
* IAM User Cloudformation Enhancements: update, delete, getatt.

* AWS::IAM::Policy Support

* Added unit tests for AWS:IAM:Policy for roles and groups.  Fixed bug related to groups.

* AWS:IAM:AccessKey CloudFormation support.

* Refactor of CloudFormation parsing.py methods to simplify and standardize how they call to the models.  Adjusted some models accordingly.

* Further model CloudFormation support changes to align with revised CloudFormation logic.  Mostly avoidance of getting resoure name from properties.

* Support for Kinesis Stream RetentionPeriodHours param.

* Kinesis Stream Cloudformation Tag Support.

* Added omitted 'region' param to boto3.client() calls in new tests.

Co-authored-by: Joseph Weitekamp <jweite@amazon.com>
2020-08-27 10:11:47 +01:00
Ciaran Evans
3b06ce689e
Address SFN.Client.exceptions.ExecutionAlreadyExists Not implemented (#3263)
* Add check for existing execution, fix issue with make init

* Remove f-string usage

* Remove fstring usage in test

* Pin black and run formatting on test_stepfunction

* Reverse changes made by black 20.8b1
2020-08-27 08:22:44 +01: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
jmbollard
2a27e457bf
Security group egress ip permissions fix (#3250)
* Add support for Description in egress rule response

* Update SecurityGroup default egress rule ip range

* Remove extra commas

* Remove extra commas

* Lower docker package in Travis

* Add more lambda vars per PR 3247

* Remove code added in 3247

* Add tests for egress rules with Descriptions

* Reformat based on black

Co-authored-by: spillin <jmbollard@me.com>
2020-08-26 14:27:45 +01:00
Guilherme Martins Crocetti
f744356da7
Lambda reserved concurrency (#3215)
* lambda-responses: add method to dispatch concurrency calls

* lambda-resources: add route to handle concurrency requests

* lambda-model: implement put_function_concurrency and concurrency attribute

* put-concurrency-tests: add one simple test

* get_function: add concurrency entry - with test

* lambda-reserved-concurrency: cloudformation support

* lambda-concurrency: implement delete_reserved with tests

* lambda-concurrency: implement get_reserved with tests

* lint

* implementation-cov: mark delete_function_concurrency, put_function_concurrency and get_function_concurrency

* botocore doesn't display concurrency entry for lambdas without it

* lambda(refactor): improvements on response's handler
2020-08-26 11:06:53 +01:00
Kamil Mańkowski
47a227921d
SES: Fix sending email when use verify_email_address (#3242) 2020-08-25 13:51:58 +01:00
Kamil Mańkowski
8a551a9754
[SNS] Mock sending directly SMS (#3253)
* [SNS] Mock sending directly SMS

Proper behaviour when publishing to PhoneNumber is sending
message directly to this number, without any topic or
previous confirmation.

https://docs.aws.amazon.com/sns/latest/dg/sns-mobile-phone-number-as-subscriber.html

* Fix arguments order

* Omit checking local backend when tests in server mode
2020-08-25 13:05:49 +01:00
usmangani1
9894e1785a
Enhancement : Ec2 - Add describe-vpc-endpoint-services method support. (#3108)
* Enhancement : Ec2 - Add describe-vpc-endpoint-services method support.

* Fix:EC2-describe_vpc_endPoint_services changed the template

* Fixed comments

* Linting

Co-authored-by: usmankb <usman@krazybee.com>
Co-authored-by: Bert Blommers <info@bertblommers.nl>
2020-08-06 06:26:44 +01:00
usmangani1
a7ddcd7da3
Fix:EC2-authorize_security_group_ingress- add description to IP-Ranges (#3196)
* Fix:EC2-authorize_security_group_ingress- add description to IP-Ranges

* Fix:EC2-authorize_security_group_ingress- add test when description is not present.

* part commit

* Fix:fixed build errors

* Linting

* Allow for Python2 string/unicodes

Co-authored-by: usmankb <usman@krazybee.com>
Co-authored-by: Bert Blommers <info@bertblommers.nl>
2020-08-04 06:50:57 +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
Yuuki Takahashi
99736c3101
fix clear pending messages when call purge_queue (#3208) 2020-08-03 15:09:25 +01:00
Ninh Khong
061c609a8f
Fix secretsmanager random password wrong length (#3213)
* Enhance function get_parameter by parameter name, version or labels

* Fix random password with exclude characters return wrong length
2020-08-03 13:42:42 +01:00
Anton Grübel
252d679b27
Organizations - implement Policy Type functionality (#3207)
* Add organizations.enable_policy_type

* Add organizations.disable_policy_type

* Add support for AISERVICES_OPT_OUT_POLICY
2020-08-02 10:56:19 +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
Larry Aiello
06ed67a8e5
Implement UserIds for Snapshot Attributes (#3192)
* implement register_image

* format code

* add user_ids to snapshot model

* implement register_image

* format code

* add user_ids to snapshot model

* trying to un-deprecate tests

* Write tests and finalize implementation

* Add region parameter to boto3 resource call

* fixed test error
2020-08-01 17:03:54 +01:00
Iain Bullard
88a1134657
Fix DynamoDb2 ExpressionAttributeNames can start with a number (#3206)
When using pynamodb's support for transactions it makes use of of
ExpressionAttributeNames that look like #0 #1 etc. According to

https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/Expressions.ExpressionAttributeNames.html

And when testing against dynamodb-local these work without issue,
however, when testing with moto they fail.
2020-07-31 17:46:48 +01:00
Anton Grübel
8162947ebb
Organizations - implement Delegated Administrator functionality (#3200)
* Add organizations.register_delegated_administrator

* Add organizations.list_delegated_administrators

* Add organizations.list_delegated_services_for_account

* Add organizations.deregister_delegated_administrator

* Fix Python2 incompatibility
2020-07-31 16:32:57 +01:00
Chris Kilding
943ecb7ea7
Support --filters option in secretsmanager:ListSecrets (#3173)
* Feature: Support --filters opton in secretsmanager:ListSecrets

* Implement some of the secret filters

* Check listSecrets filters combine with an implicit AND operator

* Test all filter and multi-value filter and multi-word filter

* Fix matcher behavior, restructure code

* Implement remaining listSecrets filter cases

* Linter fixes

* Use contains-in-any-order assertions for test_list_secrets

* Linter fix again

* Attempt Python 2 fix for assert_items_equal

* Remove docstrings from test_list_secrets tests as they make the test reports weird

* Test and handle listSecrets filter with no values
2020-07-31 15:31:18 +01:00
Matt Williams
50d71eccbe
Fix XML schema for ec2.describe_instance_types (#3194)
* Add test for describe_instance_types

It currently fails due to an invalid XML schema

* Add more detail to test

* Fix the XML schema for describe_instance_types
2020-07-29 18:36:37 +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
jweite
736c8b77ce
Fixed Failures in CloudFormation Provisioning of S3 Buckets When Stack has Long Name... (#3169)
* Fixed defect with CloudFormation provisioning of S3 buckets occuring when stack has a long name, resulting in the default S3 bucket name's length exceeding its 63 char limit.

* PR 3169 July 23, 2020 2:57a ET comment: added additional asserts to assure provisioned bucket's name complies.  Fixed bug in my earlier change that could produce default bucket names with illegal upper-case characters in it.

Co-authored-by: Joseph Weitekamp <jweite@amazon.com>
2020-07-29 07:47:18 +01:00
Ninh Khong
ff1f565142
Enhance function get_parameter by parameter name, version or labels (#3191)
Co-authored-by: Ninh Khong <ninh@1on1english.vn>
2020-07-28 16:59:22 +01:00
Jordan Reiter
28d1d762af
Enforce parameter naming (#3190)
* Enforce parameter naming

Parameters are not allowed to start with `ssm` or `aws`. This commit adds error messages which
correspond exactly to the error messages returned by boto3.

* Fix for Python 2 compatibility

f-strings not supported in Python 2.7
2020-07-28 15:26:59 +01:00
Ninh Khong
97139d4253
Fix : SQS - Added support for attribute labels for send_message function (#3181)
* Fix : SQS - Added support for attribute labels for send_message function

* Add integration test on receive message function

* Add send message invalid datetype integration test and fix SQS MessageAttributesInvalid exceptions
2020-07-28 14:34:26 +01:00
Jordan Reiter
126f5a5155
Implement Filter: Contains functionality for describe_params (#3189)
* Implement Filter: Contains functionality for describe_params

This commit adds the Contains functionality. Tests were created
to mimic behavior in AWS/boto3, including that filters with values
in the form of `/name` will match parameters named `/name/match` but
not parameters named `match/with/other-name`. In the test example, a
Contains filter with the value `/tan` would match: `/tangent-3` and
`tangram-4` but not `standby-5`.

* Enforce parameter filter restrictions on get_parameters_by_path

According to the boto3 documentation [1], `Name`, `Path`, and `Tier` are not
allowed values for `Key` in a parameter filter for `get_parameters_by_path`.

This commit enforces this by calling `_validate_parameter_filters` from the
`get_parameters_by_path` method, and adding a check to `_validate_parameter_filters`.

I added 3 test cases to `test_get_parameters_by_path` which check for the correct
exception when calling with a parameter filter using any of these keys.

* Code formatted to match style

* Refactored logic
2020-07-28 10:17:35 +01:00
usmangani1
1db42fb865
FIX : IAM - Added support for pathPrefix in list_users_function (#3180)
* FIX:IAM-Added support for pathPrefix in list_users_function

* removed changes for roles

* Added test for non decorator

* changed filter function

Co-authored-by: usmankb <usman@krazybee.com>
2020-07-27 15:32:41 +01:00
usmangani1
bc1674cb19
CF : Added support for get template summary (#3179)
* CF : Added support for get template summary

* Linting

Co-authored-by: Bert Blommers <info@bertblommers.nl>
2020-07-27 14:08:01 +01:00
Bert Blommers
03dd55d39d
Organisations - Put back assertions that got lost in a merge (#3184) 2020-07-27 12:36:31 +01:00
Hector Acosta
cdc4385e2a
Various changes to organizations endpoint (#3175)
* Raise DuplicatePolicyException when a policy with the same name exists

* Implement update_policy

* Implement delete_policy
2020-07-27 12:32:11 +01:00
Steve Pulec
41427a78b6
Merge pull request #3147 from bblommers/enhancement/3139
ECS - UpdateService - Allow service ARN to be passed in
2020-07-26 15:31:12 -05:00
Steve Pulec
7481d07a3d
Merge pull request #3119 from bblommers/bugfix/dynamodb_table_cfn_output
CFN - Allow DynamoDB table as an Output
2020-07-26 15:30:29 -05:00
Steve Pulec
980525c3dd
Merge pull request #3121 from bblommers/bugfix/2104
S3 - Persist metadata for Presigned URL
2020-07-26 15:29:38 -05:00
Larry Aiello
2504a398f9
Implement ec2.register_image() (#3177)
* implement register_image

* format code
2020-07-26 13:51:26 +01:00
Koichi Ogura
448ff45174
fix cognito-idp UserPool ClientId (#3165)
* fix cognito-idp UserPool ClientId

* add test

* replace uuid4 to create_id
2020-07-22 14:08:17 +01:00
ryanlchandler
bf8eb11dc3
Adding MessageGroupId and MessageDeduplicationId (#3163)
Adding MessageGroupId and MessageDeduplicationId when sent from batch (#3101)
2020-07-22 13:09:12 +01:00
Alan Baldwin
b09c8034e6
Adding VPN Gateway filters (#3155)
* Adding attchment.vpc-id, attachment.state, type, and vpn-gateway-id filters for VPN Gateways. fixes #3154

* Run formatting on tests

Co-authored-by: Alan Baldwin <alan.baldwin.jr@gmail.com>
2020-07-21 16:08:49 +01:00
Anton Grübel
a507314d45
RAM - implement CRUD endpoints (#3158)
* Add ram.create_resource_share

* Add ram.get_resource_shares

* Add ram.update_resource_share

* Add ram.delete_resource_share

* Add ram.enable_sharing_with_aws_organization

* Fix server tests

* Add CR suggestions
2020-07-21 14:15:13 +01:00
Aaron Hill
1e5b8acac6
Implementation: ECS Task Sets (#3152)
* initial implementation of taskSets.  Fixed a bug with ECS Service where task_definition was a required parameter.

* Added update_task_set and tests.  DRYed up ClusterNotFoundException. General cleanup.

* Added support for filtering tags on include parameter to describe_task_sets.  Added additional tests.

* Fix copy/pasta in ClusterNotFoundException

* styling updates

* Added TODO for delete_task_set force parameter

* Updated multiple function and constructor calls to use named variables.  Updated tests to reference variables instead of hardcoded strings.

* Run black for formatting

* Updated create_service function call to use named variables
2020-07-21 07:17:37 +01:00
cm-iwata
fdeee07762
Add basic implement for cognito-idp create_resource_server (#3153)
* Add basic implement for cognito-idp create_resource_server

* lint
2020-07-20 12:31:30 +01:00
jweite
ba99c61477
Basic Support for Endpoints, EndpointConfigs and TrainingJobs (#3142)
* Basic upport for Endpoints, EndpointConfigs and TrainingJobs

* Dropped extraneous pass statement.

Co-authored-by: Joseph Weitekamp <jweite@amazon.com>
2020-07-19 15:06:48 +01:00
usmangani1
a123a22eeb
Fix : cloudFormation dynamodb : delete resource on delete stack (#3120)
* Fix :  cloudFormation dynamodb : delete resource on delete stack

* Delete function for dynamodb

* Added tests for delete stack using dynamodb.

* Added tests for non decorator

* Linting

Co-authored-by: Bert Blommers <info@bertblommers.nl>
2020-07-19 11:59:19 +01:00
usmangani1
552b1294df
Fix : EC2 - Added ownerId filter for describe instances (#3149)
* Fix : EC2 - Added ownerId filter for describe instances

* linting
2020-07-19 10:44:58 +01:00
Logan Jones
6fb7867767
Fix: Put Events API (#3145)
* Fix: Put Events API

* Update from code review.

Co-authored-by: Logan Asher Jones <logan@codescratch.com>
2020-07-19 10:00:24 +01:00
usmangani1
09b764148c
Fix : Added implementation for CloudWatch Describe Metric for Alarm (#3148)
* Fix : added implementation for CloudWatch Describe Metric for Alarm

* Linting

Co-authored-by: Bert Blommers <info@bertblommers.nl>
2020-07-18 10:47:53 +01:00
Bert Blommers
f69688b064 ECS - UpdateService - Allow Service ARNs 2020-07-17 12:50:06 +01:00
Bert Blommers
bed769a387
Tech debt - increase test timeouts to remove intermittant test failures (#3146) 2020-07-17 12:11:47 +01:00
jweite
1b80b0a810
Sagemaker models (#3105)
* 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>
2020-07-16 13:12:25 +01:00
Koichi Ogura
3e2a5e7ee8
fix #3133 Cognito Identity Provider : create_user_pool_client GenerateSecret=True doesn't work (#3135)
* fix #3133 Cognito Identity Provider : create_user_pool_client
`GenerateSecret=True` doesn't work

* add test for update_user_pool_client
2020-07-16 09:13:12 +01:00
cm-iwata
419f3fba5a
fix API Gateway:create_usage_plan_key return wrong status code (#3134) 2020-07-15 14:01:03 +01:00
cm-iwata
4e4ce5f9f1
fix API Gateway:create_api_key return wrong status code (#3136) 2020-07-15 12:21:11 +01:00
cm-iwata
1b355f7f06
fix #3131 fix API Gateway:delete_api_key return wrong status code (#3132)
* fix #3131 fix API Gateway:delete_api_key return wrong status code

* lint
2020-07-15 09:41:41 +01:00
cm-iwata
b5c7356b20
fix #3129 API Gateway create_api_key generate wrong default value (#3130) 2020-07-15 07:00:44 +01:00
Mike Fogel
9072153474
Fix dynamodb2 KEYS_ONLY Indexes (#3125)
KEYS_ONLY indexes include table keys.
2020-07-14 13:42:13 +01:00
Adam Richie-Halford
890c3b4954
Make batch.utils.lowercase_first_key() recursive (#3124)
* Make batch.utils.lowercase_first_key() recursive

* Reformat using black

* Add test of recursive lowercase_first_key()

* Fix typo in ttest_batch/test_cloud_formation.py
2020-07-14 11:29:49 +01:00
Anton Grübel
f31f8e08c1
Organizations - implement AWS Service Access functionality (#3122)
* Add organizations.enable_aws_service_access

* Add organizations.list_aws_service_access_for_organization

* Add organizations.disable_aws_service_access
2020-07-14 10:27:39 +01:00
Anton Grübel
55bb4eb08d
Config - implement Organization Conformance Pack functionality (#3116)
* Add config.put_organization_conformance_pack

* Add config.describe_organization_conformance_packs

* Add config.get_organization_conformance_pack_detailed_status

* Add config.describe_organization_conformance_pack_statuses

* Add config.delete_organization_conformance_pack

* Add an update method to OrganizationConformancePack
2020-07-13 09:30:55 +01:00
Bert Blommers
8b63421321 S3 - Only add metadata once; use binary file content 2020-07-12 18:29:10 +01:00
usmangani1
c5de56ce70
Fix: CloudFormation support status filter in list stacks (#3115)
* Fix: CloudFormation support status filter in list stacks

* Added test for non decorator

Co-authored-by: usmankb <usman@krazybee.com>
2020-07-12 13:39:42 +01:00
Bert Blommers
b33c5dff06 #2104 - S3 - Persist metadata for Presigned URL 2020-07-12 13:33:46 +01:00
Bert Blommers
80761ebb3b #3114 - Allow DynamoDB table as CFN output 2020-07-11 09:46:03 +01:00
ngander64
069c159492
Always return 'HardExpiry' for account password policy. (#3117)
Co-authored-by: Nick B Gander <NGANDER@amfam.com>
2020-07-11 09:38:33 +01:00
Adam Richie-Halford
766f527d37
Add NUMBER and LIST<NUMBER> parsing to cloudformation/parsing.py (#3118)
* Add NUMBER and LIST<NUMBER> parsing to cloudformation/parsing.py

* Fix black formatting error in test_stack_parsing.py
2020-07-11 08:43:45 +01:00
usmangani1
81be4b37a1
Fix: Ec2 - add destinationIpv6CIDR support. (#3106)
* Fix: Ec2 - add destinationIpv6CIDR support.

* removing unneccessary debug statements

* modifying existing test case

* Linting

Co-authored-by: usmankb <usman@krazybee.com>
Co-authored-by: Bert Blommers <info@bertblommers.nl>
2020-07-07 14:32:55 +01:00
Mike Grima
1299fef8b8
Merge pull request #3107 from ninhkd/add-region-response-vpc-peering-connections
Fix: Ec2 - add VPCPeeringConnections region response support.
2020-07-05 10:28:27 -07:00
Ninh Khong
b7671819df Update code lint 2020-07-05 23:04:34 +07:00
Ninh Khong
87eb8a21d6 Update unittest checking region response in accept_vpc_peering_connection and describe_vpc_peering_connects functions 2020-07-05 22:09:57 +07:00
Mike Grima
c1cffec674
Merge pull request #3103 from shano/fix-invalid-yaml-parsererror
Cloudformation: Fix - validate template yml fixes
2020-07-04 12:28:17 -07:00
Steve Pulec
144d683cf4
Merge pull request #3097 from bblommers/dynamodb-gsi-projectiontype
Feature: DynamoDB: Support projectiontype KEYS_ONLY for GSI/LSI
2020-07-03 20:53:44 -05:00
Steve Pulec
3ccf8f6cbf
Merge pull request #3083 from bblommers/s3-delete-object-tagging
S3: Delete Object Tagging
2020-07-03 20:52:15 -05:00
Steve Pulec
f061fbf6b9
Merge pull request #3081 from bblommers/cognitoidp_return_kid_header
CognitoIDP: Return kid header as part of respond_to_auth_challenge
2020-07-03 20:51:34 -05:00
Alex Bainbridge
c1326ed8cc removed done comments 2020-07-03 13:25:03 -04:00
Alex Bainbridge
bedcc83995 Merge branch 'master' into ssm_docs 2020-07-03 10:15:56 -04:00
Dawn James
b225e96ae0
Application Autoscaling basic features (#3082)
* Placeholder to test Application Autoscaling.

* Wire everything together and create a first passing test without any real functionality.

* Get one test working properly.

* Add some TODO items.

* Reformat code with black

* Second passing test for describe_scalable_targets.

* New test for NextToken.

* Add some tests for ParamValidationError and ValidationException.

* black

* Ensure scalable targets are being captured in an OrderedDict() for deterministic return later.

* Add validation to describe_scalable_targets and register_scalable_target.

* Fix tests.

* Add creation_time, refactor, add ECS backend, and add failing test for checking that ecs service exists.

* Add parameter validation.

* Improved documentation for CONTRIBUTING.md

Adds some details to give people an idea what's involved in adding new features/services

* Integrate with ECS.

* black

* Refactor to allow implementation of SuspendedState.

* Complete support for SuspendedState.

* Bump up implementation coverage percentage.

* Tidy up code; add comments.

* Implement suggested changes from code review.

* Minor refactorings for elegance.

* README update

Co-authored-by: Bert Blommers <bblommers@users.noreply.github.com>
2020-07-03 14:23:17 +01:00
Bert Blommers
4e0d588307 DynamoDB - Allow ProjectionType to be set for LSIs 2020-07-03 14:20:04 +01:00
Bert Blommers
06b390b493 Merge branch 'master' into dynamodb-gsi-projectiontype 2020-07-03 14:08:32 +01:00
Shane
aab0e2ffa2
Merge remote-tracking branch 'upstream/master' into fix-invalid-yaml-parsererror 2020-07-03 10:57:57 +01:00
Steve Pulec
385c78a996
Merge pull request #3099 from bblommers/region-stored-in-user-agent
Transfer Region in UserAgent-header
2020-07-02 19:47:18 -05:00
Alex Bainbridge
487829810f passes python3 and 2.7. added additional few tests for coverage bump 2020-07-02 13:43:14 -04:00
Shane
0f062f68ff
Cloudformation: Fix - validate template yml fixes
This change fixes:
* Replace call to non-existent exception yaml.ParserError
* Catches yaml scanner error for valid json with tabs
* Supply yaml loader to ensure yaml loading throws exception validly for json with tabs and doesn't try to load the json incorrectly
2020-06-30 22:35:47 +01:00
Alex Bainbridge
ccaa33504a Merge branch 'master' into ssm_docs 2020-06-30 12:59:01 -04:00
Alex Bainbridge
c9b38e25b8 black linting 2020-06-30 12:43:42 -04:00
Alex Bainbridge
82825787db all tests passing 2020-06-30 12:39:52 -04:00
Bert Blommers
8ff32bf4fa Append region-info to UserAgent-header, if it already exists 2020-06-30 15:00:08 +01:00
Alex Bainbridge
bdc1e93a4f most of testing is done 2020-06-29 18:20:57 -04:00
Bert Blommers
8a092c91ae DynamoDB - Add support for GSI's ProjectionType: KEYS_ONLY 2020-06-27 11:07:15 +01:00
Adrian
73813460b6
Fix condition filtering bug in elbv2.create_rule() (#3092)
* Fix condition filtering bug

* Update test_handle_listener_rules unit test

* Run black
2020-06-27 09:42:32 +01:00
Alex Bainbridge
e2f6544228 ssm document code done, testing now 2020-06-26 10:47:28 -04:00
Shane Dowling
80c53d8b5a
Add support for template urls in cfn validation (#3089)
Added as boto supports both TemplateBody and TemplateUrl

* Adds TemplateURL as a validate_template option
* Adds a test to validate this
2020-06-26 14:01:57 +01:00
Bert Blommers
f27e29e04d Cognito - Dont run test in ServerMode 2020-06-20 12:48:10 +01:00
Bert Blommers
9ed7ba58df S3 - Implement delete_object_tagging 2020-06-20 12:15:29 +01:00
Bert Blommers
655b92a2a4 Simplify Cognito test - auto decode JSON 2020-06-20 11:05:06 +01:00
Bert Blommers
dd556a66c6 CognitoIDP - Return KID in headers of ID token 2020-06-20 10:43:02 +01:00
Dawn James
8ce12027dd
Return correct error when creating a bucket with empty CreateBucketConfiguration (#3079)
* Several updates to the contributor documentation with extra information.

* Fix failing test by providing a region.

* Create test for issue 2210.

* Check if CreateBucketConfiguration is supplied and empty; raise MalformedXML error if so.
2020-06-19 11:44:43 +01:00
Shane Dowling
6305f707d2
fix to capture yaml scanner error (#3077) 2020-06-18 09:50:58 +01:00
Maxim Kirilov
610bf36f3b
Improve parsing of string values that represents booleans during block device mapping construction (#3073)
* convert str into bool

* Fix python2

* Fix python2

* pylint
2020-06-16 06:03:02 +01:00
usmangani1
5988e5efaa
EC2 : Fix - modified volume type in ec2 describe images. (#3074)
* "modified volume type in ec2 describe images"

* removed unncessary comments

* Linting

Co-authored-by: usmankb <usman@krazybee.com>
Co-authored-by: Bert Blommers <info@bertblommers.nl>
2020-06-15 10:32:43 +01:00
Steve Pulec
09c061e8a8
Merge pull request #3072 from bblommers/cloudformation-check-name-in-use
CloudFormation - Check stack name in use
2020-06-14 14:01:48 -05:00
Guilherme Martins Crocetti
0dd41d4c32
Cloudformation support for EventSourceMapping (#3045)
* change line position for uuid and last_modified because they're not input parameters

* add event_source_arn validator and setter

* refactor batch_size as setter

* add helper function to parse arn and return source service

* fix for EventSource's create_from_cfn, there was no reference in the lambda object for the esm if created by cfn

* add esm deletion by cloudformation

* remove unused variable in test

* add cfn's update

* add complete implementation of delete_from_cfn

* blacked changed files

* fix test with invalid batchsize for sqs

* Dynamodb2 Table - Bugfix for localindex and implemented get_cfn_attributes

* Dynamodb2 eventsource - fix test to use StreamArn attribute

* Lambda Test - fix test_update_event_source_mapping
2020-06-14 16:03:00 +01:00
Bert Blommers
4556a2f96f #1954 - CF - Check stack name in use 2020-06-14 11:31:44 +01:00
Tomoya Kabe
849f16ff2d
Correct group inline policy rendering (#3069)
* Correct group inline policy rendering in iam:GetAccountAuthorizationDetails response

* Include user inline policy if exists

* Add tests for IAM inline policies

* Remove unnecessary print stmts
2020-06-14 09:23:52 +01:00
Steve Pulec
1f2e6b8925
Merge pull request #3071 from bblommers/dynamodb_gsi_add_throughput
DynamoDB - Add default GSI throughput
2020-06-13 18:59:33 -05:00
Bert Blommers
bbe1320e7c DynamoDB - Add default GSI throughput 2020-06-13 20:27:05 +01:00
usmangani1
475f022b78
Enhancement: EC2 added create route with networkInterfaceId (#3063)
* Enhancement:EC2- create route with network interfcaeID

* modifying existing test case

* Linting

Co-authored-by: usmankb <usman@krazybee.com>
Co-authored-by: Bert Blommers <info@bertblommers.nl>
2020-06-12 16:16:55 +01:00
Steve Pulec
ee0328b0a3
Merge pull request #3050 from bblommers/cloudformation-support-dynamodb-streams
CloudFormation - Support DynamoDB Streams
2020-06-11 20:58:19 -05:00
Steve Pulec
5b505e535c
Merge pull request #3047 from bblommers/dynamodb-batch-keysize-validation
#3046 - DynamoDB - Add Key-size Validation for BatchGetItem
2020-06-11 20:52:36 -05:00
Steve Pulec
46f6f7822f
Merge pull request #3053 from bblommers/impl_coverage_improv
Improve implementation coverage
2020-06-11 20:49:58 -05:00
ktrueda
5880d31f7e
Implemented Athena create_named_query, get_named_query (#1524) (#3065)
* Implemented Athena create_named_query, get_named_query
2020-06-11 17:27:29 +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
usmangani1
dcde2570b1
Enhancement : SES - Added create-receipt-rule-set, create-receipt-rul… (#3059)
* Enhancement : SES - Added create-receipt-rule-set, create-receipt-rule functionalities.

* Linting

Co-authored-by: usmankb <usman@krazybee.com>
Co-authored-by: Bert Blommers <info@bertblommers.nl>
2020-06-10 10:23:43 +01:00
Kristopher Chun
fbc5769b74
Fix: SecretsManager - Added missing pop() override to get_secret_name… (#3057)
* Fix: SecretsManager - Added missing pop() override to get_secret_name_from_arn (#3056)

* Added test case for delete_secret_force_with_arn (#3057)

* Fixed lint for test_delete_secret_force_with_arn (#3057)
2020-06-10 08:54:03 +01:00
usmangani1
b1d515c929
Enhancement : API-Gateway Put Integration Response - Adding support f… (#3058)
* Enhancement : API-Gateway Put Integration Response - Adding support for contentHandling.

* Added tests where the contentHandling is None also gets tested.

* Linting

Co-authored-by: usmankb <usman@krazybee.com>
Co-authored-by: Bert Blommers <info@bertblommers.nl>
2020-06-10 07:58:40 +01:00
Bert Blommers
20784a2d67 Improve implementation coverage 2020-06-06 13:15:50 +01:00
Guilherme Martins Crocetti
e32a60185f
Cloudformation - EventBus support (#3052)
* add EventBus to model's map

* add support for creation of EventBus through cloudformation's api

* add cloudformation's delete

* add cloudformation's update

* add cloudformation's attribute
2020-06-06 11:31:14 +01:00
Bert Blommers
a66b0e5b1a CloudFormation - Support DynamoDB Streams 2020-06-04 07:45:00 +01:00
Bert Blommers
d21088699e Linting 2020-06-03 17:14:48 +01:00
Bert Blommers
b0da78c29d
Update test_dynamodb.py 2020-06-03 16:15:46 +01:00
Bert Blommers
9ca10e3630 #3046 - DynamoDB - Add Key-size Validation for BatchGetItem 2020-06-03 15:36:32 +01:00
Guilherme Martins Crocetti
149e307bc9
Rule's cloudformation support for updates (#3043)
* add support to update stack using cloudformation

* blacked test file
2020-06-03 06:54:01 +01:00
Jeremie Tharaud
90e200f0f6
Add missing changes when creating a change set (#3039)
* Display changes when creating a change set

* add change set id and description when describing stack

* fix lint with flake8 and black
2020-06-03 06:08:35 +01:00
Victor Le Fichant
cb600377b4
Fix incorrect response for put-targets action (#3037) 2020-06-02 16:31:42 +01:00
usmangani1
2433d64fe2
Fix: SecretsManager Added VersionIdsToStages key in describe_secret function (#3029)
* Fix: SecretsManager Added VersionIdsToStages key in describe_secret function

* Added more assertions

* Linting

Co-authored-by: usmankb <usman@krazybee.com>
Co-authored-by: Bert Blommers <info@bertblommers.nl>
2020-05-29 12:31:41 +01:00
Jeremie Tharaud
8fa625c3de
Cfn change set fix outputs (#3033)
* set creation time of the change set

* fix status, execution status, stak id, creation time and update tests
2020-05-29 07:33:24 +01:00
usmangani1
7a6d78afde
Fix: Cloudwatch delete Alarm status code handling on invalid alarm name (#3028)
* CloudWwatch delete Alarm status code handling on invalid alarm Name

* Handled cases where a mix of existent and non existent alarms are tried to delete

* Linting

Co-authored-by: usmankb <usman@krazybee.com>
Co-authored-by: Bert Blommers <info@bertblommers.nl>
2020-05-28 15:52:56 +01:00
Jeremie Tharaud
162a38bb10
fix missing sure package and region_name (#3031) 2020-05-28 14:14:09 +01:00
jweite
4303123312
Implemented IAM delete_instance_profile (#3020)
* Implemented IAM delete_instance_profile

* PR adjustment: positively verifying instance profile deletion in test case.

Co-authored-by: Joseph Weitekamp <jweite@amazon.com>
2020-05-27 18:22:06 +01:00
jweite
4d3e3c8c5e
implemented s3 default encryption methods (#3022)
* implemented s3 default encryption methods

* PR adjustments: moved logic for retrieving bucket's encrypted status to the backend.

Co-authored-by: Joseph Weitekamp <jweite@amazon.com>
2020-05-27 17:21:03 +01:00
jweite
b7a1b666a8
Corrected bug in IAM delete_role() due to overloading of name 'role' … (#3019)
* Corrected bug in IAM delete_role() due to overloading of name 'role' in function

* PR-requested fixes: added region to tests boto client create, reformatted with black

Co-authored-by: Joseph Weitekamp <jweite@amazon.com>
2020-05-27 17:00:28 +01:00
André Nardy
97a6e8d9e8
Enhancement/describe network acls (#3003)
* update describe_network_acls and create unit test

* add fail test case

* adjustment after feedback

* fix result test
2020-05-26 11:04:59 +01:00
Steve Pulec
4f42ba93d8
Merge pull request #3025 from bblommers/sqs_fix_message_group_behaviour
SQS: fix message group behaviour
2020-05-24 12:06:28 -05:00
Aidan Rowe
93feeec1b7
SFN - fix InvalidARN exception on start_execution (#3007) 2020-05-24 15:06:02 +01:00
Maxim Kirilov
2320e82647
Add support for detaching volumes upon instance termination (#2999) 2020-05-24 12:22:45 +01:00
Zach Brookler
31ce74a842
Fix autoscaling tags (#3010)
* ENH: Add unit test for propagation tags

* BUG: Add missing translation of boolean PropagateAtLaunch tag values to strings

* BUG: Should really be checking for "true" and not True

* CLN: Black formatting
2020-05-24 12:21:29 +01:00
Bert Blommers
1ef3094e45 SQS - Return multiple group-messages in the same request 2020-05-24 12:12:35 +01:00
Ben
8daafaec58
Add tag get_resource support for target groups (#3012) 2020-05-24 10:25:38 +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
Zach Brookler
80b64f9b3f
Cloud formation "depends_on" #2845 Add depends on and update name type mapping (#2994)
* ENH: Add unit test for cloudformation DependsOn

* ENH: Add implementation of retrieving list of resources that account for dependencies

* ENH: Update the name mappings so that they are consistent with the latest cloudformation names

* ENH: Add launch configuration to type names

* ENH: Create subnet for test and test creation with dependencies

* CLN: Code reformatting

* CLN: Remove print statements

* BUG: Fix error resulting in possible infinite loop

* CLN: Remove commented out fixture decorator

* BUG: Remove subnet creation

* CLN: Remove main and ec2 dependencies

* BUG: Add back in instance profile name type

* CLN: Remove print

* BUG: Fix broken unit test

* CLN: Code reformatting

* CLN: Remove main

* ENH: Add autoscaling group name to type names

* ENH: Add unit test for string only dependency and add assertions to unit tests

* ENH: Add unit test for chained depends_on in cloudformation stack

* BUG: Remove f strings for python 2.7 compatibility

* BUG: List needs to be sorted for python2.7

* CLN: Fix code formatting
2020-05-18 09:47:18 +01:00
Steve Pulec
134cceeb12
Merge pull request #2996 from bblommers/athena_start_stop_execution
Athena - Start/Stop query execution, get_work_group
2020-05-16 15:37:42 -05:00
Bert Blommers
ffb521f86b Linting 2020-05-16 15:03:26 +01:00
Bert Blommers
dd20fec9f3 Athena - Start/stop executions 2020-05-16 15:00:06 +01:00
Steve Pulec
0c9d97321e
Merge pull request #2995 from OneMainF/managedblockchain-addnode
Added node actions and other fixes
2020-05-16 08:17:52 -05:00
James Belleau
93311dbd4b Added node actions and other fixes 2020-05-15 19:38:19 -05:00
Steve Pulec
17eb11a8d1
Merge pull request #2989 from bblommers/improve_coverage
Improve Implementation coverage
2020-05-14 17:55:55 -05:00
Steve Pulec
9712acc75f
Merge pull request #2986 from bblommers/dynamodb_transact_errors
#2985 - DynamoDB - TransactWriteItems - Fix error-type returned
2020-05-14 17:54:42 -05:00
Steve Pulec
464fea84f9
Merge pull request #2973 from bblommers/master
Lambda - Return LogResult only if requested
2020-05-14 17:53:49 -05:00
Steve Pulec
0f56539ef9
Merge pull request #2972 from bblommers/ses_validate_raw_email
SES - Validate domain before sending raw email
2020-05-14 17:52:50 -05:00
usmangani1
8d3d43da90
Enhancement Adding SES Functionalities CreateTemplate,GetTemplate,Lis… (#2987)
* Enhancement Adding SES Functionalities CreateTemplate,GetTemplate,ListTemplates

* Linting

Co-authored-by: usmankb <usman@krazybee.com>
Co-authored-by: Bert Blommers <info@bertblommers.nl>
2020-05-13 12:29:34 +01:00
James Belleau
9bc393801f
Managedblockchain member additions (#2983)
* Added some member and proposal functions

* Added additional member and proposal functions

* Fixed admin password return and added update_member along with tests

* Added network removal and member removal proposal

* Fixed failing test

* Fixed Python 2.7 test
2020-05-13 12:28:22 +01:00
Bert Blommers
d680b1e025 Merge remote-tracking branch 'spulec/master' into improve_coverage 2020-05-12 15:02:24 +01:00
usmangani1
774a764b69
Fix s3 Added Error handling in case of invalid uploadID (#2979)
* Added Error handling in case of invalid uploadID

* Linting

* added assertions

* Linting

Co-authored-by: usmankb <usman@krazybee.com>
Co-authored-by: Bert Blommers <info@bertblommers.nl>
2020-05-12 14:59:07 +01:00
Bert Blommers
ddb5c30d34 Improve implementation coverage (and layout) 2020-05-12 14:58:35 +01:00
Anton Grübel
e73a694219
Add CloudWatch logs subscription filters (#2982)
* Add logs.describe_subscription_filters

* Add logs.put_subscription_filter

* Add logs.delete_subscription_filter

* Change to usage of ACCOUNT_ID
2020-05-12 13:34:10 +01:00
Bert Blommers
48aa8ec3f9 #2985 - DynamoDB - TransactWriteItems - Fix error-type returned 2020-05-11 15:33:24 +01:00
Maxim Kirilov
1e0a7380d5
Add support for BlockDeviceMappings argument (#2949)
* Add support for BlockDeviceMappings argument upon run_instances execution

* Remove redundant check for Ebs existence
2020-05-11 13:23:45 +01:00
Denver Janke
9618e29ba9
Always call update ELBs for ASGs (#2980) 2020-05-11 07:44:26 +01:00
Anton Grübel
65e790c4eb
Add dynamodb continuous backups (#2976)
* remove print statement

* Add dynamodb.describe_continuous_backups

* Add dynamodb.update_continuous_backups

* Fix Python 2 timestamp error
2020-05-08 15:57:48 +01:00
pvbouwel
9e7803dc36
[Bugfix] UpdateExpression using ADD from zero (#2975)
When using the ADD syntax to sum up different components
the path that is provided is allowed to be non-existent.
In such a case DynamoDB will initialize it depending on
the type of the value.
If it is a number it will be initialized with 0.
If it is a set it will be initialized with an empty set.
2020-05-07 21:29:20 +01:00
Bert Blommers
0718525a2a Linting 2020-05-07 12:29:18 +01:00
Bert Blommers
f1f7ddb69d
Merge pull request #2970 from rigaspapas/opsworks-online-status
Fix the online status in OpsWorks
2020-05-07 12:27:53 +01:00
Bert Blommers
e4caea586d
Merge pull request #2957 from OneMainF/add-managedblockchain
Add managedblockchain network functions #2956
2020-05-07 11:47:18 +01:00
Bert Blommers
ed109dae91
Merge pull request #2966 from usmangani1/SES_mod
SES get send statistics response modification
2020-05-07 11:30:32 +01:00
Bert Blommers
f82e834225 Lambda - Only return Logs if LogType=Tail 2020-05-07 10:55:15 +01:00
Bert Blommers
be5b1c592f Lambda - Add actual logs to LogResult, instead of replicating the response 2020-05-07 10:40:24 +01:00
Bert Blommers
dcb122076f Linting 2020-05-07 09:53:07 +01:00
Bert Blommers
691e206854 SES - Validate domain before send_raw_email 2020-05-07 09:49:37 +01:00
Rigas Papathanasopoulos
4abd88f95c
Fix the online status in OpsWorks
When an instance is running, OpsWorks reports its status as "online"
[1], while EC2 reports it as "running". Until now, moto copied the EC2
instance's status as is. This commit introduces the converts the running
status to online when returned by OpsWorks.

[1]: https://docs.aws.amazon.com/cli/latest/reference/opsworks/describe-instances.html
2020-05-07 10:57:27 +03:00
James Belleau
811ec3bd2a Added get network test 2020-05-06 21:54:59 -05:00
James Belleau
5ec814a604 Fixes and additional tests 2020-05-06 21:12:48 -05:00
Brian Pandola
55f207050e Add Redshift.ClusterAlreadyExists Error
Closes #2967
2020-05-06 14:28:40 -07:00
Bert Blommers
2052a07ff7
Merge pull request #2962 from Chagui-/master
Implement parentGroup, namePrefixFilter and recursive for list_thing_groups()
2020-05-06 17:00:05 +01:00
usmankb
2b0e7da998 SES get send statistics response modification 2020-05-06 20:28:50 +05:30
Chagui-
8bfc7ed760 Fixed python2 2020-05-06 10:28:13 -04:00
Chagui-
c51ef87f71 black 2020-05-06 09:43:34 -04:00
Chagui-
f7b0484428 Refactored test_describe_thing_group_metadata_hierarchy to use generate_thing_group_tree 2020-05-06 09:37:43 -04:00
Chagui-
0869c83ea5 Refactored test_delete_thing_group to use generate_thing_group_tree 2020-05-06 09:32:47 -04:00
Chagui-
5fd8179653 Refactored test_list_thing_groups into class TestListThingGroup 2020-05-06 09:29:16 -04:00
Chagui-
40d1c8c9b9 Added generate_thing_group_tree function 2020-05-06 09:10:42 -04:00
gruebel
3b8c8fafe2 Fix ssm.get_parameters missing validation 2020-05-06 14:38:25 +02:00
Chagui-
e114eb9383 Added test test_list_thing_groups() 2020-05-05 18:08:56 -04:00
Bert Blommers
323877c15d
Merge pull request #2954 from usmangani1/LSTACK_AWSPROXY
Fix response_parameter being ignored in put_integration_response
2020-05-04 11:04:54 +01:00
Bert Blommers
2c9409faaa
Merge pull request #2946 from usmangani1/LSTACKISSUE909
SES Enhancement Adding  get_send_statistics,create_configuration_set functions.
2020-05-04 10:07:03 +01:00
Bert Blommers
d6875c25cc Linting 2020-05-04 09:27:57 +01:00
Bert Blommers
353bc08ac2 Linting 2020-05-04 09:24:46 +01:00
James Belleau
4365c2bd4e Added network functions 2020-05-03 18:13:40 -05:00
usmankb
1cda64e9a3 Added tests 2020-05-03 08:31:46 +05:30
Kevin Neal
52cbdd72e7 update SQS MaximumMessageSize from 64K to 256K 2020-05-02 16:40:52 -07:00
Rifqi Al Fatih
f23f706825 Implement placement constraints model 2020-05-02 18:47:59 +02:00
Steve Pulec
8a1b24b234
Merge pull request #2947 from usmangani1/LSTACKISSUE1658
Fix SQS send_message_batch empty array Exception handling
2020-05-01 15:50:08 -05:00
Steve Pulec
464a9db192
Merge pull request #2945 from bblommers/feature/dynamodb_atomic_counter3
DynamoDB - Implement atomic counter
2020-05-01 15:47:53 -05:00
usmankb
1431348161 Fix SQS send_message_batch empty array Exception handling 2020-05-02 01:33:58 +05:30
usmankb
440213f854 Enhancement Adding SES get_send_statistics,create_configuration_set functions 2020-05-01 21:16:33 +05:30
Bert Blommers
2e737a6102 DynamoDB - Add tests to verify Atomic Counter functionality 2020-05-01 14:19:20 +01:00
Bert Blommers
49b00942c3 S3 DeleteObjects - Allow multiple querystring formats 2020-05-01 13:50:11 +01:00
Chagui-
95c459a86d Added exception for deleting a group which has childs.
Added better tests for delete_thing_group
2020-04-30 17:21:45 -04:00
zscholl
1f1404352e use conditional TEST_SERVER_MODE for backend tests 2020-04-30 09:42:22 -05:00
zscholl
0423be259a remove backend logic & py27 incompatible timezone 2020-04-30 09:10:42 -05:00
zscholl
51e7002cbb add tests 2020-04-30 09:10:42 -05:00
Bert Blommers
2d0087d500 Linting 2020-04-29 16:29:25 +01:00
usmankb
f4888da334 added test asserts and review comments 2020-04-29 18:02:02 +05:30
usmankb
84100c4483 enhancement Create-VPC-endpoint 2020-04-29 00:28:19 +05:30
Steve Pulec
f33e810e15
Merge pull request #2921 from getglad/support_optin_regions
Support OptInStatus for EC2 describe_region calls
2020-04-27 19:42:04 -05:00
Matthew Gladney
ff1beea280 Merge https://github.com/spulec/moto into support_optin_regions 2020-04-27 18:27:40 -04:00
Alessandro Palumbo
05860fcdd1 Fixed apigateway usage plan api when dealing with non existing usage plans and non existing api keys 2020-04-27 22:58:51 +02:00
Mike Grima
dd22e7855a Fixed a regression with CloudWatch 2020-04-27 12:56:17 -07:00
Bert Blommers
b5a894dd89
Merge pull request #2919 from antoinewdg-mt/fix-s3-delete-objects-with-versioning
Handle VersionId in S3:delete_objects
2020-04-27 15:38:06 +01:00
Steve Pulec
30a98de687
Merge pull request #2924 from pvbouwel/ddb_full_parsing_executor
Improve DDB expressions support4: Execution using AST
2020-04-26 15:53:25 -05:00
Steve Pulec
60bcb46729
Merge pull request #2894 from microe/add_sts_assume_role_with_saml
Add the STS call assume_role_with_saml
2020-04-26 15:25:38 -05:00
Steve Pulec
2b255b0c5b
Merge pull request #2879 from bblommers/feature/dynamodb_transact_write_items
Feature: DynamoDB: transact_write_items
2020-04-26 15:20:19 -05:00
pvbouwel
ec731ac901 Improve DDB expressions support4: Execution using AST
Part of structured approach for UpdateExpressions:
 1) Expression gets parsed into a tokenlist (tokenized)
 2) Tokenlist get transformed to expression tree (AST)
 3) The AST gets validated (full semantic correctness)
 4) AST gets processed to perform the update -> this commit

This commit uses the AST to execute the UpdateExpression.
All the existing tests pass. The only tests that have been
updated are in test_dynamodb_table_with_range_key.py because
they wrongly allow adding a set to a path that doesn't exist.
This has been alligend to correspond to the behavior of AWS
DynamoDB.

This commit will resolve https://github.com/spulec/moto/issues/2806
Multiple tests have been implemented that verify this.
2020-04-26 15:59:12 +01:00
Bert Blommers
6a41573eb8
Merge pull request #2920 from lukaszpierog/handle-tags-and-description-in-secrets
Do not remove tags after secret update, handle description
2020-04-26 10:29:02 +01:00
Bert Blommers
56aa454397 Merge branch 'master' into feature/dynamodb_transact_write_items 2020-04-26 10:24:27 +01:00
Steve Pulec
efbb9c54a5
Merge pull request #2909 from oliparcol/bug/2759
S3 - Allow keys to start with leading slashes
2020-04-25 18:46:25 -05:00
Steve Pulec
fbc431dbff
Merge pull request #2837 from bblommers/bug/2810
EC2 - Explicitly set ebs_optimized to false if not specified
2020-04-25 18:44:48 -05:00
Steve Pulec
229b3ec196
Merge pull request #2838 from bblommers/feature/2388
CloudFormation - CreateChangeSet should not create resources
2020-04-25 18:44:18 -05: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
Steve Pulec
b24b7cb858
Merge branch 'master' into feature/extend_generic_tagger_to_s3 2020-04-25 18:40:50 -05:00
Steve Pulec
a35d1cb780
Merge pull request #2861 from bblommers/feature/883
Lambda - Add test to verify remove_permission functionality
2020-04-25 18:40:05 -05:00
Steve Pulec
365a2d140b
Merge pull request #2864 from bblommers/bugfix/2800
CognitoIdentity - Fix Format of Identity ID
2020-04-25 18:39:43 -05:00
Steve Pulec
b4a11cd19f
Merge pull request #2848 from bblommers/feature/2239
CloudWatch - Initial get-metric-data implementation
2020-04-25 18:39:21 -05:00
Steve Pulec
8595493aee
Merge branch 'master' into feature/dynamodb_item_limit 2020-04-25 18:38:08 -05:00
Steve Pulec
9c3f6c7592
Merge pull request #2825 from bblommers/feature/2699
EC2 - Add option to add volumes using CloudFormation
2020-04-25 18:36:26 -05:00
Steve Pulec
dbeb16d9b9
Merge pull request #2823 from bblommers/bug/2797
DynamoDB - Allow case insensitive AND in KeyConditionExpression
2020-04-25 18:35:51 -05:00
Steve Pulec
f4338876ff
Merge pull request #2834 from bblommers/feature/cloudwatch-integrated-metrics
Cloudwatch  - Add default metrics for other services
2020-04-25 18:35:17 -05:00
JohnWC
4a800d8f2c Updated for black 2020-04-25 11:24:54 -05:00
Olivier Parent Colombel
d852f7dd06 Fixing lint errors. 2020-04-25 17:49:50 +02:00
Olivier Parent Colombel
637e0188a2 Allow S3 keys to start with leading slashes. 2020-04-25 17:49:50 +02:00
JohnWC
0828c5af9d Add unit test for add apigateway with policy 2020-04-25 03:27:59 -05:00
=
b63110be9e handle description in describe secret operation, add tests 2020-04-24 21:47:11 +02:00
Matthew Gladney
59c1f0e131 black reformatting changes 2020-04-24 14:20:58 -04:00
Matthew Gladney
908468edb6 Support OptInStatus for EC2 describe_region calls 2020-04-24 14:15:22 -04:00
Antoine Wendlinger
9ed6e52d0a Handle VersionId in S3:delete_objects
VersionId is not read in delete_objects requests, and the behavior
differs from its singular counterpart delete_object.

This fixes the issue.
2020-04-23 19:01:58 +02:00
Dmitry Ryzhikov
e866df9b9d Merge branch 'master' into fix/table-filter-value-error 2020-04-22 20:08:05 +03:00
Bert Blommers
037c6e1320
Merge pull request #2914 from MarcosBernal/feature/add-get-databases-method-to-glue
Add get_databases method to glue and update IMPLEMENTATION_COVERAGE.md
2020-04-22 16:37:32 +01:00
Daniel Wallace
80b27a6b93
blacken 2020-04-21 21:43:32 -05:00
Daniel Wallace
49b056563a
process multipart form 2020-04-21 19:52:10 -05:00
Daniel Wallace
b3f6e5ab2f
add test 2020-04-21 18:07:50 -05:00
MarcosBernal
9381c670ab change code style to pass black --check 2020-04-21 22:34:05 +02:00
MarcosBernal
753a39ed0d Add get_databases method to glue moto client. Update IMPLEMENTATION_COVERAGE.md with methods that were covered previously 2020-04-21 20:10:39 +02:00
Bert Blommers
12ac1cbae2
Merge pull request #2911 from cm-iwata/fix_2910_list_thing_principal
Added existence check of target thing to IoT ListThingPrincipals
2020-04-21 07:47:12 +01:00
Tomoya Iwata
d9b782be0a fix lint 2020-04-21 14:43:04 +09:00
Tomoya Iwata
b6789a2cc7 Added existence check of target thing to IoT ListThingPrincipals
fix #2910
2020-04-21 14:11:53 +09:00
Dmitry Ryzhikov
1a3a7d6a92 Add test for missing table name 2020-04-20 20:23:37 +03:00
pvbouwel
e6b51a28ee Enable AST Validation
This commit puts AST validation on the execution path. This means updates get
validated prior to being executed. There were quite a few tests that were not
working against Amazon DDB. These tests I considered broken and as such this
commit adapts them such that they pass against Amazon DDB.

test_update_item_on_map()
=> One of the SET actions would try to set a nested element by specifying the nesting on the path
   rather than by putting a map as a value for a non-existent key. This got changed.

test_item_size_is_under_400KB
=> Used the keyword "item" which DDB doesn't like. Change to cont in order to keep the same sizings.
=> Secondly the size error messages differs a bit depending whether it is part of the update or part
   of a put_item. For an update it should be:
   Item size to update has exceeded the maximum allowed size
   otherwise it is
   Item size has exceeded the maximum allowed size'

test_remove_top_level_attribute
=> Used a keyword item.  Use ExpressionAttributeNames

test_update_item_double_nested_remove
=> Used keywords name & first. Migrated to non-deprecated API and use ExpressionAttributeNames

test_update_item_set &
test_boto3_update_item_conditions_pass &
test_boto3_update_item_conditions_pass_because_expect_not_exists &
test_boto3_update_item_conditions_pass_because_expect_not_exists_by_compare_to_null &
test_boto3_update_item_conditions_pass_because_expect_exists_by_compare_to_not_null &
test_boto3_update_item_conditions_fail &
test_boto3_update_item_conditions_fail_because_expect_not_exists &
test_boto3_update_item_conditions_fail_because_expect_not_exists_by_compare_to_null
=> Were broken tests which had string literal instead of value placeholder
2020-04-19 16:58:46 +01:00
pvbouwel
fc4d88401d Improve DDB expressions support3: AST Validation
Part of structured approach for UpdateExpressions:
 1) Expression gets parsed into a tokenlist (tokenized)
 2) Tokenlist get transformed to expression tree (AST)
 3) The AST gets validated (full semantic correctness) -> this commit
 4) AST gets processed to perform the update

This commit uses the AST to perform validation.  Validation makes sure the
nodes encounterd have valid values and they will also resolve values for
references that refer to item state or values passed into the expression.
2020-04-19 16:58:07 +01:00
pvbouwel
9ed613e197 Better DDB expressions support2: ExpressionTree
Part of structured approach for UpdateExpressions:
 1) Expression gets parsed into a tokenlist (tokenized)
 2) Tokenlist get transformed to expression tree (AST) -> This commit
 3) The AST gets validated (full semantic correctness)
 4) AST gets processed to perform the update

This commit uses the tokenlist to build an expression tree. This tree is not
yet used. Still it allows to raise additional Validation Exceptions which
previously were missed silently therefore it allows tests to catch these type of
ValidationException. For that reason DDB UpdateExpressions will be parsed
already. It also makes sure we won't break existing tests.

One of the existing tests had to be changed in order to still pass:
 - test_dynamodb_table_with_range_key.test_update_item_with_expression

This test passed in a numeric literal which is not supported by DynamoDB
and with the current tokenization it would get the same error as in AWS
DynamoDB.
2020-04-18 09:19:03 +01:00
pvbouwel
7ea419dd54 Better DDB expressions support1: TokenizationDDB
Currently the mock for DynamoDB has adhoc code to implement
its updateExpression functionality.  This series will
transform the logic such that Update Expressions are processed
as follows:
 1) Expression gets parsed into a tokenlist (tokenized) -> This commit
 2) Tokenlist get transformed to expression tree (AST)
 3) The AST gets validated (full semantic correctness)
 4) AST gets processed to perform the update

This alows for a more realistic mocking. It will throw exceptions much
more aggressively avoiding situations where a test passes against the
mock but fails with an exception when running against AWS.

Introduction of step 3 also allows to have the update expression as an
atomic unit of work. So updates at the start of the expression cannot
be performed if there is an error further down the expression.

This specific commit will tokenize expressions but the tokenlist is not
yet used. It is purely to keep clear boundaries.  It does do a minor
refactoring of the exceptions to allow more re-use and to ease testing.

This series of changes is to aid providing a long-term solution for
https://github.com/spulec/moto/issues/2806.
2020-04-18 09:16:23 +01:00
Mike Grima
bdeeeb701a
Merge pull request #2880 from bblommers/bugfix/2877
EC2 - Ensure NCI always has a Subnet
2020-04-16 15:02:45 -07:00
Hugo Lopes Tavares
4dc46a697d Bugfix: Allow stop_db_instance for compatible engines
From the RDS documentation:
    You can stop and start a DB instance whether it is configured for a single Availability Zone or for Multi-AZ, for database engines that support Multi-AZ deployments. You can't stop an Amazon RDS for SQL Server DB instance in a Multi-AZ configuration.

https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_StopInstance.html#USER_StopInstance.Limitations
2020-04-16 15:14:37 -04:00
Erik Hovland
88494c58f9 Add a test for assume_role_with_saml.
Add a test with SAML assertion to test the assume_role_with_saml method
in the STSBackend.
2020-04-16 11:47:30 -07:00
Tim
92bbc3fbac Adds initial support for secretsmanager update_secret
The support in this patch is preliminary and may or may not be feature complete.
It provides the basic support for update_secret so that future work can build
on it as needed.
2020-04-16 08:20:43 -07:00
Bert Blommers
870b34ba76 Spacing 2020-04-16 07:09:50 +01:00
Bert Blommers
47d80621f9 Merge branch 'master' into feature/dynamodb_item_limit 2020-04-16 07:07:59 +01:00
Bert Blommers
a6902e8713
Update tests/test_dynamodb2/test_dynamodb.py
Co-Authored-By: Guilherme Martins Crocetti <gmcrocetti@gmail.com>
2020-04-15 07:26:09 +01:00
Bert Blommers
532480a3b5
Merge pull request #2888 from usmangani1/lstack#1991
Added implementation for create-model,get-models,get-model in api gat…
2020-04-14 10:34:39 +01:00
Bert Blommers
69f963a3c2 Linting 2020-04-14 08:06:00 +01:00
Bert Blommers
d0c60ecaac
Merge pull request #2891 from DenverJ/enhancement/autoscaling-standby-terminate
Implement enter_standby, exit_standby and terminate_instance_in_auto_scaling_group
2020-04-14 08:01:50 +01:00
Bert Blommers
c2b4c397f2 DDB test - Fix KeySchema, and set BillingMode for easier online testing 2020-04-14 07:53:15 +01:00
Bert Blommers
b63a6f1336
Merge pull request #2884 from usmangani1/2263_Issue
Adding missing Param zoneId in the ec2 describe-availability-zone
2020-04-14 07:12:51 +01:00
DenverJ
d745dfd3d2 Implement enter_standby, exit_standby and terminate_instance_in_auto_scaling_group 2020-04-13 10:54:13 +10:00
usmankb
79e63e3bcf Added implementation for create-model,get-models,get-model in api gateway 2020-04-12 17:49:22 +05:30
Bert Blommers
755a08e137
Merge pull request #2887 from DenverJ/enhancement/fix-describe-autoscaling-instances-filter
Add instance-id filter to describe_auto_scaling_instances
2020-04-12 11:09:31 +01:00
DenverJ
965046aa39 Fix formatting 2020-04-12 17:08:40 +10:00
DenverJ
593e5dc86a Add instance-id filter to describe_auto_scaling_instances 2020-04-12 13:44:16 +10:00
usmankb
7a9cdd4fd2 Adding missing Param zoneId in the describe-availability-zone 2020-04-11 08:37:00 +05:30
Bert Blommers
48288d8bb1
Merge pull request #2878 from usmangani1/2187_Issue
Adding functionalities aws apigateway create domain name,get domain names,get domain name
2020-04-09 08:58:05 +01:00
Bert Blommers
1654280e43 Linting 2020-04-09 08:12:44 +01:00
usmankb
8542309fc9 conflicts 2020-04-08 22:00:48 +05:30
usmankb
af57cfc7ec Added more tests and coverage 2020-04-08 21:54:26 +05:30
Bert Blommers
414fcf7bbd Fix AvailibilityZones in CF tests 2020-04-08 15:14:39 +01:00
Bert Blommers
8475804a8b Simplify tests 2020-04-08 14:02:35 +01:00
Bert Blommers
5c7e0b56af #2877 - Ensure NetworkInterfaces are assigned to the default Subnet 2020-04-08 13:53:53 +01:00
Bert Blommers
8237fdaff0 Linting 2020-04-08 11:06:30 +01:00
Bert Blommers
54f51fc7c1 DynamoDB - TransactWriteItems implementation 2020-04-08 10:49:58 +01:00
Bert Blommers
3b9717d5b1
Merge pull request #2876 from tmwong2003/tmwong2003/ecs-run-task-support-default-cluster
Changed mock_ecs to support ecs.run_task calls with a default cluster
2020-04-08 07:53:27 +01:00
Theodore Wong
0163eb6a9d Changed mock_ecs to support ecs.run_task calls with a default cluster 2020-04-07 15:32:44 -07:00
usmankb
856c07de63 aws apigateway create,get domain names 2020-04-08 03:18:42 +05:30
Bert Blommers
aae49493c4 Linting 2020-04-07 08:52:37 +01:00
usmankb
81ca5c3ab0 Implemented describe_instance_credit_specifications function in ec2 #2150 localstack 2020-04-06 21:25:59 +05:30
jess
49fd7988ab make black happy 2020-04-06 19:55:54 +10:00
jess
4c2460ddfd fix whitespace changes 2020-04-06 18:45:23 +10:00
jess
b6e73776d5 alter testcase to trigger issue #2868 2020-04-06 18:41:46 +10:00
Bert Blommers
280db9df6c #2800 - CognitoIdentity - Fix format of Identity ID 2020-04-04 14:09:38 +01:00
mickeypash
a6864f483d Use Python 2 format 2020-04-03 14:17:55 +01:00
Bert Blommers
9ab02e17d5 #883 - Lambda - Add test to verify remove_permission functinonality 2020-04-03 10:30:05 +01:00
mickeypash
d3367b8a90 Black formatting 2020-04-03 02:27:46 +01:00
mickeypash
76b9cbe16d Fix test 2020-04-03 02:14:14 +01:00
mickeypash
231b100057 Add test scaffold. Currently broken 2020-04-03 01:58:14 +01:00
Guilherme Martins Crocetti
503eeb51ae style with black 2020-04-01 22:48:40 -03:00
Guilherme Martins Crocetti
c25f6a72da refactor put_rule test 2020-04-01 22:14:51 -03:00
Guilherme Martins Crocetti
c15ca133b8 add support for Fn::GetAtt in event's cloudformation 2020-04-01 22:14:51 -03:00
Guilherme Martins Crocetti
af08d71310 add support for RetentionInDays for LogGroup 2020-04-01 22:14:41 -03:00
Bert Blommers
8dbfd43c5c Use TaggingService for S3 - Cleanup 2020-04-01 15:35:25 +01:00
Bert Blommers
f7ad4cbc09 Use TaggingService for S3 Objects 2020-03-31 12:04:04 +01:00
Mike Grima
0c191ac33b Raise errors on tagging buckets with aws:*
Cannot tag S3 buckets with reserved tag key space `aws:`
2020-03-30 17:27:06 -07:00
Bert Blommers
7d524eaec9 Elastic Beanstalk - Rename and Add Implementation Coverage 2020-03-30 14:08:22 +01: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
Andrea Amorosi
349b381390 Fixed dynamodb2 put_item ValidationException 2020-03-28 17:59:42 +00:00
Bert Blommers
fb0de99e81 #2239 - Initial implementation of CW.get_metric_data 2020-03-28 13:41:17 +00:00
Constantino Schillebeeckx
bb8d418054 fix: stepfunction stop_execution
Fixes #2846

Calling stop_execution on a stepfunction should set the status to `ABORTED` not `SUCCEEDED`.
2020-03-27 15:35:50 -05:00
Bert Blommers
04f488da62 #2388 - CloudFormation - CreateChangeSet does not create resources, as per spec 2020-03-24 10:22:08 +00:00
Bert Blommers
11526ced18 #2810 - EC2 - Explicitly set ebs_optimized to False if not specified 2020-03-24 09:24:38 +00:00
Guilherme Martins Crocetti
788b8fb6e1 Add tests for Events::Rule integration with cf 2020-03-23 22:17:02 -03:00
Bert Blommers
c3865532f9 #2711 - Register default S3 metrics in CloudWatch 2020-03-23 15:53:39 +00:00
Guilherme Martins Crocetti
98a17dfc46 Add test for boto3 integration 2020-03-22 18:03:42 -03:00
Guilherme Martins Crocetti
a1f664d2bb Change put_rule (and it's response) and fix tests_events/ 2020-03-22 17:33:44 -03:00
Guilherme Martins Crocetti
7318523b50 Add cloudformation support for EventBridge 2020-03-22 16:56:58 -03:00
gruebel
23dfecc845 Fix missing MessageAttributes when using RawMessageDelivery 2020-03-21 19:25:25 +01:00
Bert Blommers
e82e1e3f39 DynamoDB - Add 1MB item size check 2020-03-21 12:20:09 +00:00
Bert Blommers
5b596c8a78 #2699 - EC2 - Add Volumes using CloudFormation 2020-03-20 15:17:55 +00:00
Bert Blommers
b1da99aeda #2797 - DynamoDB - Allow case insensitive AND in KeyConditionExpression 2020-03-20 12:29:04 +00:00
Steve Pulec
94f85902bc
Merge pull request #2821 from bblommers/feature/2255
CloudFormation - Add Support for FN:Transform and AWS:Include
2020-03-19 19:40:46 -05:00
Steve Pulec
0903f6a4a2
Merge pull request #2820 from bblommers/bug/2264
SES - Parse email address on verification
2020-03-19 19:39:45 -05:00
Steve Pulec
14b2811157
Merge pull request #2819 from bblommers/dynamodb_global_index_ordering
Dynamodb - Global index ordering
2020-03-19 19:39:09 -05:00
Steve Pulec
b0ea0aa162
Merge pull request #2818 from bblommers/cloudformation_stack_creation_time
Cloudformation - Stack creation time
2020-03-19 19:38:46 -05:00
Steve Pulec
78f5541953
Merge pull request #2817 from bblommers/dynamodb_add_index_status
DynamoDB - Add status to Global Indexes
2020-03-19 19:37:49 -05:00
Bert Blommers
cbf0397953 #2255 - CF - Implement FN::Transform and AWS::Include 2020-03-18 13:02:07 +00:00
Bert Blommers
f0cab68208 #2264 - SES - Ensure verify_email_address works with display names 2020-03-18 11:46:44 +00:00
Bert Blommers
71bf314a0f
Merge pull request #2799 from ImFlog/fix_dynamodb_updated_new
Fix UPDATED_NEW return values differences
2020-03-18 08:21:01 +00:00
Bert Blommers
aead80c392
Add missing region 2020-03-17 17:11:35 +00:00
Bert Blommers
67c7fce85e #2760 - DynamoDB - Ensure proper ordering for Numeric sort keys 2020-03-17 16:28:49 +00:00
Bert Blommers
3fab3f572f #2773 - CloudFormation - Set CreationDate 2020-03-17 16:09:42 +00:00
Bert Blommers
b7da6b9481 #2813 - DynamoDB - Add Global Index Status 2020-03-17 15:41:50 +00:00
Tim Gatzemeier
6e490a9190 make linter happy 2020-03-16 21:58:50 +01:00
Tim Gatzemeier
50974aa9b2 add test cases to ensure actions enabled is correctly returned 2020-03-16 21:45:29 +01:00
Tim Gatzemeier
9d3ee116d3 add test case for actions_enabled field 2020-03-16 20:14:41 +01:00
Steve Pulec
6a887e52cc
Merge pull request #2808 from bblommers/feature/2201
Batch - various fixes
2020-03-15 16:45:57 -05:00
Steve Pulec
77b1cc2321
Merge pull request #2809 from bblommers/feature/dynamodb-transact-get-items
Feature - DynamoDB: transact_get_items
2020-03-15 16:45:03 -05:00
Steve Pulec
e81063aa99
Merge pull request #2802 from bblommers/bugfix/cloudformation-iam-role-name
Cloudformation - Set IAM role name
2020-03-15 16:43:31 -05:00
Steve Pulec
091b6cdef4
Merge pull request #2801 from bblommers/bugfix/cloudwatch_timestamp
Cloudwatch - Fix timestamp format
2020-03-15 16:43:03 -05:00
Steve Pulec
6b97a4ab96
Merge pull request #2796 from bblommers/feature/1054
DynamoDB - Improve error handling for put_item without keys
2020-03-15 16:41:59 -05:00
Steve Pulec
4cf24701c5
Merge pull request #2795 from bblommers/feature/657
S3 - Verify content type is set/returned as appropriate
2020-03-15 16:41:14 -05:00
Steve Pulec
dfe0047077
Merge pull request #2792 from bblommers/bugfix/718
EC2 - Allow filtering by multiple tags
2020-03-15 16:40:33 -05:00
ImFlog
7f6c6660aa Add some new update_new tests 2020-03-13 09:37:50 +01:00
Bert Blommers
71d3941daf Linting 2020-03-12 14:26:23 +00:00
Bert Blommers
caebe222d7 DynamoDB - Transact_get_items - Remove error condition 2020-03-12 14:24:53 +00:00
Tomoya Iwata
b74625db0c add support for dynamodb transact_get_items 2020-03-12 14:15:13 +00:00
Bert Blommers
1b031aeeb0 Linting 2020-03-12 14:07:34 +00:00
Bert Blommers
bb5a54ca4b Batch - Fix tests 2020-03-12 13:37:46 +00:00
mzgierski
ad5314ad06 Enable the test that AWS-Batch describe_jobs fails at. 2020-03-12 12:27:22 +00:00
Brent Driskill
e3e4b741d8 SSM: Fix the formatting associated with label_parameter_version/get_parameter_history updates 2020-03-11 11:57:04 -04:00
Brent Driskill
5705695495 SSM: Added support for label_parameter_version and getting labels on get_parameter_history 2020-03-11 10:43:18 -04:00
Bert Blommers
9163f04292 Linting 2020-03-11 13:19:40 +00:00
Luis Pollo
20364b177a Fix IAM role name when parsed from CloudFormation JSON. 2020-03-11 13:17:35 +00:00
Bert Blommers
0e43369155 Linting 2020-03-11 12:47:40 +00:00
Huang syunwei
ab68d14649 Fix bug of put metric data with timestamp, timestamp should be a date time object instead of a string 2020-03-11 12:47:09 +00:00
ImFlog
ba1bf09474 Fix UPDATED_NEW return values differences between moto and dynamoDB 2020-03-10 18:22:54 +01:00
Bert Blommers
315ac32f09
Add region to test case 2020-03-10 14:28:12 +00:00
Bert Blommers
e9930b0cb2 S3 - test fix - Use plain text as content, instead of file 2020-03-10 13:30:38 +00:00
Bert Blommers
6ba00d9ad1 #1054 - DynamoDB - Improve error handling for put_item without keys 2020-03-10 13:25:40 +00:00
Bert Blommers
f17d5f8e4d #657 - S3 - Verify content type is set/returned as appropriate 2020-03-10 12:56:33 +00:00
Bert Blommers
9eeb375911
Add region to test case 2020-03-10 09:26:44 +00:00
Bert Blommers
dc98fca853 #718 - Allow filtering by multiple tags 2020-03-09 15:14:51 +00:00
Bert Blommers
7b5613b331 #2774 - Re-add test, and update requirements to working botocore 2020-03-09 12:47:44 +00:00
Dick Marinus
28af7412f8 Change RESTError to JsonRESTError for ImageNotFoundException, update test to expect ImageNotFoundException 2020-03-08 20:56:21 +01:00
Steve Pulec
a92f862e86
Merge pull request #2764 from bblommers/feature/ec2-describe-instance-filters
Feature  - EC2 describe_instance_status now uses filters
2020-03-07 11:47:05 -06:00
Steve Pulec
05236684f4
Merge pull request #2763 from bblommers/bugfix/multiple_items_in_ddbstream
DynamoDB Streams: Bugfix when sending multiple items
2020-03-07 11:46:24 -06:00
Steve Pulec
4cb23837e0
Merge pull request #2647 from aimannajjar/2646_create_default_ipv6_egress_rule
Security Groups - Create a second default egress rule for IPv6
2020-03-07 11:33:57 -06:00
Steve Pulec
51da32825d
Merge pull request #2785 from addomafi/master
Enhancement: Adding support to EbsConfiguration on configuration of Instance Groups for an EMR Endpoint
2020-03-07 11:03:27 -06:00
Steve Pulec
3dca5a3fe8
Merge pull request #2772 from bblommers/bugfix/#2567
Bugfix - When mocking URLs, always return the first match
2020-03-07 10:33:34 -06:00
Steve Pulec
f01108f687
Merge pull request #2767 from jrbeilke/feature-config-putevaluations
Feature: Add test mode support for Config PutEvaluations
2020-03-07 10:16:34 -06:00
addomafi
c6eca18434 Reformat 2020-03-06 18:11:07 -03:00
addomafi
23771549c2 #2784 Implementing assertions for testcase with instance groups 2020-03-06 18:10:39 -03:00
addomafi
c8dfbe9575 #2784 Adding missing support for EbsConfiguration on EMR instance groups 2020-03-06 15:12:44 -03:00
Bert Blommers
fbb449aa48 Merge branch 'master' into bugfix/#2567 2020-03-06 12:18:06 +00:00
addomafi
f7acdb9b3a Merge branch 'master' of github.com:spulec/moto 2020-03-06 08:40:05 -03:00
Bert Blommers
a86f459ac9
Merge pull request #2770 from oanise93/fix_ssm_delete_parameter
Changes behavior of delete_parameter when parameter doesn't exist
2020-03-06 08:39:49 +00:00
Bert Blommers
e895c6d6cd
Merge pull request #2779 from jonnangle/feature-failover-geo
Support GeoLocation and Failover on Route 53
2020-03-06 08:39:08 +00:00
Bert Blommers
03164e7b60
Merge pull request #2780 from heyderpd/master
fixing error when _get_default return value that already exists, on _get_appended_list
2020-03-06 08:38:49 +00:00
Bert Blommers
15444bd4f7
Merge pull request #2783 from EpicWink/swf-undeprecate
Add SWF domain and type undeprecation
2020-03-06 08:37:36 +00:00
heyder.dias
f5080e539d fix lint check 2020-03-05 18:39:20 -03:00
addomafi
a9b0677667 #2784 Adding missing support for EbsConfiguration on EMR run_job_flow 2020-03-05 18:11:49 -03:00
heyder.dias
fa7f83bc2f add test to nested if_not_exists and property already exists 2020-03-05 17:05:00 -03:00
Steve Pulec
9024031ca2
Merge pull request #2776 from bblommers/python-2-readyness
Python 2 dependencies + Test fix
2020-03-05 12:58:27 -06:00
Bert Blommers
c6b66cb001 Linting 2020-03-05 17:22:54 +00:00
Bert Blommers
b19cf8a085 #2774 - Run Policy test on different method 2020-03-05 15:49:30 +00:00
Laurie O
916add9ac5
Add SWF domain and type undeprecation
Signed-off-by: Laurie O <laurie_opperman@hotmail.com>
2020-03-05 23:37:17 +10:00
Jon Nangle
bebcf52851 Formatting 2020-03-02 13:07:34 +00:00
Jon Nangle
9fdeaca589 Support GeoLocation and Failover on Route 53 2020-03-02 12:46:15 +00:00
aimannajjar
639c1abcb4 clarifying comment in test case 2020-03-01 08:23:31 -05:00
aimannajjar
5b9b965647 [ec2-sg] added logic to create a second default egress rule for ipv6 2020-02-29 21:05:05 -05:00
Olabode Anise
9227845121 using assert_raises 2020-02-27 07:29:13 -05:00
Bert Blommers
47349b30df #2567 - When mocking URLs, always return the first match 2020-02-27 08:54:57 +00:00
Olabode Anise
607e0a8452 ENH: changes the behavior of delete_parameter to respond with a 400 error when the parameter does not exist.
Currently, the delete_parameter function for the ssm client will respond with a dict containing a key of Invalid Parameter which has a value of a list containing the parameter name that was requested to be deleted when a parameter with said name doesn't exist which doesn't match the behavior of boto3.
2020-02-26 07:13:32 -05:00
Bert Blommers
f8af496445
Merge pull request #2769 from EpicWink/swf-empty-task
Return empty task-token on no-task
2020-02-25 17:05:16 +00:00
Laurie O
209c999706
Keep track of previous started event ID
Closes #2107

Signed-off-by: Laurie O <laurie_opperman@hotmail.com>
2020-02-26 01:08:03 +10:00
Laurie O
369285b7ca Don't 0-default previous started event ID
Signed-off-by: Laurie O <laurie_opperman@hotmail.com>
2020-02-26 01:06:58 +10:00
Laurie O
002683fd13
Return empty task-token on no-task
To match the SWF documentation, an empty task is one where the
task-token is the empty string, rather than being a nonexistant key

Signed-off-by: Laurie O <laurie_opperman@hotmail.com>
2020-02-26 00:19:39 +10:00
Jon Beilke
c3581dbd0b add missing os import for config tests 2020-02-24 13:25:36 -06:00
Jon Beilke
4c43ca362f add workaround for NotImplementedError failing server mode tests 2020-02-24 13:01:38 -06:00
Jon Beilke
28b4305759 add rudimentary support for Config PutEvaluations with TestMode for now 2020-02-24 11:53:27 -06:00
Bert Blommers
3aeb5f5043 Linting 2020-02-24 13:43:58 +00:00
Bert Blommers
939bd1cd86 EC2 - Add some filters for describe_instance_status 2020-02-24 13:43:19 +00:00
Bert Blommers
038ff620b2 DDB Streams - Bugfix where processed items are resend every time 2020-02-24 09:28:52 +00:00
Bert Blommers
736f8b5a8f Refactor - reuse logic that expects CW log message 2020-02-24 08:24:14 +00:00
Steve Pulec
a89c150627
Merge pull request #2761 from bblommers/bugfix/1427
EMR - Return start time of first step
2020-02-22 18:26:01 -06:00
Bert Blommers
dc9129955b
Merge pull request #2758 from brady-gsa/kms-tagging
Kms tagging and untag support
2020-02-22 10:25:43 +00:00
Brady
c162f02091 re-add coverage and remove unused import 2020-02-21 15:39:23 -05:00
Brady
1221d2653a fix test cases, bug when no tags are present and conflict 2020-02-21 15:21:41 -05:00
Bert Blommers
7205ab7785 #1427 - EMR - Return start time of first step 2020-02-20 08:59:21 +00:00
Bryan Alexander
38413577fc fixes bug in resourcetaggingapi/get_kms_tags 2020-02-19 09:18:01 -06:00
Steve Pulec
ec3f6bbc6c
Merge pull request #2757 from jrbeilke/feature-apigw-authorizers
Feature: add support for API Gateway authorizers
2020-02-18 18:52:58 -06:00
Steve Pulec
3f8ea90475
Merge pull request #2756 from EpicWink/swf-workflow-defaults
Support default task-priority and Lambda-role in SWF workflow registration
2020-02-18 18:45:46 -06:00
Steve Pulec
d297fc08f2
Merge pull request #2755 from bblommers/dynamodbstreams_update_item
DynamoDB - Send item to DDB Stream on update, not just on create
2020-02-18 18:15:25 -06:00
Bryan Alexander
d1efedec29 updates kms to use tagging service and support untag_resource 2020-02-18 13:40:34 -06:00
Jon Beilke
40208363be Merge branch 'master' into feature-apigw-authorizers 2020-02-18 10:49:53 -06:00
Jon Beilke
1d14085294 add API Gateway authorizers 2020-02-18 10:49:35 -06:00
Bryan Alexander
445f474534 merging from master 2020-02-18 10:47:05 -06:00
Bert Blommers
100dbd529f
Merge pull request #2742 from xnegativx/master
MessageAction for cognito admin_create_user is now handled
2020-02-18 13:41:02 +00:00
Bert Blommers
5863d9fab9 Linting 2020-02-18 12:34:24 +00:00
Laurie O
979d20753c
Support more defaults in SWF workflow registration
SWF workflow type now keeps track of the default task-priority and
default AWS Lambda role, set at workflow registration.
2020-02-18 21:59:06 +10:00
Bert Blommers
9971bcdfcd DynamoDB - Send item to DDB Stream on update, not just on create 2020-02-18 11:49:55 +00:00
Steve Pulec
11e64109eb Fix s3 test for location constraint. 2020-02-17 20:32:28 -06:00
Steve Pulec
dcd1f0195f lint. 2020-02-17 20:32:19 -06:00
Steve Pulec
356c55f99d Fix default resourceMethod for API Gateway. Closes #2750. 2020-02-17 20:21:25 -06:00
Steve Pulec
6b6a059350
Merge pull request #2132 from Projectplace/tagging-directive
Support x-amz-tagging-directive in s3 copy_object
2020-02-17 20:00:30 -06:00
Steve Pulec
a1ffb47ae4
Merge pull request #2751 from mikegrima/s3control
Implemented S3 Account-level public access block.
2020-02-17 19:53:15 -06:00
Steve Pulec
4a89131ec4
Merge pull request #2694 from brady-gsa/events-tagging
adds tagging support for cloudwatch events service
2020-02-17 18:51:09 -06:00
Steve Pulec
88828576a6
Merge pull request #2753 from jrbeilke/bug-cognito-userpool-arn
Bug: Arn missing from cognito user pool model and response
2020-02-17 18:49:14 -06:00
Steve Pulec
b252ab6675
Merge pull request #2173 from sthuber90/master
Extending IoT Policy and Jobs functionality
2020-02-17 17:55:03 -06: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
Steve Pulec
aeb194fc57 Update new lambda test to work with updated status codes. CC #2642. 2020-02-17 17:29:00 -06:00
Jon Beilke
92fc39d7bb add Arn to cognito user pool model and response 2020-02-17 15:08:09 -06:00
Bert Blommers
d463c11793
Merge pull request #2745 from EpicWink/closed-execution-info
Include closed execution extra info
2020-02-17 08:53:49 +00:00
Steve Pulec
9cf6123669
Merge pull request #2748 from jrbeilke/feature-apigw-apikeyrequired
Feature: API Gateway default value for apiKeyRequired on methods
2020-02-15 11:36:17 -06:00
Steve Pulec
039656f84d
Merge pull request #2704 from bblommers/bugfix/2642
Fix AWS Lambda status code on invoke
2020-02-15 10:46:01 -06:00
Steve Pulec
e40d75359a
Merge pull request #2717 from bblommers/feature/s3_illegallocationconstraint
S3 Feature: Add IllegalLocationConstraintException
2020-02-15 10:41:00 -06:00
Steve Pulec
a0999ced8a
Merge pull request #2740 from bblommers/bugfix/#2580
DynamoDB update_item: Allow list_append and if_not_exists-functions in one expression
2020-02-15 10:39:47 -06:00
Steve Pulec
200cd7c3e1
Merge pull request #2738 from bblommers/bugfix/2732
EC2 AMI Creation bugfix - Fix AMI owner
2020-02-15 10:37:03 -06:00
Jon Beilke
8a51fbe1c9 add default for apiKeyRequired field on API Gateway methods 2020-02-14 12:26:27 -06:00
Laurie O
353ad631f0
Include closed execution extra info
Include 'closeStatus' and 'closeTimestamp' when describing SWF workflow
execution using 'describe_workflow_execution'

Signed-off-by: Laurie O <laurie_opperman@hotmail.com>
2020-02-15 01:23:09 +10:00
Bert Blommers
1b4d0b7a1d
Merge pull request #2733 from griffint61/feature/lambda_get_function_ResourceNotFoundException
Added 'x-amzn-ErrorType' in the return header for missing lambda function
2020-02-12 07:44:21 +00:00
Terry Griffin
f70cd0182e Fixed test_lambda_can_be_deleted_by_cloudformation for new (correct) error code. 2020-02-10 09:18:25 -08:00
Antonin
fa3904df29 MessageAction for cognito admin_create_user is now handled
If an invitation is attempted to be reset to a pool we validate that the user is indeed already in the pool else we raise a UserNotFoundException to match AWS behaviour
2020-02-10 18:09:15 +01:00
Bert Blommers
2bd93a76fc Add region to DDB tests 2020-02-09 11:58:41 +00:00
Bert Blommers
936d686392 #2580 - DynamoDB update_item: Allow list_append and if_not_exists-functions in one expression 2020-02-09 11:47:02 +00:00
Bert Blommers
df031d0f33 #2732 - Created AMI should have AccountID as the OwnerID 2020-02-08 10:58:31 +00:00
Bert Blommers
39751a6961
Merge pull request #2737 from jmsanders/limit-list-queues-to-1000
Limit SQS list_queues response to 1000 queues
2020-02-08 09:23:22 +00:00
Nikita Antonenkov
d4caf14b61 Fixed UnboundLocalError in dynamodb2.query when no filters are passed 2020-02-07 23:39:31 +01:00
jmsanders
0b7e990bbf Limit SQS list_queues response to 1000 queues
The maximum number of queues that the ListQueues API can return is 1000:

https://docs.aws.amazon.com/AWSSimpleQueueService/latest/APIReference/API_ListQueues.html
2020-02-07 15:54:42 -06:00
Bert Blommers
32dc8f9fe7
Merge pull request #2734 from gruebel/fix-kms-create-key
Fix kms create key
2020-02-07 16:23:17 +00:00
gruebel
ec56351416 Move boto3 tests to separate file 2020-02-07 16:28:23 +01:00
gruebel
4833419499 Fix CreationDate handling 2020-02-07 15:38:37 +01:00
Terry Griffin
b4c9b76ca9 Added 'x-amzn-ErrorType' in return header from lambda:get_function for missing function 2020-02-06 15:26:20 -08:00
gruebel
5d05044491 Add CustomerMasterKeySpec parameter handling 2020-02-06 17:57:00 +01:00
Bert Blommers
7719ac76a3
Merge pull request #2720 from jrbeilke/feature-apigw-defaults
Feature apigw defaults
2020-02-06 13:52:56 +00:00
Bert Blommers
58b3304310
Merge pull request #2729 from grodzik/add-update-organizational-unit-endpoint
Add update organizational unit endpoint
2020-02-06 13:51:30 +00:00
Paweł Tomak
fc9eab2591
Raise DuplicateOrganizationalUnitException
Calling UpdateOrganizationalUnit with name that already exists should
raise proper error.
2020-02-06 12:38:37 +01:00
Paweł Tomak
14ebf29a61
Add UpdateOrganizationalUnit endpoint to Organizations API 2020-02-06 11:49:41 +01:00
Brady
ecdedf30c8 force build... 2020-02-05 16:31:33 -05:00
Brady
c95254a284 delete tags when their resource is deleted 2020-02-05 11:58:52 -05:00
Bert Blommers
fa17b748f5
Merge pull request #2724 from jayudey-vertex/account-for-types
Handle map or list parameters in sns processing
2020-02-05 16:13:59 +00:00
Brady
414f8086b0 use sure for unit test assertions 2020-02-05 10:30:59 -05:00
Jay Udey
1321943d60 add test verifying solution 2020-02-05 09:03:45 -06:00
Ivan Dromigny
d8d057711d Change from black linter 2020-02-05 14:19:08 +01:00
Ivan Dromigny
8115dd2d1b Add test 2020-02-05 12:03:33 +01:00
Mike Grima
bb64258a8f Fixed issue with Lambda invoke via ARN
- Fixed an issue where Lambda invokes via an ARN was hitting real AWS.
2020-02-04 22:12:11 -08:00
Jon Beilke
c9995412b5 add support for apigateway fields with default values including apiKeySource, endpointConfiguration, and tags 2020-02-03 10:21:22 -06:00
Bert Blommers
70b2d3ab3c
Merge pull request #2709 from blbradley/fix/localstack-split-stacks
throw ValidationError on non existing stack
2020-02-03 14:33:54 +00:00
Bert Blommers
e4eede7f9b
Merge pull request #2718 from gmcrocetti/bugfix/2690
RDS Feature: Add EnableIAMDatabaseAuthentication
2020-02-02 18:01:21 +00:00
Guilherme Martins Crocetti
9f8388e402 Change test name in favor of abbreviation 2020-02-02 13:19:50 -03:00
Guilherme Martins Crocetti
eb0687eeaa Add failing test for EnableIAMDatabaseAuthentication snapshot 2020-02-02 13:08:13 -03:00
Guilherme Martins Crocetti
c36371e235 Add failing test for database creation with iam 2020-02-02 12:47:54 -03:00
Bert Blommers
e21ddb7abc
Use var instead of hardcoded string for region 2020-02-02 14:25:44 +00:00
Bert Blommers
ceb16b00a7 S3 LocationConstraint test can only be run in non-ServerMode 2020-02-02 12:45:57 +00:00
Bert Blommers
d5a36752d7 Add S3 LocationConstraint to CF tests 2020-02-02 12:44:26 +00:00
Bert Blommers
a86cba79de Add S3 LocationConstraint to Lambda tests 2020-02-02 11:48:32 +00:00
Bert Blommers
f74f08581a S3 - Add IllegalLocationConstraint validation when creating buckets 2020-02-02 10:36:51 +00:00
gruebel
40bd4f1603 Fix kms.create_key default output 2020-01-31 17:16:42 +01:00
Bert Blommers
b6aeae0f2d
Merge pull request #2707 from UltCombo/patch-1
Support greedy resource path in API Gateway
2020-01-31 15:27:35 +00:00
Brandon Bradley
8b3c2b6654
fix test 2020-01-30 17:50:21 -06:00
Brandon Bradley
b7795b7111 test for ListStackResources 2020-01-30 16:35:19 -06:00
gruebel
44024ab74b Fix sqs permission handling & add more error handling 2020-01-30 22:42:27 +01:00
Fabrício Matté
cf65cfc6ec
Update API Gateway resource name test 2020-01-29 16:28:37 -03:00
Bert Blommers
da40c7125a
Merge pull request #2703 from brady-gsa/fix_lambda_config
Fixes awslambda policy management
2020-01-29 15:30:25 +00:00
Brady
dd243d72c2 switch to using sure for assertions 2020-01-29 09:46:09 -05:00
Bert Blommers
3cf45b7838
Merge pull request #2667 from owenfarrell/master
Made UserName parameter optional for IAM access key functions
2020-01-28 08:24:12 +00:00
Owen Farrell
142e237b0b Made UserName parameter optional for IAM access key functions 2020-01-27 12:12:21 -05:00
Brady
cb07d17e13 don't use table of test cases and reduce duplication in get_policy method 2020-01-27 10:35:46 -05:00
Bert Blommers
4342b93170
Merge pull request #2702 from kislyuk/patch-5
awslambda: return actual result in sync invoke
2020-01-25 17:24:37 +00:00
Brady
2a2ff32dec improves support for AWS lambda policy management 2020-01-24 14:53:16 -05:00
Andrey Kislyuk
324ef5af36 Fix test 2020-01-24 16:11:44 +00:00
Bert Blommers
ccd0257acc Fix Lambda tests for DryRuns 2020-01-24 10:09:56 +00:00
Stephan Huber
5543a91cc1 Merge remote-tracking branch 'upstream/master' 2020-01-24 10:38:19 +01:00
Bert Blommers
ee8231202a Fix linting 2020-01-24 09:08:48 +00:00
Roque Pinel
2ae09c5335 Fix the StatusCode returned by lambda invoke
According to the AWS documentation:
```
The HTTP status code will be in the 200 range for successful request.
For the RequestResponse invocation type this status code will be 200.
For the Event invocation type this status code will be 202.
For the DryRun invocation type the status code will be 204.
```
2020-01-24 09:07:49 +00:00
Asher Foa
b4127040d1 remove this change. 2020-01-23 10:16:12 -08:00
Asher Foa
d9d055c75d Fix more typos. 2020-01-23 10:15:02 -08:00
Stephan Huber
20020c5170 Change whitespaces back to the way they were and fix typos 2020-01-23 15:46:50 +01:00
Stephan Huber
84210f6011 Merge remote-tracking branch 'upstream/master' 2020-01-23 15:37:40 +01:00
Steve Pulec
663d7c289b
Merge pull request #2675 from bblommers/bugfix/#2674
DynamoDB - ListAppend should also work when adding maps to a list
2020-01-22 20:01:53 -06:00
Steve Pulec
c5b7b2f7af
Merge pull request #2687 from bblommers/bugfix/2626
DynamoDB - Update Item doesnt handle LT/GT properly
2020-01-22 20:01:00 -06:00
Steve Pulec
dff1986801
Merge pull request #2683 from Journera/ecs-td-add-network-mode
Store 'networkMode' in ECS Task Definitions instead of just throwing it away
2020-01-22 19:39:41 -06:00
Steve Pulec
a32b3c4b59 Fix SQS get_queue_attributes to allow RedrivePolicy. Closes #2682. 2020-01-22 19:38:07 -06:00
Bert Blommers
7ff7ee4e8e Test fix - Region must be specified 2020-01-22 11:42:06 +00:00
Bert Blommers
6f02782624 #2627 - Change comparison to differentiate between 0 and None 2020-01-22 11:30:17 +00:00
Steve Pulec
4335f1d3dd
Merge pull request #2669 from bblommers/lambda-return-output-only
AWS Lambda - Return response only, and skip log/print statements
2020-01-21 21:37:36 -06:00
Brady
1e851fb1d8 remove dead code 2020-01-17 10:12:58 -05:00
Brady
eaa8c8db6e add tagging support to events 2020-01-16 21:03:32 -05:00
Bryan Alexander
85207b885b updates KMS service to use TaggingService 2020-01-16 12:10:38 -06:00
Bert Blommers
1c4596c984
Merge pull request #2671 from franz-see/moto/issues/2670
moto/issues/2670 | Moved population of user attributes from accessToken to idToken
2020-01-16 05:57:17 +00:00
Bryan Alexander
6cb0428d20 adds tagging support for cloudwatch events service 2020-01-15 10:41:54 -06:00
Bert Blommers
a50d0695fe
Merge pull request #2661 from deanrock/route53-rrs-istruncated
Add IsTruncated to Route53.list_resource_record_sets
2020-01-15 15:39:09 +00:00
Franz See
db75c9e25c moto/issues/2670 | Moved population of user attributes from accessToken to idToken 2020-01-15 23:33:09 +08:00
Bert Blommers
15889566b8
Merge pull request #2673 from franz-see/moto/issues/2672
moto/issues/2672 | Modified 'token_use' to return 'id' for an id toke…
2020-01-15 14:54:52 +00:00
Asher Foa
db559e7e06 Fix some typos 2020-01-14 09:55:32 -08:00
Bert Blommers
8c920cce10 Specify region in tests 2020-01-12 12:20:55 +00:00
Bert Blommers
9ce1ee49d7 #2626 - DynamoDB - FilterExpression should ignore items with non-existent attribute 2020-01-12 12:05:08 +00:00
Don Kuntz
fd1fdde1bf
Allow black to reformat correctly 2020-01-09 23:45:14 -06:00
Don Kuntz
2cb3f327de
Store 'networkMode' in ECS Task Definitions instead of just throwing it away 2020-01-09 23:00:33 -06:00
Bert Blommers
5884483019 Compare map, instead of string repr 2020-01-09 10:08:35 +00:00
Bert Blommers
cba3cfc384 Escape curly braces in formatting string 2020-01-09 09:10:16 +00:00
Bert Blommers
5f59cb7fb0 #2674 - ListAppend should also work when adding maps to a list 2020-01-06 08:16:09 +00:00
Franz See
a8e1a3bf08 moto/issues/2672 | Formatted using black 2020-01-06 13:29:23 +08:00
Franz See
68d882e6c0 moto/issues/2672 | Modified 'token_use' to return 'id' for an id token, and 'access' for an access token 2020-01-06 00:19:31 +08:00
Bert Blommers
eab9e15bf0 #2623 - Fix and simplify test in ServerMode 2020-01-05 15:01:31 +00:00
Jack Danger
d596560971
Merge pull request #2657 from gruebel/add-missing-regions
Add missing regions to all services
2020-01-02 17:27:25 -08:00
gruebel
cd9b7072a2 Adjust ec2 regions tests 2019-12-28 21:22:16 +01:00
Dejan Levec
877f3b056a Add IsTruncated to Route53.list_resource_record_sets 2019-12-27 19:32:31 +01:00
Mike Grima
1db617a530
Merge pull request #2659 from gruebel/fix-sns-unsubscribe
Fix sns unsubscribe & delete_topic behavior
2019-12-27 09:10:24 -08:00
Mike Grima
d0d95420e7
Merge pull request #2655 from levinine/add-codecommit
add codecommit create, get and delete repository
2019-12-27 09:04:19 -08:00
Mike Grima
b86e1d073b
Merge pull request #2652 from gruebel/add-codepipeline-tags
Add codepipeline tags
2019-12-27 08:57:59 -08:00
Mike Grima
79aaad1068
Merge pull request #2651 from whummer/fix-s3-prefix
Avoid rendering "None" as S3 Prefix value
2019-12-27 08:56:06 -08:00
Mike Grima
eeedb2e6f8
Merge pull request #2650 from asherf/dynanmodb
Fix issue when working with dyanmodb stream and complex types.
2019-12-27 08:54:47 -08:00
Mike Grima
65664dcf85
Merge pull request #2648 from asherf/iam
Implement List user tags
2019-12-27 08:53:05 -08:00
Mike Grima
664e959856
Merge pull request #2639 from corrjo/instance_connect
Resolves #2637  added send_ssh_public_key
2019-12-27 08:51:27 -08:00
gruebel
2fb5004dc2 Fix sns unsubscribe & delete_topic behavior 2019-12-27 16:04:12 +01:00
gruebel
d7ba355a65 Add missing regions to all services 2019-12-26 17:12:22 +01:00
Jovan Zivanov
cb1eb79b89 add tests for codecommit 2019-12-26 16:06:53 +01:00
Jovan Zivanov
e20deb4acd fix linter exceptions 2019-12-26 15:02:24 +01:00
Jovan Zivanov
a820aada42 add codecommit create, get and delete repository 2019-12-26 14:23:53 +01:00
Asher Foa
7d4c15d53e skip part of the test in server mode. 2019-12-24 11:01:54 -08:00
Asher Foa
299e7851d6 Add assertions. 2019-12-24 10:23:46 -08:00
gruebel
8331d480ba Add codepipeline.untag_resource 2019-12-23 19:50:16 +01:00
gruebel
b96a46b98f Add codepipeline.tag_resource 2019-12-23 19:33:37 +01:00
Stephan Huber
ed8d5edb50 fix linting errors 2019-12-23 09:01:53 +01:00
Stephan Huber
0527e88d46 Merge remote-tracking branch 'upstream/master' 2019-12-23 08:38:53 +01:00
gruebel
df951facc5 Add codepipeline.list_tags_for_resource 2019-12-22 11:42:15 +01:00
Waldemar Hummer
4ad111830b fix tests 2019-12-21 13:27:49 +01:00
Asher Foa
5bd3827b26 run black 2019-12-20 18:55:58 -08:00
Asher Foa
a6f14eee3f Add test to repo stream issue 2019-12-20 18:55:58 -08:00
Asher Foa
c2e444a210 Update tests. 2019-12-20 10:54:33 -08:00
Mike Grima
b8a1f85285
Merge pull request #2644 from gruebel/add-codepipeline-fix
CodePipeline - implement CRUD endpoints
2019-12-20 09:28:42 -08:00
gruebel
901be3a6d1 Remove unused import 2019-12-20 10:54:38 +01:00
Asher Foa
1415a93596 Implement List user tags 2019-12-19 19:45:56 -08:00
gruebel
a67660b8a4 Adjust tests to work in server mode 2019-12-19 21:41:32 +01:00
John Corrales
199ff05e4e parent 0f67a74d25
author John Corrales <jjcorrales3@gmail.com> 1576380101 -0800
committer John Corrales <jjcorrales3@gmail.com> 1576633072 -0800

added send_ssh_public_key
2019-12-17 17:38:49 -08:00
Mike Grima
91983b4823
Merge pull request #2610 from gruebel/fix-sns-get-subscription-attributes
Add missing attributes to SNS subscription
2019-12-17 08:36:59 -08:00
gruebel
03fd04db33 Use pytz instead of timezone 2019-12-17 17:22:46 +01:00
gruebel
8e03b1d525 Add codepipeline.delete_pipeline 2019-12-17 17:22:46 +01:00
gruebel
9871eda3c9 Add codepipeline.list_pipelines 2019-12-17 17:22:46 +01:00
gruebel
b2c44ce50d Add codepipeline.update_pipeline 2019-12-17 17:22:45 +01:00
gruebel
c84e465e4c Add codepipeline.get_pipeline 2019-12-17 17:22:45 +01:00
gruebel
076c8ace5f Add codepipeline.create_pipeline 2019-12-17 17:22:45 +01: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
Fabio Dias
bc615797b1 typo 2019-12-16 19:56:11 -05:00
Fabio Dias
b83a750630 Added references to moto.iam.models.ACCOUNT_ID instead of hardcoded id 2019-12-16 19:56:11 -05:00
Mike Grima
65b17e740d
Merge pull request #2611 from Sytten/fix/ssm-parameter
Add missing information in SSM parameters
2019-12-16 11:59:42 -08:00
Mike Grima
8e2e3cec5a
Merge pull request #2597 from ballwood/master
Add MaxSessionDuration field to IAM Role, Remove Description field from response if empty
2019-12-14 13:47:28 -08:00
Mike Grima
7b63b2818e
Merge pull request #2631 from kislyuk/patch-2
Batch: computeResources.instanceRole is an instance profile
2019-12-14 13:46:08 -08:00
Mike Grima
fb350bbcef
Merge pull request #2632 from kislyuk/patch-3
Batch: job definitions default to ACTIVE
2019-12-13 13:33:56 -08:00
Andrey Kislyuk
624dafcb5c Fix tests 2019-12-13 18:46:26 +00:00
Andrey Kislyuk
777ff5a62a Add test 2019-12-13 05:07:29 +00:00
Mike Grima
4386999ea7
Merge pull request #2613 from levinine/add_nat_gateway_id_to_route_and_describe_route_tables
Add nat_gateway_id to route and describe_route_tables
2019-12-12 18:33:11 -08:00
Mike Grima
ab73ab3ff5
Merge pull request #2609 from levinine/describe_nat_gateway_filter_support
Add describe_nat_gateway filters support
2019-12-12 18:29:05 -08:00
Mike Grima
61f28c308d
Merge pull request #2608 from aksagrimada/ssm_pagination
Add Pagination to ssm:get_parameters_by_path. Closes #1864
2019-12-12 18:22:33 -08:00
Mike Grima
8399bc4df5
Merge pull request #2606 from levinine/api_key_fix
api gateway handle duplicate api key values
2019-12-12 18:21:51 -08:00
Mike Grima
9f73a67cef
Merge pull request #2583 from trilliput/issue/1996
Improve parsing DynamoDB begins_with expression
2019-12-12 18:19:27 -08:00
Mike Grima
84ccdbd1cd Implemented S3 Public Access Block 2019-12-12 17:45:31 -08:00
Ilya Shmygol
704a12146b Improve error reporting for missing index 2019-12-12 10:49:07 +01:00
Ilya Shmygol
3a42079ec7 Merge remote master 2019-12-11 16:17:21 +01:00
Ilya Shmygol
be5986c0b5 Test query by non exists index 2019-12-11 15:08:45 +01:00
Mike Grima
4d5bf1c5c6
Merge pull request #2605 from bblommers/dynamodb_add_nested_stringsets
Dynamodb - DELETE/ADD item from/to nested sets
2019-12-09 14:14:56 -08:00
Mike Grima
c131dd2cac
Merge pull request #2604 from gruebel/fix-logs-get-log-events
Fix order and nextToken handling in logs.get_log_events
2019-12-09 14:14:11 -08:00
Mike Grima
872452eced
Merge pull request #2602 from atareshawty/ecs-list-task-definition-filtering
Add familyPrefix option to ecs:ListTaskDefinitions
2019-12-09 14:13:14 -08:00
Mike Grima
7e68b93091
Merge pull request #2601 from mwaaas/fix/get_policy
adding get policy endpoint
2019-12-09 14:11:50 -08:00
Mike Grima
1c5ea4b545
Merge pull request #2599 from bblommers/feature/#2010
CloudWatch - Implement list_metrics pagination
2019-12-09 14:11:05 -08:00
Mike Grima
90f5f7159d
Merge pull request #2598 from bblommers/feature/dynamodb_nested_list_append
Dynamodb: nested list_append
2019-12-09 14:10:00 -08:00
Mike Grima
b2264feac5
Merge pull request #2596 from gruebel/fix-ec2-revoke-security-group-egress
Fix ec2.revoke_security_group_egress for IpProtocol -1
2019-12-09 14:06:09 -08:00
Mike Grima
76aaa2df0f
Merge pull request #2595 from bblommers/feature/2317
Add CF update/delete methods for Lambda
2019-12-09 14:04:49 -08:00
Mike Grima
e00c12a1e6
Merge pull request #2594 from mwaaas/fix/fetch_secret_manage_via_arn
fixing fetch secret manager via arn
2019-12-09 14:03:37 -08:00
Mike Grima
8005f3260f
Merge pull request #2589 from Chagui-/master
iot describe_thing_group metadata implementation
2019-12-09 14:01:14 -08:00
Mike Grima
66dd1a0dff
Merge pull request #2547 from bblommers/feature/2546
AWS Lambda: Add Role validation when creating functions
2019-12-09 14:00:16 -08:00
Berislav Kovacki
43070a03ba Add nat_gateway_id to route and describe_route_tables 2019-12-02 19:20:00 +01:00
Emile Fugulin
b52fa636b6 Add missing information in SSM parameters 2019-11-30 20:05:01 -05:00
gruebel
deaeef521b Add missing attributes to SNS subscription 2019-11-30 15:51:43 +01:00
Berislav Kovacki
4322ecb254 Add describe_nat_gateway filters support
Support describe_nat_gateway filters by using nat-gateway-id, vpc-id,
subnet-id and state filter parameters.
2019-11-28 23:36:00 +01:00
Bert Blommers
e41bc9fc58 DynamoDB - DELETE item from nested sets 2019-11-28 13:22:20 +00:00
Adam Smith
051193e1bf Add Pagination to ssm:get_parameters_by_path. Closes #1864 2019-11-27 22:12:31 +00:00
Jovan Zivanov
a28183d150 fix lint errors 2019-11-27 16:12:30 +01:00
Jovan Zivanov
5260de8859 remove unnecessary comments 2019-11-27 15:55:29 +01:00
Jovan Zivanov
e3587afe01 api gateway handle duplicate api key values 2019-11-27 15:49:37 +01:00
Bert Blommers
6d7ad717df DynamoDB - ADD item to nested sets 2019-11-27 12:36:42 +00:00
gruebel
cea9c8c9a3 Fix order and nextToken handling in logs.get_log_events 2019-11-26 23:38:43 +01:00
Alex Tareshawty
df2279d39c Add familyPrefix option to ecs:ListTaskDefinitions
AWS defines this option as:
```
--family-prefix (string)
  The full family name with which to filter the ListTaskDefinitions
  results. Specifying a familyPrefix limits the listed task
  defini-tions to task definition revisions that belong to that
  family.
```

This option behaves differently than ecs:ListTaskDefinitionFamilies.
Instead of doing a comparison like `startswith`, it does a full string
comparison by matching the entire task definition family to the prefix.
For example, let's say there exists a task definition with the family
`super-cool-task-def`.

ListTaskDefinitionFamilies would look like this:

```
aws ecs list-task-definition-families --family-prefix super-cool
{
    "families": [
      "super-cool-task-def"
    ]
}
```

ListTaskDefinitions would look like this:

```
aws ecs list-task-definitions --family-prefix super-cool
{
    "taskDefinitionArns": []
}
```
2019-11-26 09:40:01 -05:00
mwas
625f28c882 adding get policy endpoint 2019-11-26 06:09:24 +03:00
Bert Blommers
36a5d80443 #2010 - Implement Cloudwwatch list_metrics pagination 2019-11-25 16:59:39 +00:00
Bert Blommers
21a1d4d604 DynamoDB - list_append operation can be made in a nested map 2019-11-25 15:19:22 +00:00
Barry Allwood
7c1cc01eb9 chore: add MaxSessionDuration to IAM Role
fix: Description field is optional on return of IAM Role
2019-11-24 18:19:09 +00:00
gruebel
5895231b5c Fix ec2.revoke_security_group_egress for IpProtocol -1 2019-11-24 17:17:53 +01:00
Bert Blommers
9c247f4b70
Specify region name for IAM 2019-11-24 15:33:51 +00:00
Bert Blommers
791c25b51c #2317 - Add CF Update/Delete methods for Lambda 2019-11-24 14:54:38 +00:00
Bert Blommers
8362179f70 Use deprecated IAM, only plays nice with deprecated CF 2019-11-23 10:18:56 +00:00