Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/image/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Aws lambda AWS创建Lambda脚本参数输出为参数名称,而不是值_Aws Lambda_Octopus Deploy - Fatal编程技术网

Aws lambda AWS创建Lambda脚本参数输出为参数名称,而不是值

Aws lambda AWS创建Lambda脚本参数输出为参数名称,而不是值,aws-lambda,octopus-deploy,Aws Lambda,Octopus Deploy,我正在运行创建或更新lambda函数 当我们对参数的值进行硬编码时,脚本将按照公布的方式工作。但是,当我们定义用于参数的变量时,它总是注入Octopus变量的名称而不是值 将名为AWS_Dash_OrderOnline_Lambda_Function_Name的变量作为值而非实际变量值读取为{AWS_Dash_OrderOnline_Lambda_Function_Name} 发生了什么,我需要改变什么 相关脚本代码如下: # Get the parameters. $functionName

我正在运行创建或更新lambda函数

当我们对参数的值进行硬编码时,脚本将按照公布的方式工作。但是,当我们定义用于参数的变量时,它总是注入Octopus变量的名称而不是值

将名为
AWS_Dash_OrderOnline_Lambda_Function_Name
的变量作为值而非实际变量值读取为
{AWS_Dash_OrderOnline_Lambda_Function_Name}

发生了什么,我需要改变什么

相关脚本代码如下:

# Get the parameters.
$functionName = $OctopusParameters['FunctionName']
...
Write-Output $functionName
输出:

#{AWS_Dash_OrderOnline_Lambda_Function_Name} 

如果您没有正确定义变量的范围,您将得到问题中所示的结果


正确定义您的范围、环境、角色、渠道等,您的变量值将正确导入。

如果无法确定某个值,您将以如下方式获取变量值。这可能是因为名称输入错误,也可能是因为变量没有与当前部署范围匹配的值

例如,您可能为Prod定义了名为
Foo
的变量值,而不是为Dev定义的变量值。当您在Dev中运行部署时,您将获得
{Foo}
,但在Prod中您将获得实际值


我使用的一种技术是提供一个UnscopedFoo之类的unscoped值,如果您看到该值,您就知道您已经正确输入了名称,这是一个范围问题。如果您没有输入,则名称输入不正确。

Dude!我喜欢这个主意。伟大的命名大会。