여러분, jasmine 테스트를 컴파일하고 실행 한 후 이슈를 생성하거나 CodePipeline을 실패 및 중지하는 CodeBuild 프로젝트를 발생시키는 올바른 방법을 알아 내려고 노력했습니다. 배포를 진행할 필요가 없습니다.AWS CodeBuild 또는 Lambda를 사용하여 배포 전에 jasmine 테스트 실행
version: 0.1
phases:
install:
commands:
- echo Installing... Running npm install
- npm install
pre_build:
commands:
- echo pre_build...
build:
commands:
- echo Testing... Running npm test
- npm test
post_build:
commands:
- echo Build completed on `date`
artifacts:
files:
- '**/*'
가 어떻게이 npm test
위상 실패 :
내 buildspec.yml
처럼 보인다면? npm test
동안 재스민 테스트 중 하나라도 실패하면 이슈가 생성됩니까?
내가 가진 또 다른 생각은 가지고있는 검사가 실패하면 발생 다음
var params = {
jobId: jobId,
failureDetails: {
message: JSON.stringify(message),
type: 'JobFailed',
externalExecutionId: context.invokeid
}
};
codepipeline.putJobFailureResult(params, function(err, data) {
...
});
또는 CodeBuild에 정지 신호를 보내?
var params = {
id: 'STRING_VALUE' /* required */
};
codebuild.stopBuild(params, function(err, data) {
if (err) console.log(err, err.stack); // an error occurred
else console.log(data); // successful response
});
아티팩트를 생성하지 않기 위해 빌드를 어떻게 종료합니까? 어쩌면 내가 잘못 했어. 단위 테스트를 시작하는 람다 함수 여야한다. 나는 람다가 이것에 이상적인지 확신 할 수 없다. 단위 테스트를 끝내는 데 시간이 좀 걸릴 것이라고 생각한다.
고마워!