aws / aws-sam-cli-app-templates

Apache License 2.0
473 stars 260 forks source link

bug: setting the prompted architectures generates an error #162

Open michaelbrewer opened 2 years ago

michaelbrewer commented 2 years ago

Issue

I am running SAM CLI, version 1.36.0 and when I try to input the architectures prompted by Cookiecutter I get an Error: Unable to decode to JSON. error. And this might not be intuitive for a first time user

sam init --location cookiecutter-aws-sam-eventbridge-hello-java-gradle
project_name [Your EventBridge Starter app]: x
runtime [java11]:
architectures [default]: arm64
Error: Unable to decode to JSON.

Work around

If I set the input to {"value":["arm64"]} for architectures then this works.

sam init --location cookiecutter-aws-sam-eventbridge-hello-java-gradle
project_name [Your EventBridge Starter app]: x
runtime [java11]:
architectures [default]: {"value":["arm64"]}

Or if I pass in architecture in the cli and not enter anything in architectures:

sam init --location java11/cookiecutter-aws-sam-eventbridge-hello-java-gradle --architecture arm64

Possible Solution

hawflau commented 2 years ago

Thanks for reporting the issue. I agree this is not very intuitive to use. We will take it internally and discuss how to fix it.

sleepwithcoffee commented 1 year ago

since we only have 2 types of supported architecture x86_64 and arm64. May we suggest user key in x86_64 or arm64 or both? If both is selected then we generate an array of 2 elements in the generated yaml template