2017-03-26 59 views
1

我試圖使用環境變量對我的拉姆達但是當我運行從運行shell腳本gradle這個任務以下LAMBDA AWS CLI創建功能命令,AWS拉姆達創建功能只接受一個環境變量

aws $PROFILESTR lambda create-function \ 
--region us-east-1 \ 
--function-name MyLambda \ 
--zip-file fileb://$ZIP \ 
--role arn:aws:iam::$AWS_ACCT_ID:role/my_lambda \ 
--handler com.test.MyLambda::handleRequest \ 
--runtime java8 \ 
--description "Lambda description..." \ 
--memory-size 256 \ 
--timeout 45 \ 
--environment Variables={DEV_URL=dev,PROD_URL=prod} 

它給了我這個消息並不會創建lambda函數

:my-lambda:createLambda 
usage: aws [options] <command> <subcommand> [<subcommand> ...] [parameters] 
To see help text, you can run: 

    aws help 
    aws <command> help 
    aws <command> <subcommand> help 

Unknown options: Variables=PROD_URL=prod 
:my-lambda:createLambda FAILED 

如果我刪除第二個變量(只申報一個環境變量),它創建的功能就好了。

lambda create-function cli documentation,環境選項接受多個變量:

--environment(結構)

包含您的環境配置 設置的父對象。語法速記:

變量= {KeyName1 =字符串,KeyName2 =字符串}

我應該能夠通過一個腳本來創建拉姆達而不是通過AWS控制檯(版本應該是自動)。

我在這裏錯過了什麼或者我做錯了什麼?

+1

試試'引號包裝'變量= {DEV_URL =開發,PROD_URL = PROD}? –

回答

3

你應該Variables="{KeyName1=string,KeyName2=string}"

+0

這樣做!謝謝! – Angela