我正在尝试将serverless
集成到我的circleci
工作流程中。
我尝试先将key
和secret
都添加到AWS permissions
中,但这没有用。
然后,我将key
和secret
添加到Environment variables
并在我的配置文件中:
sudo npm install -g serverless
sls config credentials --provider aws --key $AWS_ACCESS_KEY_ID --secret $AWS_SECRET_ACCESS_KEY
sls deploy -v
但是我看到了相同的错误:
Serverless Error ---------------------------------------
You are not currently logged in. Follow instructions in http://slss.io/run-in-cicd to setup env vars for authentication.
有人遇到这个问题吗?我在网上找不到答案或提示。谢谢。
答案 0 :(得分:2)
这可能仅适用于尝试将无服务器企业版与已设置的监视和仪表板一起使用的用户。 @wintvelt的答案对我不起作用,因为如果删除org变量,则可能会断开企业所需的连接。因此,我的CircleCI设置步骤如下:
通过阅读Seed.run如何使用户与Serverless集成,我有了这个想法。有关更多信息,请阅读以下链接:https://seed.run/docs/integrating-with-serverless-enterprise。
答案 1 :(得分:1)
只需选中Circleci,即可在设置页面中停止支持AWS Permissions
作为可配置选项。
您需要将凭据设置为项目的环境变量。凭据应准确命名为AWS_ACCESS_KEY_ID
和AWS_SECRET_ACCESS_KEY
。
这就是您需要做的。您无需执行任何其他步骤。我在我的项目上尝试了此方法,并成功了。
您的部署步骤应该简单地是
sls deploy
答案 2 :(得分:-1)
作为上一个答案的后续:我有完全相同的错误。 我将聊天中的解决方案作为解决方案。
对我来说,我应用的修复程序是
对我来说,仅靠1.和2.还不够。我还必须从yml文件中删除该行,才能通过CircleCI进行部署。
对于那些在这里遇到同样问题的人,希望这对您有帮助!