diff --git a/package.json b/package.json index 99469bb..7e14cd7 100644 --- a/package.json +++ b/package.json @@ -21,7 +21,7 @@ "phantomjs-prebuilt": "2.1.x" }, "scripts": { - "postinstall": "if [ ! -d .tox ] || [ ! -d .tox/karma ]; then tox -ekarma --notest; python3.5 -m pip install -U -t ./.tox/karma/lib/python3.5/site-packages/ ../horizon; fi", + "postinstall": "if [ ! -d .tox ] || [ ! -d .tox/karma ]; then tox -ekarma --notest; python3 -m pip install -U -t ./.tox/karma/lib/`python3 -V|tr -d ' '|tr 'P' 'p'|cut -c -9`/site-packages/ ../horizon; fi", "test": "karma start zun_ui/karma.conf.js --single-run", "lint": "eslint --no-color zun_ui/static", "lintq": "eslint --quiet zun_ui/static" diff --git a/tox.ini b/tox.ini index 1177a39..52a40fe 100644 --- a/tox.ini +++ b/tox.ini @@ -26,10 +26,11 @@ commands = pip install -e ../horizon [testenv:venv] +basepython = python3 commands = {posargs} [testenv:pep8] -basepython = python3.5 +basepython = python3 commands = flake8 {posargs} [flake8] @@ -37,6 +38,7 @@ exclude = .venv,.git,.tox,dist,*egg,build,node_modules max-complexity = 20 [testenv:cover] +basepython = python3 commands = python setup.py test --coverage --testr-args='{posargs}' # NOTE(shu-mutow): On CI infra, horizon will be installed @@ -71,7 +73,7 @@ commands = {[testenv]commands} [testenv:eslint] -basepython = python3.5 +basepython = python3 whitelist_externals = npm commands = @@ -79,10 +81,10 @@ commands = npm run lint # NOTE(shu-mutow): The "postinstall" script on package.json will install horizon -# from master branch into py35 environment for testing javascripts. +# from master branch into python3.x environment for testing javascripts. # Horizon from master is needed to be cloned into ../horizon on both local and CI. [testenv:karma] -basepython = python3.5 +basepython = python3 whitelist_externals = {[testenv:eslint]whitelist_externals} commands = @@ -90,14 +92,14 @@ commands = npm run test [testenv:karma-local] -basepython = python3.5 +basepython = python3 whitelist_externals = {[testenv:eslint]whitelist_externals} commands = {[testenv:karma]commands} [testenv:docs] -basepython = python3.5 +basepython = python3 deps = -c{env:UPPER_CONSTRAINTS_FILE:https://git.openstack.org/cgit/openstack/requirements/plain/upper-constraints.txt} -r{toxinidir}/doc/requirements.txt @@ -105,7 +107,7 @@ commands= sphinx-build -W -b html doc/source doc/build/html [testenv:docs-local] -basepython = python3.5 +basepython = python3 deps = {[testenv:docs]deps} commands= @@ -113,7 +115,7 @@ commands= {[testenv:docs]commands} [testenv:releasenotes] -basepython = python3.5 +basepython = python3 deps = {[testenv:docs]deps} commands = diff --git a/zun_ui/karma.conf.js b/zun_ui/karma.conf.js index 9760a43..725d494 100644 --- a/zun_ui/karma.conf.js +++ b/zun_ui/karma.conf.js @@ -16,14 +16,18 @@ var fs = require('fs'); var path = require('path'); +var child_process = require("child_process"); module.exports = function (config) { // This tox venv is setup in the post-install npm step - var toxPath = '../.tox/karma/lib/python3.5/site-packages/'; + var pythonVersion = "python3."; + var stdout = child_process.execFileSync("python3", ["--version"]); + pythonVersion += stdout.toString().split(".")[1]; + var toxPath = '../.tox/karma/lib/' + pythonVersion + '/site-packages/'; + console.log("Karma will check on directory: ", toxPath); process.env.PHANTOMJS_BIN = 'node_modules/phantomjs-prebuilt/bin/phantomjs'; - config.set({ preprocessors: { // Used to collect templates for preprocessing.