github.com/haalcala/mattermost-server-change-repo/v5@v5.33.2/.gitlab-ci/test.yml (about) 1 .test: 2 stage: test 3 image: $CI_REGISTRY/mattermost/ci/images/mattermost-build-docker:19.03.12-1 4 services: 5 - name: $CI_REGISTRY/mattermost/ci/images/docker-dind:19.03.12-1 6 alias: docker 7 variables: 8 DOCKER_TLS_CERTDIR: "" 9 DOCKER_HOST: tcp://docker:2375/ 10 DOCKER_DRIVER: overlay2 11 DOCKER_CONTENT_TRUST: 0 12 DOCKER_CONTENT_TRUST_REPOSITORY_PASSPHRASE: "" 13 14 MM_SQLSETTINGS_DATASOURCE: "postgres://mmuser:mostest@postgres:5432/mattermost_test?sslmode=disable&connect_timeout=10" 15 MM_SQLSETTINGS_DRIVERNAME: postgres 16 script: 17 - mkdir -p client/plugins 18 - mkdir -p build/test-results 19 - mkdir -p build/logs 20 - cd build 21 - docker-compose --no-ansi run --rm start_dependencies 22 - cat ../tests/test-data.ldif | docker-compose --no-ansi exec -T openldap bash -c 'ldapadd -x -D "cn=admin,dc=mm,dc=test,dc=com" -w mostest' 23 - docker-compose --no-ansi exec -T minio sh -c 'mkdir -p /data/mattermost-test' 24 - sleep 5 25 - docker run --net build_mm-test appropriate/curl:latest sh -c "until curl --max-time 5 --output - http://mysql:3306; do echo waiting for mysql; sleep 5; done;" 26 - docker run --net build_mm-test appropriate/curl:latest sh -c "until curl --max-time 5 --output - http://elasticsearch:9200; do echo waiting for elasticsearch; sleep 5; done;" 27 - ulimit -n 8096 28 # todo: remove setting GOBIN here, once circleci can be removed (see build/dotenv/test.env) 29 - > 30 time docker run -it -d --name server --net build_mm-test \ 31 --env-file=dotenv/test.env \ 32 --env MM_SQLSETTINGS_DATASOURCE=$MM_SQLSETTINGS_DATASOURCE \ 33 --env MM_SQLSETTINGS_DRIVERNAME=$MM_SQLSETTINGS_DRIVERNAME \ 34 --env GOBIN=$PWD/bin \ 35 -v $CI_PROJECT_DIR:/mattermost-server \ 36 -w /mattermost-server \ 37 $CI_REGISTRY/mattermost/ci/images/mattermost-build-server:20201119_golang-1.15.5 \ 38 bash -c "ulimit -n 8096; make test-server BUILD_NUMBER=$CI_COMMIT_SHA TESTFLAGS= TESTFLAGSEE=;" 39 - docker logs -f server 40 - docker-compose logs --tail="all" -t --no-color > logs/docker-compose_logs 41 - docker ps -a --no-trunc > logs/docker_ps 42 - docker stats -a --no-stream > logs/docker_stats 43 - tar -czvf logs/docker_logs.tar.gz logs/docker-compose_logs logs/docker_ps logs/docker_stats 44 - cp ../report.xml test-results 45 - DOCKER_EXIT_CODE=$(docker inspect server --format='{{.State.ExitCode}}') 46 - echo $DOCKER_EXIT_CODE 47 - exit $DOCKER_EXIT_CODE 48 artifacts: 49 paths: 50 - build/logs 51 reports: 52 junit: build/test-results/report.xml 53 expire_in: 7 days