Skip to content

Create of custom resource fails with "__init__() got an unexpected keyword argument 'snapshotRequested' (TypeError)" #130

Closed
@kallu

Description

@kallu

Creating a custom resource type fails with the error __init__() got an unexpected keyword argument 'snapshotRequested' (TypeError)

Here is how my python versions look and how the custom resource type is created.

% python -V
Python 3.6.12

% pip list | grep cloudformation
cloudformation-cli               0.1.12
cloudformation-cli-go-plugin     2.0.2
cloudformation-cli-java-plugin   2.0.2
cloudformation-cli-python-lib    2.1.2
cloudformation-cli-python-plugin 2.1.1

Then deploying a custom resource as cfn init configures it

% cfn init 
Initializing new project
What's the name of your resource type?
(Organization::Service::Resource)
>> MyOrg::Dataprovider::Variable
Select a language for code generation:
[1] go
[2] java
[3] python36
[4] python37
(enter an integer): 
>> 3
Use docker for platform-independent packaging (Y/n)?
This is highly recommended unless you are experienced 
with cross-platform Python packaging.
>> Y
Initialized a new project in /Users/.../cfn-resource

% cfn generate
Generated files for MyOrg::Dataprovider::Variable

% cfn submit --set-default
Starting Docker build. This may take several minutes if the image 'lambci/lambda:build-python3.6' needs to be pulled first.
Successfully submitted type. Waiting for registration with token '7c37bc66-65a7-41db-b4c6-444c9758c3ce' to complete.
Registration complete.
{'ProgressStatus': 'COMPLETE', 'Description': 'Deployment is currently in DEPLOY_STAGE of status COMPLETED; ', 'TypeArn': 'arn:aws:cloudformation:eu-central-1:112233445566:type/resource/MyOrg-Dataprovider-Variable', 'TypeVersionArn': 'arn:aws:cloudformation:eu-central-1:112233445566:type/resource/MyOrg-Dataprovider-Variable/00000006', 'ResponseMetadata': {'RequestId': '1171feb8-fc07-421b-ac6d-ed8ee361d15c', 'HTTPStatusCode': 200, 'HTTPHeaders': {'x-amzn-requestid': '1171feb8-fc07-421b-ac6d-ed8ee361d15c', 'content-type': 'text/xml', 'content-length': '707', 'date': 'Sun, 01 Nov 2020 13:33:04 GMT'}, 'RetryAttempts': 0}}
Set default version to 'arn:aws:cloudformation:eu-central-1:112233445566:type/resource/MyOrg-Dataprovider-Variable/00000006

So far all worked. but when trying to use the resource type in template

AWSTemplateFormatVersion: 2010-09-09
Description: Sample template for MyOrg::Dataprovider::Variable usage
  
Resources:

  SampleVariable:
    Type: MyOrg::Dataprovider::Variable
    Properties:
      Title: "Hello12345678901234567890"
      TestCode: "NOT_STARTED"

Outputs:

  Variable:
    Description: Variable ID
    Value: !Ref SampleVariable

Create of SampleVariable fails with the error

__init__() got an unexpected keyword argument 'snapshotRequested' (TypeError)

Did I forget something?
Am I missing something from my requirements.txt ? Now it has only

cloudformation-cli-python-lib==2.1.2

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions