无服务器部署因 stackTags 变量中的 + 字符而失败
Serverless deploy failing with + character in stackTags variable
在我的 serverless.yml 文件中,我有一个定义如下的 StackTag 变量
stackTags:
Name: My Service
Category: Environment:${opt:stage}+Role:Application
所以当我 运行 sls deploy --stage dev
收到以下错误并且部署失败时
无效的阶段变量值:类别:环境:${opt:stage}+Role:Application。请使用带有字母数字字符和符号 ' '、-'、'.'、'_'、':'、'/'、'?'、'&'、'=' 和 ',' 的值。
这是无服务器框架的限制吗?能够通过 AWS UI 控制台使用相同的标签。
当我将“+”替换为“.”等任何其他字符时或“:”然后部署工作,“+”字符失败
这不是一个很好的答案,但您遇到了一个已知和已报告的错误:
https://github.com/serverless/serverless/issues/6133
API Gateway tags setting Stage Variables not Tags
阶段变量对标签有不同的限制(特别是对于您的情况,它们不支持 +
)。
查看版本,恢复到版本 1.14.1
可能是解决此问题的方法。
在我的 serverless.yml 文件中,我有一个定义如下的 StackTag 变量
stackTags:
Name: My Service
Category: Environment:${opt:stage}+Role:Application
所以当我 运行 sls deploy --stage dev
收到以下错误并且部署失败时
无效的阶段变量值:类别:环境:${opt:stage}+Role:Application。请使用带有字母数字字符和符号 ' '、-'、'.'、'_'、':'、'/'、'?'、'&'、'=' 和 ',' 的值。
这是无服务器框架的限制吗?能够通过 AWS UI 控制台使用相同的标签。
当我将“+”替换为“.”等任何其他字符时或“:”然后部署工作,“+”字符失败
这不是一个很好的答案,但您遇到了一个已知和已报告的错误:
https://github.com/serverless/serverless/issues/6133
API Gateway tags setting Stage Variables not Tags
阶段变量对标签有不同的限制(特别是对于您的情况,它们不支持 +
)。
查看版本,恢复到版本 1.14.1
可能是解决此问题的方法。