martysweet / cfn-lint

A CloudFormation JSON and YAML Validator
MIT License
163 stars 38 forks source link

errorr: uncaughtException: toGet.slice when running validate #52

Closed admiralAwkbar closed 7 years ago

admiralAwkbar commented 7 years ago

When i run the command: /usr/bin/cfn-lint validate idam-master-apps.yml

i get the following error: root@bd9dd3ebbb6a:/home/jenkins/workspace/gehc-cft-idam/gehc-cft-idam# /usr/bin/cfn-lint validate idam-master-apps.yml 2017-07-26T13:42:37.586Z - error: uncaughtException: toGet.slice(...).join is not a function date=Wed Jul 26 2017 13:42:37 GMT+0000 (UTC), pid=708, uid=0, gid=0, cwd=/home/jenkins/workspace/gehc-cft-idam/gehc-cft-idam, execPath=/usr/local/nvm/versions/v7.4.0/bin/node, version=v7.4.0, argv=[/usr/local/nvm/versions/v7.4.0/bin/node, /usr/bin/cfn-lint, validate, idam-master-apps.yml], rss=36220928, heapTotal=18747392, heapUsed=10032080, external=61182, loadavg=[1.36962890625, 0.50634765625, 0.27392578125], uptime=1369536, trace=[column=40, file=/usr/lib/node_modules/cfn-lint/lib/validator.js, function=doIntrinsicGetAtt, line=473, method=null, native=false, column=20, file=/usr/lib/node_modules/cfn-lint/lib/validator.js, function=resolveIntrinsicFunction, line=375, method=null, native=false, column=38, file=/usr/lib/node_modules/cfn-lint/lib/validator.js, function=recursiveDecent, line=327, method=null, native=false, column=13, file=/usr/lib/node_modules/cfn-lint/lib/validator.js, function=recursiveDecent, line=337, method=null, native=false, column=13, file=/usr/lib/node_modules/cfn-lint/lib/validator.js, function=recursiveDecent, line=337, method=null, native=false, column=13, file=/usr/lib/node_modules/cfn-lint/lib/validator.js, function=recursiveDecent, line=337, method=null, native=false, column=13, file=/usr/lib/node_modules/cfn-lint/lib/validator.js, function=recursiveDecent, line=337, method=null, native=false, column=13, file=/usr/lib/node_modules/cfn-lint/lib/validator.js, function=recursiveDecent, line=337, method=null, native=false, column=5, file=/usr/lib/node_modules/cfn-lint/lib/validator.js, function=resolveReferences, line=299, method=null, native=false, column=5, file=/usr/lib/node_modules/cfn-lint/lib/validator.js, function=validateWorkingInput, line=108, method=null, native=false], stack=[TypeError: toGet.slice(...).join is not a function, at doIntrinsicGetAtt (/usr/lib/node_modules/cfn-lint/lib/validator.js:473:40), at resolveIntrinsicFunction (/usr/lib/node_modules/cfn-lint/lib/validator.js:375:20), at recursiveDecent (/usr/lib/node_modules/cfn-lint/lib/validator.js:327:38), at recursiveDecent (/usr/lib/node_modules/cfn-lint/lib/validator.js:337:13), at recursiveDecent (/usr/lib/node_modules/cfn-lint/lib/validator.js:337:13), at recursiveDecent (/usr/lib/node_modules/cfn-lint/lib/validator.js:337:13), at recursiveDecent (/usr/lib/node_modules/cfn-lint/lib/validator.js:337:13), at recursiveDecent (/usr/lib/node_modules/cfn-lint/lib/validator.js:337:13), at resolveReferences (/usr/lib/node_modules/cfn-lint/lib/validator.js:299:5), at validateWorkingInput (/usr/lib/node_modules/cfn-lint/lib/validator.js:108:5)]

It appears i have the npm libs installed but not sure why this is failing

martysweet commented 7 years ago

Hi @admiralAwkbar,

Did you manage to get this working? I imagine the template was invalid however it should of been handled slightly better than this...

admiralAwkbar commented 7 years ago

Hello, i believe the error is stemming from trying to validate complex CFT's that link to other yml files. When i run on small simple CTF's, it works as expected. I think the error is just a little bit unhandled