forked from plotly/plotly.py
-
Notifications
You must be signed in to change notification settings - Fork 0
/
circle.yml
46 lines (31 loc) · 1.43 KB
/
circle.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
machine:
environment:
PLOTLY_PACKAGE_ROOT: /home/ubuntu/${CIRCLE_PROJECT_REPONAME}
PLOTLY_CONFIG_DIR: ${HOME}/.plotly
PLOTLY_PYTHON_VERSIONS: 2.7.8 3.3.3 3.4.1
PLOTLY_CORE_REQUIREMENTS_FILE: ${PLOTLY_PACKAGE_ROOT}/requirements.txt
PLOTLY_OPTIONAL_REQUIREMENTS_FILE: ${PLOTLY_PACKAGE_ROOT}/optional-requirements.txt
dependencies:
override:
# run all the pre-written installers (this will take a *while*)
- bash circle/setup.sh
# install testing tools for circle's version of things
- pip install nose coverage
- pip install -I .
# we need to cd out of the project root to ensure the install worked
- cd ~ && python -c "import plotly"
cache_directories:
- "~/.pyenv/versions" # attempt to just cache installed pyenv things
test:
override:
# run test suite in all our python versions
- bash circle/test.sh
# test that it imports when you don't have write permissions
- sudo chmod -R 444 ${PLOTLY_CONFIG_DIR} && python -c "import plotly"
# test that giving back write permissions works again
# this also has to pass the test suite that follows
- sudo chmod -R 777 ${PLOTLY_CONFIG_DIR} && python -c "import plotly"
# test core things in the general 2.7 version that circle has
- nosetests -x plotly/tests/test_core --with-coverage --cover-package=plotly
- mkdir "${CIRCLE_ARTIFACTS}/2.7" || true
- coverage html -d "${CIRCLE_ARTIFACTS}/2.7" --title=2.7