You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
62 lines
2.2 KiB
YAML
62 lines
2.2 KiB
YAML
language: python
|
|
|
|
python:
|
|
- "3.5"
|
|
|
|
cache:
|
|
npm: true
|
|
directories:
|
|
- ~/.cache
|
|
|
|
addons:
|
|
firefox: "latest"
|
|
apt:
|
|
packages:
|
|
- libgconf-2-4
|
|
|
|
services:
|
|
- docker
|
|
|
|
env:
|
|
- CONTAINER_COVERAGE_DATA_DIR="/coverage_data"
|
|
HOST_COVERAGE_DATA_DIR="${TRAVIS_BUILD_DIR}"
|
|
DJANGO_SU_NAME="admin"
|
|
DJANGO_SU_EMAIL="admin@localhost.company"
|
|
DJANGO_SU_PASSWORD="12qwaszx"
|
|
NODE_VERSION="12"
|
|
|
|
before_install:
|
|
- nvm install ${NODE_VERSION}
|
|
|
|
before_script:
|
|
- docker-compose -f docker-compose.yml -f docker-compose.ci.yml build
|
|
- chmod a+rwx ${HOST_COVERAGE_DATA_DIR}
|
|
|
|
script:
|
|
- docker-compose -f docker-compose.yml -f docker-compose.ci.yml run cvat_ci /bin/bash -c 'coverage run -a manage.py test cvat/apps utils/cli && mv .coverage ${CONTAINER_COVERAGE_DATA_DIR}'
|
|
- docker-compose -f docker-compose.yml -f docker-compose.ci.yml run cvat_ci /bin/bash -c 'cd cvat-data && npm install && cd ../cvat-core && npm install && npm run test && coveralls-lcov -v -n ./reports/coverage/lcov.info > ${CONTAINER_COVERAGE_DATA_DIR}/coverage.json'
|
|
- docker-compose up -d
|
|
# Create superuser
|
|
- docker exec -it cvat bash -ic "echo \"from django.contrib.auth.models import User; User.objects.create_superuser('${DJANGO_SU_NAME}', '${DJANGO_SU_EMAIL}', '${DJANGO_SU_PASSWORD}')\" | python3 ~/manage.py shell"
|
|
# End-to-end testing
|
|
- if [[ $TRAVIS_EVENT_TYPE == "cron" && $TRAVIS_BRANCH == "develop" ]];
|
|
then
|
|
cd ./tests && npm install &&
|
|
npm run cypress:run:firefox && cd .. &&
|
|
npm install &&
|
|
npm run coverage &&
|
|
docker-compose up -d --build &&
|
|
cd ./tests &&
|
|
npm run cypress:run:chrome && cd .. &&
|
|
npm run report:coverage:text &&
|
|
npm run report:coverage:lcov;
|
|
else
|
|
cd ./tests && npm install &&
|
|
npm run cypress:run:chrome && cd ..;
|
|
fi;
|
|
|
|
|
|
after_success:
|
|
# https://coveralls-python.readthedocs.io/en/latest/usage/multilang.html
|
|
- docker-compose -f docker-compose.yml -f docker-compose.ci.yml run cvat_ci /bin/bash -c 'ln -s ${CONTAINER_COVERAGE_DATA_DIR}/.git . && ln -s ${CONTAINER_COVERAGE_DATA_DIR}/.coverage . && ln -s ${CONTAINER_COVERAGE_DATA_DIR}/coverage.json . && coveralls --merge=coverage.json'
|