aws / aws/aws-cdk

aws-ssm: CloudFormation failing to update custom resource that references ssm SendCommandCommand

Open
#27,806 3 comments 1 reaction 0 assignees View on GitHub
@aws-cdk/aws-ssm bug effort/medium p3
Dominant language
TypeScript
Stars
12.9k
Forks
4.6k
Avg merge
2d 3h
Merged PRs (30d)
83

Description

### Describe the bug

When adding in a custom resource that calls SSM `SendCommandCommand`, somewhere, this is being translated to `SendCommandCommandCommand` (i.e. an extra `Command` is being appended to the SDK call).

In my `cdk.out`, I can see the custom resource with `sendCommandCommand`, as intended.

On CloudFormation deploy, the custom resource fails to deploy with error: `Received response status [FAILED] from custom resource. Message returned: Unable to find command named: SendCommandCommandCommand for action: SendCommandCommand in service package @aws-sdk/client-ssm`

### Expected Behavior

I expect the custom resource to call SSM `SendCommandCommand`, which is the correct SDK call.

### Current Behavior

Custom resource calling SSM `SendCommandCommand` is being rewritten to `SendCommandCommandCommand` which is nonexiestent in the AWS SDK JS v3 library.

### Reproduction Steps

``` python
custom_resources.AwsSdkCall(
action="sendCommandCommand",
service="SSM",
parameters=send_command_parameters,
physical_resource_id=custom_resources.PhysicalResourceId.of(
f"{document}{instance}"
),
output_paths=["Command.CommandId"],
)
```

### Possible Solution

_No response_

### Additional Information/Context

_No response_

### CDK CLI Version

2.103.1 (build 3bb19ac)

### Framework Version

_No response_

### Node.js Version

v20.6.1

### OS

Ubuntu 23.04

### Language

Python

### Language Version

Python 3.11.4

### Other information

_No response_

Contributor guide

Open the contributing guide

Research direction

Start at custom_resources.AwsSdkCall and trace how the action value sendCommandCommand is translated between cdk.out and the CloudFormation custom resource. Compare the generated action with the deployed SDK call; done means the custom resource invokes SendCommandCommand without appending another Command.

Written by the indexing model from the issue text.

Assessment

Tech stack
aws, python, typescript
Domain
cloud, infrastructure
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.