【发布时间】:2021-01-20 04:23:55
【问题描述】:
我的 dotnet 项目有这个 buildspec.yaml。
version: 0.2
env:
variables:
DOTNET_ROOT: /root/.dotnet
secrets-manager:
AWS_ACCESS_KEY_ID_PARAM: CodeBuild:AWS_ACCESS_KEY_ID
AWS_SECRET_ACCESS_KEY_PARAM: CodeBuild:AWS_SECRET_ACCESS_KEY
phases:
install:
runtime-versions:
dotnet: 3.1
pre_build:
commands:
- echo Command ran in Prebuild
- echo Restore started on `date`
- export PATH="$PATH:/root/.dotnet/tools"
- pip install --upgrade awscli
- aws configure set profile $Profile
- aws configure set region $Region
- aws configure set aws_access_key_id $AWS_ACCESS_KEY_ID_PARAM
- aws configure set aws_secret_access_key $AWS_SECRET_ACCESS_KEY_PARAM
- cd Dotnetlambda4
- cd src
- cd Dotnetlambda4
- dotnet clean
- dotnet restore
build:
commands:
- echo Build started on `date`
- dotnet new -i Amazon.Lambda.Templates::*
- dotnet tool install -g Amazon.Lambda.Tools
- dotnet tool update -g Amazon.Lambda.Tools
- dotnet lambda deploy-function "Dotnetlambda4" --function-role "arn:aws:iam::433377406395:role/LambdaExecutionRole" --region "us-east-1"
- echo Build finished.
这些是构建[Container] 2020/10/05 09:44:36 Waiting for agent ping 的日志 [容器] 2020/10/05 09:44:38 等待DOWNLOAD_SOURCE [容器] 2020/10/05 09:44:39 阶段为 DOWNLOAD_SOURCE [容器] 2020/10/05 09:44:39 CODEBUILD_SRC_DIR=/codebuild/output/src073255159/src [容器] 2020/10/05 09:44:39 YAML 位置是 /codebuild/output/src073255159/src/buildspec.yaml [容器] 2020/10/05 09:44:39 找不到阶段名称的命令:安装 [容器] 2020/10/05 09:44:39 处理环境变量
我认为的第一个错误是 “没有找到阶段名称的命令:安装”。我不知道它从哪里来
在构建阶段的第二个细节中,我得到了秘密管理器找不到指定秘密的错误。
下面是截图
我该怎么办?,每次我提交这个构建都会失败并出现这两个错误。
【问题讨论】:
-
“未找到阶段名称的命令:安装”不是错误。您是否仔细检查过您的秘密是否按照您认为的方式调用,并且与 CB 位于同一区域?
-
Amm 如何正确检查。我可以说我已经从 secret-access-manager 创建了凭据,并且对于我在 codebuild 策略中使用的资源作为“*”的策略
-
错误消息表明名为
CodeBuild的密钥不存在AWS_ACCESS_KEY_ID。也许您是在不同的地区、帐户中创建它们或拼写错误? -
Region 是一样的,我也没有拼错。 Altohugh 我已经尝试过密钥作为密钥 AWS_ACCESS_KEY_ID 和 CodeBuild:AWS_ACCESS_KEY_ID,但哪个是正确的。因为在 buildpsec.yaml 中它是 CodeBuild:AWS_ACCESS_KEY_ID
-
去秘密经理。在“秘密名称”下应该写
CodeBuild。然后,如果您检索秘密值,“秘密密钥”应该是AWS_ACCESS_KEY_ID。AWS_SECRET_ACCESS_KEY也一样。
标签: c# asp.net amazon-web-services aws-lambda aws-codebuild