Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/13.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
Amazon web services 通过命令访问更新的lambda版本:`aws lambda publish version`_Amazon Web Services_Continuous Integration_Aws Lambda_Aws Cli - Fatal编程技术网

Amazon web services 通过命令访问更新的lambda版本:`aws lambda publish version`

Amazon web services 通过命令访问更新的lambda版本:`aws lambda publish version`,amazon-web-services,continuous-integration,aws-lambda,aws-cli,Amazon Web Services,Continuous Integration,Aws Lambda,Aws Cli,我的CI管道将做两件事 生成新的lambda版本并发布 更新别名以指向该新版本 这将通过cli命令完成。我的问题是,如何访问从第一个命令生成的版本号。它将返回并发布到CLI。这可以通过一些漂亮的was命令轻松访问,还是我必须自己解析它 e、 g 这是可行的,但仍然很好奇是否有更好的方法 version=$(aws lambda发布版本--函数名测试_lambda--说明“通过cli更新”--区域eu-west-1 | jq'.version') 请参见AWS CLI用户指南第页,具体和 在本

我的CI管道将做两件事

  • 生成新的lambda版本并发布
  • 更新别名以指向该新版本
这将通过cli命令完成。我的问题是,如何访问从第一个命令生成的版本号。它将返回并发布到CLI。这可以通过一些漂亮的was命令轻松访问,还是我必须自己解析它

e、 g


这是可行的,但仍然很好奇是否有更好的方法

version=$(aws lambda发布版本--函数名测试_lambda--说明“通过cli更新”--区域eu-west-1 | jq'.version')

请参见AWS CLI用户指南第页,具体和

在本例中,我使用on.gitlab-ci.yml


version=$(aws lambda发布版本--函数名测试_lambda--说明“通过cli更新”--区域eu-west-1 | jq'.version | tonumber')需要是一个int,以便在更新别名命令中使用。可能需要将双引号添加到
--查询
参数中
version=$(aws lambda publish-version \
  --function-name test_lambda --description "updated via cli" --region eu-west-1 \
  --query Version \
  --output text)
NEW_LAMBDA_VERSION=$(aws lambda list-versions-by-function --function-name $LAMBDA_NAME_FOR_DEPLOY --no-paginate --query "max_by(Versions, &to_number(to_number(Version) || '0'))")
NEW_LAMBDA_VERSION=$(echo $NEW_LAMBDA_VERSION | jq -r .Version)
echo $NEW_LAMBDA_VERSION