我使用AWS CodeBuild使用无服务器框架将函数部署到AWS lambda。
这是我的构建规范。yml,
version: 0.2
phases:
install:
runtime-versions:
nodejs: 10
commands:
- echo installing Mocha...
- npm install -g mocha
- echo installing Serverless...
- npm install -g serverless
pre_build:
commands:
- echo running npm install for global project...
- npm install
- echo running npm install for each function...
- folders=src/*
- for value in $folders;
do
echo $value
npm --prefix $value install $value;
done
build:
commands:
- sls package
- serverless deploy --stage $STAGE --region $AWS_DEFAULT_REGION | tee deploy.out
post_build:
commands:
- echo done
# - . ./test.sh
问题是,即使当无服务器部署-阶段$STAGE-区域$AWS_DEFAULT_REGION|deploy.out命令失败时,构建项目也会在代码库中由AWS代码构建显示为成功。
当serverless deploy命令失败时,我希望生成状态为failure。
这是因为无论build
失败还是成功,都会执行post\u build
。因此,它不会测量构建失败,不管怎样,post_build
都将运行。这将在构建阶段转换中解释。
您可以通过手动检查build
是否在post_build
中失败来纠正这一点,方法是检查CODEBUILD_BUILD_SUCCEEDING
env变量:
因此,在您的post_build
中,您可以检查CODEBUILD_BUILD_SUCCEEDING==0
和退出1
是否为真。
post_build:
commands:
- if [[ $CODEBUILD_BUILD_SUCCEEDING == 0 ]]; then exit 1; fi
- echo done
# - . ./test.sh
您的命令:
- serverless deploy --stage $STAGE --region $AWS_DEFAULT_REGION | tee deploy.out
... 在生成失败时不返回非零代码。命令tee
屏蔽了来自serverless deploy
的返回代码,因为它本身使用“0”返回代码进行响应。
我建议将命令重新编写为:
- serverless deploy --stage $STAGE --region $AWS_DEFAULT_REGION > deploy.out
- cat deploy.out
我正在尝试打包/部署用dotnetcore编写的AWS SAM Lambda函数。我有3个文件: pipeline.yml是一个创建CodeBuild项目的云形成模板,设置环境变量,并将GitHub网络钩子连接到特定的buildspec.yml文件。 建筑规范。yml安装所需的软件包,调用dotnet lambda软件包,该软件包生成包含以下内容的压缩文件。Net打包应用程序。然后调用sam包和s
问题内容: 我正在运行Jenkins 1.411版,并使用Maven进行构建。 即使应用程序构建成功,Jenkins仍将其视为不稳定的构建。我已禁用所有测试以隔离问题。 问题答案: 我前一段时间使用hudson / jenkins,但您应该看看Jenkins术语 不稳定的构建 : 如果构建成功构建并且一个或多个发布者报告该构建不稳定,则该构建不稳定。 例如,如果配置了JUnit发布者并且测试失败,
有人能帮我解决这个错误吗? 我把ADS放在我的项目中,当我尝试将我的项目构建到Android时,我得到了这个错误。 但是,如果我将ADS脱机,那么错误就会消失。 命令调用失败:Gradle 构建失败。C:/Program Files/Java/jdk1.8.0_45\bin\java.exe -classpath “E:\unity 5\Editor\Data\PlaybackEngines\An
问题内容: 我试图构建新项目,但是当我单击构建时,构建每次都会失败。 我尝试删除我的项目并再次创建它,但是仍然没有帮助。 警告 错误 这些是Xcode向我显示的错误消息。项目名称为“ MyFirstApp”,我在该错误消息上剪切了一些文件路径。那么我如何建立这个项目呢? 问题答案: 在终端中尝试:
我试图生成和测试我的代码(如果有效)的cucumber - Maven报告,然后打开命令提示符。我尝试过“mvn干净”,这是构建成功。之后,我尝试了“mvn安装”并遇到了构建失败(显示错误)。 这是我的pom.xml:
分级任务 null 在https://help.gradle.org获得更多帮助