(False Positive) Запуск docker-compose с помощью gitlab-ci: сборка завершается неудачно, но конвейер завершается успешно - PullRequest
0 голосов
/ 22 октября 2018

Я пытаюсь заставить gitlab-ci запустить мой файл docker-compose для построения среды интеграции, запустить тесты, а затем либо успешно, либо с ошибкой.

Файл docker для моих интеграционных тестов:

FROM maven:3.5.4-jdk-8
VOLUME /tmp
COPY / /tmp
WORKDIR /tmp
CMD mvn clean verify -P integration-test

Файл создания Docker:

services:
  integration:
    build:
      context: ./
      dockerfile: docker/integration/Dockerfile
    container_name: app_integration
    restart: always

gitlab-ci.yml:

integration_tests:
  stage: test
  only:
    - branches
  script:
    - docker-compose -f docker-compose.integration-test.yml up --exit-code-from=integration --force-recreate

Вывод на консоль:

app_integration | [INFO] 
app_integration | [ERROR] Tests run: 1, Failures: 1, Errors: 0, Skipped: 0
app_integration | [INFO] 
app_integration | [INFO] 
app_integration | [INFO] --- maven-failsafe-plugin:2.22.1:verify (integration-tests) @ app ---
app_integration | [INFO] ------------------------------------------------------------------------
app_integration | [INFO] BUILD FAILURE
app_integration | [INFO] ------------------------------------------------------------------------
app_integration | [INFO] Total time: 01:09 min
app_integration | [INFO] Finished at: 2018-10-22T17:53:33Z
app_integration | [INFO] ------------------------------------------------------------------------
app_integration | [ERROR] Failed to execute goal org.apache.maven.plugins:maven-failsafe-plugin:2.22.1:verify (integration-tests) on project app: There are test failures.
app_integration | [ERROR] 
app_integration | [ERROR] Please refer to /tmp/target/failsafe-reports for the individual test results.
app_integration | [ERROR] Please refer to dump files (if any exist) [date].dump, [date]-jvmRun[N].dump and [date].dumpstream.
app_integration | [ERROR] -> [Help 1]
app_integration | [ERROR] 
app_integration | [ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
app_integration | [ERROR] Re-run Maven using the -X switch to enable full debug logging.
app_integration | [ERROR] 
app_integration | [ERROR] For more information about the errors and possible solutions, please read the following articles:
app_integration | [ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException
app_integration exited with code 1
Stopping app_integration ... 

Stopping app_integration ... done
Aborting on container exit...
Job succeeded

Прямо сейчас,Я запускаю один тест, который запускает тест assert false и должен провалиться.Тем не менее, я не могу заставить конвейер выйти из строя так, как он «должен».

1 Ответ

0 голосов
/ 23 октября 2018

Проблема была в restart: always

Я удалил это, и он начал работать как нужно.

...