aws-cloudformation / cloudformation-cli

The CloudFormation Provider Development Toolkit allows you to author your own resource providers and modules that can be used by CloudFormation.
Apache License 2.0
316 stars 156 forks source link

cfn validate is failing and need to fix ASAP #1077

Open kaviram1980 opened 1 week ago

kaviram1980 commented 1 week ago

Hi there, cfn validate fails in my pipeline with the following message asking me to create an issue here with rpdk.log file.

testing cfn issue === Unhandled exception === Please report this issue to the team. Issue tracker: github.com/aws-cloudformation/cloudformation-cli/issues Please include the log file 'rpdk.log' === Unhandled exception === Please report this issue to the team. Issue tracker: github.com/aws-cloudformation/cloudformation-cli/issues Please include the log file 'rpdk.log'

rpdk.log

kddejong commented 1 week ago

Project file C:\Users\kramkumar\IdeaProjects\cloud-infra\.rpdk-config not found. Have you run 'init' or in a wrong directory?

Do you have the .rpdk-config file in the root of the folder you are running cfn validate from?

kaviram1980 commented 1 week ago

Yes, I am zipping all the necessary files and folders folder contents . . . fragments rpdk.log schema.json Archive: /tmp/vmikr-glue-etlresources-module.zip extracting: /tmp/s3-vmikr-glue-etlresources-module/.rpdk-config extracting: /tmp/s3-vmikr-glue-etlresources-module/schema.json extracting: /tmp/s3-vmikr-glue-etlresources-module/fragments/EtlResources.yml

It was working fine when I override the cfn--lint newer version (1.3.0) with older version (0.87.7)

cfn 0.2.37 testing cfn issue Module fragment is valid. Module fragment is valid. Dry run complete: /builds/vermontmutual/cloud-infra/scripts/app-infra/packages/module-glue-etl-resources/vmikr-glue-etlresources-module.zip folder contents . . . fragments rpdk.log schema.json vmikr-glue-etlresources-module.zip INFO: Checking for updates VMikr::Glue::EtlResources::MODULE . . .

kddejong commented 1 week ago

okay. Looks like you are doing a module. There was an upgrade to cfn-lint in which the API changed that broke cloudformation-cli. Try to upgrade cfn-lint to v1.3.2 and see if this issue is resolved.

kaviram1980 commented 1 week ago

Yeah. It will automatically pull the latest version of cfn-lint 1.3.0 after running the below command pip3 install cloudformation-cli-python-plugin Successfully installed Click-8.1.7 Jinja2-3.1.4 Werkzeug-3.0.3 annotated-types-0.7.0 attrs-23.2.0 aws-sam-translator-1.89.0 boto3-1.34.130 certifi-2024.6.2 cfn-flip-1.3.0 cfn-lint-1.3.0 How do I specify the cfn-lint version v1.3.2 when I installing below command pip3 install cloudformation-cli-python-plugin so, you want me to use pip install --upgrade cfn-lint v1.3.2

kddejong commented 1 week ago

Correct try pip install --upgrade cfn-lint and then run cfn validate again

kddejong commented 1 week ago

On my module projects it is working again so I think you'll be resolved.