Commit a77f90b8 by Christopher Lee

Add travis build matrix

parent 8e27e72a
...@@ -20,19 +20,37 @@ addons: ...@@ -20,19 +20,37 @@ addons:
before_install: before_install:
- docker-compose -f ./.travis/docker-compose-travis.yml up -d - docker-compose -f ./.travis/docker-compose-travis.yml up -d
install: matrix:
- docker exec -t ecommerce_testing bash -c 'source /edx/app/ecommerce/ecommerce_env && cd /edx/app/ecommerce/ecommerce/ && make requirements' include:
- env: TESTNAME=quality-and-js
script:
- docker exec -t ecommerce_testing bash -c 'source /edx/app/ecommerce/ecommerce_env && cd /edx/app/ecommerce/ecommerce/docs && make html' install:
- docker exec -t ecommerce_testing bash -c 'source /edx/app/ecommerce/ecommerce_env && cd /edx/app/ecommerce/ecommerce/ && DJANGO_SETTINGS_MODULE=ecommerce.settings.test make check_translations_up_to_date' - docker exec -t ecommerce_testing bash -c 'source /edx/app/ecommerce/ecommerce_env && cd /edx/app/ecommerce/ecommerce/ && make requirements'
- docker exec -t ecommerce_testing bash -c 'source /edx/app/ecommerce/ecommerce_env && cd /edx/app/ecommerce/ecommerce/ && DJANGO_SETTINGS_MODULE=ecommerce.settings.devstack make validate_translations'
- docker exec -t ecommerce_testing bash -c 'source /edx/app/ecommerce/ecommerce_env && cd /edx/app/ecommerce/ecommerce/ && DJANGO_SETTINGS_MODULE=ecommerce.settings.test make clean_static' script:
- docker exec -t ecommerce_testing bash -c 'source /edx/app/ecommerce/ecommerce_env && cd /edx/app/ecommerce/ecommerce/ && DJANGO_SETTINGS_MODULE=ecommerce.settings.test make static' - docker exec -t ecommerce_testing bash -c 'source /edx/app/ecommerce/ecommerce_env && cd /edx/app/ecommerce/ecommerce/docs && make html'
- docker exec -t ecommerce_testing bash -c 'source /edx/app/ecommerce/ecommerce_env && cd /edx/app/ecommerce/ecommerce/ && DJANGO_SETTINGS_MODULE=ecommerce.settings.test TRAVIS=1 xvfb-run make validate_python' - docker exec -t ecommerce_testing bash -c 'source /edx/app/ecommerce/ecommerce_env && cd /edx/app/ecommerce/ecommerce/ && DJANGO_SETTINGS_MODULE=ecommerce.settings.test make check_translations_up_to_date'
- docker exec -t ecommerce_testing bash -c 'source /edx/app/ecommerce/ecommerce_env && cd /edx/app/ecommerce/ecommerce/ && DJANGO_SETTINGS_MODULE=ecommerce.settings.test xvfb-run make validate_js' - docker exec -t ecommerce_testing bash -c 'source /edx/app/ecommerce/ecommerce_env && cd /edx/app/ecommerce/ecommerce/ && DJANGO_SETTINGS_MODULE=ecommerce.settings.devstack make validate_translations'
- docker exec -t ecommerce_testing bash -c 'source /edx/app/ecommerce/ecommerce_env && cd /edx/app/ecommerce/ecommerce/ && DJANGO_SETTINGS_MODULE=ecommerce.settings.test make clean_static'
after_success: - docker exec -t ecommerce_testing bash -c 'source /edx/app/ecommerce/ecommerce_env && cd /edx/app/ecommerce/ecommerce/ && DJANGO_SETTINGS_MODULE=ecommerce.settings.test make static'
- pip install -U codecov - docker exec -t ecommerce_testing bash -c 'source /edx/app/ecommerce/ecommerce_env && cd /edx/app/ecommerce/ecommerce/ && DJANGO_SETTINGS_MODULE=ecommerce.settings.test make run_isort'
- docker exec ecommerce_testing /edx/app/ecommerce/ecommerce/.travis/run_coverage.sh - docker exec -t ecommerce_testing bash -c 'source /edx/app/ecommerce/ecommerce_env && cd /edx/app/ecommerce/ecommerce/ && DJANGO_SETTINGS_MODULE=ecommerce.settings.test make run_pep8'
- codecov - docker exec -t ecommerce_testing bash -c 'source /edx/app/ecommerce/ecommerce_env && cd /edx/app/ecommerce/ecommerce/ && DJANGO_SETTINGS_MODULE=ecommerce.settings.test make run_pylint'
- docker exec -t ecommerce_testing bash -c 'source /edx/app/ecommerce/ecommerce_env && cd /edx/app/ecommerce/ecommerce/ && DJANGO_SETTINGS_MODULE=ecommerce.settings.test xvfb-run make validate_js'
- env: TESTNAME=test-python
install:
- docker exec -t ecommerce_testing bash -c 'source /edx/app/ecommerce/ecommerce_env && cd /edx/app/ecommerce/ecommerce/ && make requirements'
script:
- docker exec -t ecommerce_testing bash -c 'source /edx/app/ecommerce/ecommerce_env && cd /edx/app/ecommerce/ecommerce/docs && make html'
- docker exec -t ecommerce_testing bash -c 'source /edx/app/ecommerce/ecommerce_env && cd /edx/app/ecommerce/ecommerce/ && DJANGO_SETTINGS_MODULE=ecommerce.settings.test make clean_static'
- docker exec -t ecommerce_testing bash -c 'source /edx/app/ecommerce/ecommerce_env && cd /edx/app/ecommerce/ecommerce/ && DJANGO_SETTINGS_MODULE=ecommerce.settings.test make static'
- docker exec -t ecommerce_testing bash -c 'source /edx/app/ecommerce/ecommerce_env && cd /edx/app/ecommerce/ecommerce/ && DJANGO_SETTINGS_MODULE=ecommerce.settings.test TRAVIS=1 xvfb-run make validate_python'
after_success:
- pip install -U codecov
- docker exec ecommerce_testing /edx/app/ecommerce/ecommerce/.travis/run_coverage.sh
- codecov
...@@ -57,6 +57,15 @@ clean: ...@@ -57,6 +57,15 @@ clean:
clean_static: clean_static:
rm -rf assets/* ecommerce/static/build/* rm -rf assets/* ecommerce/static/build/*
run_isort:
VIRTUAL_ENV=/edx/app/ecommerce/ecommerce_env isort --check-only --recursive e2e/ ecommerce/
run_pep8:
pep8 --config=.pep8 ecommerce e2e
run_pylint:
pylint -j 0 --rcfile=pylintrc ecommerce e2e
quality: quality:
VIRTUAL_ENV=/edx/app/ecommerce/ecommerce_env isort --check-only --recursive e2e/ ecommerce/ VIRTUAL_ENV=/edx/app/ecommerce/ecommerce_env isort --check-only --recursive e2e/ ecommerce/
pep8 --config=.pep8 ecommerce e2e pep8 --config=.pep8 ecommerce e2e
...@@ -67,8 +76,8 @@ validate_js: ...@@ -67,8 +76,8 @@ validate_js:
$(NODE_BIN)/gulp test $(NODE_BIN)/gulp test
$(NODE_BIN)/gulp lint $(NODE_BIN)/gulp lint
validate_python: clean quality validate_python: clean
PATH=$$PATH:$(NODE_BIN) REUSE_DB=1 coverage run --branch --source=ecommerce ./manage.py test ecommerce \ DISABLE_MIGRATIONS=1 PATH=$$PATH:$(NODE_BIN) REUSE_DB=1 coverage run --branch --source=ecommerce ./manage.py test ecommerce \
--settings=ecommerce.settings.test --with-ignore-docstrings --logging-level=DEBUG --settings=ecommerce.settings.test --with-ignore-docstrings --logging-level=DEBUG
coverage report coverage report
...@@ -76,7 +85,7 @@ fast_validate_python: clean quality ...@@ -76,7 +85,7 @@ fast_validate_python: clean quality
REUSE_DB=1 DISABLE_ACCEPTANCE_TESTS=True ./manage.py test ecommerce \ REUSE_DB=1 DISABLE_ACCEPTANCE_TESTS=True ./manage.py test ecommerce \
--settings=ecommerce.settings.test --processes=4 --with-ignore-docstrings --logging-level=DEBUG --settings=ecommerce.settings.test --processes=4 --with-ignore-docstrings --logging-level=DEBUG
validate: validate_python validate_js validate: validate_python validate_js quality
theme_static: theme_static:
python manage.py update_assets --skip-collect python manage.py update_assets --skip-collect
......
...@@ -47,7 +47,6 @@ DATABASES = { ...@@ -47,7 +47,6 @@ DATABASES = {
}, },
} }
# AUTHENTICATION # AUTHENTICATION
ENABLE_AUTO_AUTH = True ENABLE_AUTO_AUTH = True
...@@ -160,3 +159,9 @@ ENTERPRISE_API_URL = urljoin(ENTERPRISE_SERVICE_URL, 'api/v1/') ...@@ -160,3 +159,9 @@ ENTERPRISE_API_URL = urljoin(ENTERPRISE_SERVICE_URL, 'api/v1/')
# Don't bother sending fake events to Segment. Doing so creates unnecessary threads. # Don't bother sending fake events to Segment. Doing so creates unnecessary threads.
SEND_SEGMENT_EVENTS = False SEND_SEGMENT_EVENTS = False
# SPEED
DEBUG = False
TEMPLATE_DEBUG = False
CELERY_EAGER_PROPAGATES_EXCEPTIONS = True
BROKER_BACKEND = 'memory'
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment