[tox] envlist = py{38}-django{22,30,31} # This is needed to prevent the lms, cms, and openedx packages inside the "Open # edX" package (defined in setup.py) from getting installed into site-packages # where they can get imported, which is bad because those won't even contain # most of the source code since we don't explicitly add anything to the source # distribution. skipsdist=True # The default toxworkdir is in the source tree (as ".tox/"), but `django-admin # compilemessages` unconditionally walks the entire directory tree under the # source root and cannot handle encountering the toxworkdir. So, we un-break # compilemessages by moving the toxworkdir to the home directory. toxworkdir={homedir}/edxapp_toxenv [testenv] # This ensures "-e ." is installed, so that a link back to the top-level # edx-platform source directory is installed in site-packages, making # edx-platform source code importable from python subprocesses. Child # processes running python code do not import from the current working # directory without hacking sys.path, but they will inherit the tox virtualenv # and look in site-packages. usedevelop=True setenv = PYTHONHASHSEED=0 TOXENV={envname} passenv = BOK_CHOY_CMS_PORT BOKCHOY_HEADLESS BOK_CHOY_HOSTNAME BOK_CHOY_LMS_PORT DISABLE_COURSEENROLLMENT_HISTORY DISPLAY DJANGO_SETTINGS_MODULE EDXAPP_TEST_MONGO_HOST EDX_PLATFORM_SETTINGS JOB_NAME LMS_CFG REVISION_CFG MOZ_HEADLESS NODE_PATH NODE_VIRTUAL_ENV NO_PREREQ_INSTALL NO_PYTHON_UNINSTALL NPM_CONFIG_PREFIX PYTHON_VERSION SCRAPY_SETTINGS_MODULE SELENIUM_BROWSER SELENIUM_HOST SELENIUM_PORT SHARD SKIP_NPM_INSTALL SSH_AUTH_SOCK STUDIO_CFG SUBSET_JOB TARGET_BRANCH TEST_SUITE XDIST_GIT_BRANCH XDIST_GIT_REFSPEC XDIST_INSTANCE_TYPE XDIST_NUM_WORKERS XDIST_REMOTE_NUM_PROCESSES XDIST_WORKER_AMI XDIST_WORKER_IAM_PROFILE_ARN XDIST_WORKER_KEY_NAME XDIST_WORKER_SECURITY_GROUP XDIST_WORKER_SUBNET deps = django22: -r requirements/edx/django.txt django30: -r requirements/edx/django30.txt django31: -r requirements/edx/django31.txt -r requirements/edx/testing.txt whitelist_externals = /bin/bash /usr/bin/curl /bin/tar commands = {posargs}