我已经在aws EC2实例中创建了一个gitlab运行程序,并且具有以下ci脚本:
stages:
- unit_test
- cleanup_build_when_fail
- deploy_to_sit
unit_test:
stage: unit_test
script:
- export PATH=$PATH:/opt/gradle/gradle-5.0/bin
- export SPRING_PROFILES_ACTIVE=test
- gradle clean test
- echo "unit_test completed!"
when: always
... with other scripts
有时,unit_test阶段在1分钟内正确完成。
但是有时它被卡住直到超时,当它被卡住时,ec2实例甚至没有响应。我必须重新启动ec2实例,以便我可以再次连接到它。这是卡住时的输出:
$ export PATH=$PATH:/opt/gradle/gradle-5.0/bin
$ export SPRING_PROFILES_ACTIVE=test
$ gradle clean test
> Task :clean UP-TO-DATE
> Task :compileJava
> Task :processResources
> Task :classes
> Task :compileTestJava
> Task :processTestResources
> Task :testClasses
我不知道如何解决此问题,请帮忙。
UPDATE :任务没有超时,这是我从gitlab看到的情况
Duration: 16 minutes 58 seconds
Timeout: 15m (from project)
答案 0 :(得分:0)
最后找到了我的解决方案,那就是OOM。
解决方案是为您的构建设置最大内存限制,例如:nodejs(yarn)或spring(gradle)