Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

Commit 183a577

Browse filesBrowse files
committed
Merge pull request plotly#309 from plotly/speed-up-circle-artifacts
Speed up circle artifacts
2 parents 814c1d5 + a9899df commit 183a577
Copy full SHA for 183a577

File tree

Expand file treeCollapse file tree

3 files changed

+40
-43
lines changed
Filter options
Expand file treeCollapse file tree

3 files changed

+40
-43
lines changed

‎circle.yml

Copy file name to clipboardExpand all lines: circle.yml
+8-1Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,15 @@
11
machine:
2+
23
environment:
4+
35
PLOTLY_PACKAGE_ROOT: /home/ubuntu/python-api
46
PLOTLY_CONFIG_DIR: ${HOME}/.plotly
57
PLOTLY_PYTHON_VERSIONS: 2.7.8 3.3.3 3.4.1
68
PLOTLY_CORE_REQUIREMENTS_FILE: ${PLOTLY_PACKAGE_ROOT}/requirements.txt
79
PLOTLY_OPTIONAL_REQUIREMENTS_FILE: ${PLOTLY_PACKAGE_ROOT}/optional-requirements.txt
10+
811
dependencies:
12+
913
override:
1014

1115
# run all the pre-written installers (this will take a *while*)
@@ -19,8 +23,11 @@ dependencies:
1923
- cd ~ && python -c "import plotly"
2024

2125
cache_directories:
26+
2227
- "~/.pyenv/versions" # attempt to just cache installed pyenv things
28+
2329
test:
30+
2431
override:
2532

2633
# run test suite in all our python versions
@@ -34,6 +41,6 @@ test:
3441
- sudo chmod -R 777 ${PLOTLY_CONFIG_DIR} && python -c "import plotly"
3542

3643
# test core things in the general 2.7 version that circle has
37-
- nosetests -xv plotly/tests/test_core --with-coverage --cover-package=plotly
44+
- nosetests -x plotly/tests/test_core --with-coverage --cover-package=plotly
3845
- mkdir "${CIRCLE_ARTIFACTS}/2.7" || true
3946
- coverage html -d "${CIRCLE_ARTIFACTS}/2.7" --title=2.7

‎circle/setup.sh

Copy file name to clipboard
+12-10Lines changed: 12 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,42 +1,44 @@
11
#!/bin/bash
22

3-
echo "running setup routine with python versions:"
3+
SIG="☁☀☂"
4+
5+
echo "${SIG} Running setup routine with Python versions:"
46
for version in ${PLOTLY_PYTHON_VERSIONS[@]}; do
5-
echo " ${version}"
7+
echo "${SIG} ${version}"
68
done
79

810
PROGNAME=$(basename $0)
911
function error_exit
1012
{
11-
echo -e "${PROGNAME}: ${1:-"Unknown Error"}\n" 1>&2
13+
echo -e "${SIG} ${PROGNAME}: ${1:-"Unknown Error"}\n" 1>&2
1214
exit 1
1315
}
1416

1517
# PYENV shims need to be infront of the rest of the path to work!
16-
echo "adding pyenv shims to the beginning of the path in this shell"
18+
echo "${SIG} Adding pyenv shims to the beginning of the path in this shell."
1719
export PATH="/home/ubuntu/.pyenv/shims:$PATH"
1820

1921
# for each version we want, setup a functional virtual environment
2022
for version in ${PLOTLY_PYTHON_VERSIONS[@]}; do
21-
echo Setting up Python ${version}
23+
echo "${SIG} Setting up Python ${version}"
2224

2325
# exporting this variable (in this scope) chooses the python version
2426
export PYENV_VERSION=${version}
25-
echo "Using pyenv version $(pyenv version)"
27+
echo "${SIG} Using pyenv version $(pyenv version)"
2628

2729
# this was a major issue previously, sanity check that we're using the
2830
# version we *think* we're using (that pyenv is pointing to)
29-
echo "python -c 'import sys; print(sys.version)'"
31+
echo "${SIG} python -c 'import sys; print(sys.version)'"
3032
python -c 'import sys; print(sys.version)'
3133

3234
# install core requirements all versions need
3335
pip install -r ${PLOTLY_CORE_REQUIREMENTS_FILE} ||
34-
error_exit "${LINENO}: can't install core reqs for Python ${version}"
36+
error_exit "${SIG} ${LINENO}: can't install core reqs for Python ${version}."
3537

3638
pip install -r ${PLOTLY_OPTIONAL_REQUIREMENTS_FILE} ||
37-
error_exit "${LINENO}: can't install optional for Python ${version}"
39+
error_exit "${SIG} ${LINENO}: can't install optional for Python ${version}."
3840

3941
# install some test tools
4042
pip install nose coverage ||
41-
error_exit "${LINENO}: can't install test tools for Python ${version}"
43+
error_exit "${SIG} ${LINENO}: can't install test tools for Python ${version}."
4244
done

‎circle/test.sh

Copy file name to clipboard
+20-32Lines changed: 20 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -1,59 +1,47 @@
11
#!/bin/bash
22

3-
echo "running test routine with python versions:"
3+
SIG="☁☀☂"
4+
5+
echo "${SIG} Running test routine with python versions:"
46
for version in ${PLOTLY_PYTHON_VERSIONS[@]}; do
5-
echo " ${version}"
7+
echo "${SIG} ${version}"
68
done
79

810
PROGNAME=$(basename $0)
911
function error_exit
1012
{
11-
echo -e "${PROGNAME}: ${1:-"Unknown Error"}\n" 1>&2
13+
echo -e "${SIG} ${PROGNAME}: ${1:-"Unknown Error"}\n" 1>&2
1214
exit 1
1315
}
1416

1517
# PYENV shims need to be infront of the rest of the path to work!
16-
echo "adding pyenv shims to the beginning of the path in this shell"
18+
echo "${SIG} Adding pyenv shims to the beginning of the path in this shell."
1719
export PATH="/home/ubuntu/.pyenv/shims:$PATH"
1820

1921
# for each version we want, setup a functional virtual environment
2022
for version in ${PLOTLY_PYTHON_VERSIONS[@]}; do
21-
echo Testing Python ${version}
23+
echo "${SIG} Testing Python ${version}"
2224

2325
# exporting this variable (in this scope) chooses the python version
2426
export PYENV_VERSION=${version}
25-
echo "Using pyenv version $(pyenv version)"
27+
echo "${SIG} Using pyenv version $(pyenv version)."
2628

2729
# this was a major issue previously, sanity check that we're using the
2830
# version we *think* we're using (that pyenv is pointing to)
29-
echo "python -c 'import sys; print(sys.version)'"
31+
echo "${SIG} Running: python -c 'import sys; print(sys.version)'. We've got:"
3032
python -c 'import sys; print(sys.version)'
3133

3234

33-
echo "install plotly (ignoring possibly cached versions)"
34-
pip install -I ${PLOTLY_PACKAGE_ROOT} ||
35-
error_exit "${LINENO}: can't install plotly package from project root"
36-
37-
echo "import plotly to create .plotly dir if DNE"
38-
python -c 'import plotly' ||
39-
error_exit "${LINENO}: can't import plotly package"
40-
41-
# echo "${HOME}"
42-
# echo "${PLOTLY_CONFIG_DIR}"
43-
#
44-
# # test that it imports when you don't have write permissions
45-
# sudo chmod -R 444 ${PLOTLY_CONFIG_DIR} && python -c "import plotly" ||
46-
# error_exit "${LINENO}: permissions test 444 on .plotly dir failed"
47-
#
48-
# # test that setting write permissions will work for import (and tests)
49-
# sudo chmod -R 666 ${PLOTLY_CONFIG_DIR} && python -c "import plotly" ||
50-
# error_exit "${LINENO}: permissions test 666 on .plotly dir failed"
51-
52-
echo "running tests for Python ${version} as user '$(whoami)'"
53-
nosetests -xv plotly/tests --with-coverage --cover-package=plotly ||
54-
error_exit "${LINENO}: test suite failed for Python ${version}"
55-
mkdir "${CIRCLE_ARTIFACTS}/${PYENV_VERSION}" || true
56-
coverage html -d "${CIRCLE_ARTIFACTS}/${PYENV_VERSION}" \
57-
--title=${PYENV_VERSION}
35+
echo "${SIG} Install plotly (ignoring possibly cached versions)."
36+
pip install -I ${PLOTLY_PACKAGE_ROOT} >/dev/null ||
37+
error_exit "${SIG} ${LINENO}: can't install plotly package from project root"
38+
39+
echo "${SIG} Import plotly to create .plotly dir if DNE."
40+
python -c 'import plotly' >/dev/null ||
41+
error_exit "${SIG} ${LINENO}: can't import plotly package"
42+
43+
echo "${SIG} Running tests for Python ${version} as user '$(whoami)'."
44+
nosetests -x plotly/tests ||
45+
error_exit "${SIG} ${LINENO}: test suite failed for Python ${version}"
5846

5947
done

0 commit comments

Comments
0 (0)
Morty Proxy This is a proxified and sanitized view of the page, visit original site.