-
-
Notifications
You must be signed in to change notification settings - Fork 74
/
Copy path.travis.yml
158 lines (135 loc) · 3.88 KB
/
.travis.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
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
sudo: false
language: python
# quick hack to determine what tag is (improvements welcomed)
# release: ^v(\d+|\.)+[^a-z]\d+$
# dev release: ^v(\d+|\.)+[a-z]\d+$
stages:
- lint
- test
- name: pip_dev_package
if: tag =~ ^v(\d+|\.)+[a-z]\d+$
- name: pip_package
if: tag =~ ^v(\d+|\.)+[^a-z]\d+$
- name: conda_dev_package
if: tag =~ ^v(\d+|\.)+[a-z]\d+$
- name: conda_package
if: tag =~ ^v(\d+|\.)+[^a-z]\d+$
- name: website_dev
if: tag =~ ^v(\d+|\.)+[a-z]\d+$ OR tag = website_dev
- name: website_release
if: tag =~ ^v(\d+|\.)+[^a-z]\d+$ OR tag = website
jobs:
fast_finish: true
include:
- &default
stage: test
python: 3.6
env: TOX_ENV=py36
install:
- pip install tox
script:
- tox -e $TOX_ENV
- <<: *default
python: 3.7-dev
env: TOX_ENV=py37
- <<: *default
python: 3.5
env: TOX_ENV=py35
- <<: *default
python: 3.4
env: TOX_ENV=py34
- <<: *default
python: 2.7
env: TOX_ENV=py27
- <<: *default
python: pypy
env: TOX_ENV=pypy
# could consider running with_ipython,numpy over py36 and 27
- <<: *default
env: TOX_ENV=with_ipython
- <<: *default
env: TOX_ENV=with_numpy
- <<: *default
env: TOX_ENV=with_pandas
- <<: *default
env: TOX_ENV=coverage
- <<: *default
stage: lint
env: TOX_ENV=flakes
# TODO: the below packaging sections will be simplified with
# doit/pyct (and note that using after_success means no alert to
# failure uploading)
- &conda_default
env: LABELS="--label dev"
stage: conda_dev_package
install:
- wget https://repo.continuum.io/miniconda/Miniconda3-latest-Linux-x86_64.sh -O miniconda.sh;
- bash miniconda.sh -b -p $HOME/miniconda
- export PATH="$HOME/miniconda/bin:$PATH"
- conda config --set always_yes yes --set changeps1 no
- conda update conda
- conda install anaconda-client conda-build
script:
- conda build conda.recipe/
after_success:
- anaconda --token $CONDA_UPLOAD_TOKEN upload --user pyviz $LABELS $(conda build --output conda.recipe)
- <<: *conda_default
env: LABELS="--label dev --label main"
stage: conda_package
- <<: *default
stage: pip_dev_package
deploy:
provider: pypi
server: https://test.pypi.org/legacy/
distributions: "sdist bdist_wheel"
on:
tags: true
user: $TESTPYPI_USER
password: $TESTPYPI_PWD
- <<: *default
stage: pip_package
deploy:
provider: pypi
distributions: "sdist bdist_wheel"
on:
tags: true
user: $PYPI_USER
password: $PYPI_PWD
- &website
<<: *default
addons:
apt:
packages:
- graphviz
stage: website_release
before_install:
- pip install graphviz
install:
- pip install nbsite sphinx_ioam_theme "tornado<6"
- pip install -e .
script:
# TODO: nbsite commands will be simplified eventually...
- nbsite generate-rst --org pyviz --repo param --project-name param
- mkdir doc/Reference_Manual && nbsite_generate_modules.py param -d ./doc/Reference_Manual -n param -e tests
- nbsite build --examples-assets=''
deploy:
- provider: pages
skip_cleanup: true
github_token: $GITHUB_TOKEN
local_dir: ./builtdocs
fqdn: param.pyviz.org
on:
tags: true
all_branches: true
- <<: *website
stage: website_dev
env: DESC="pyviz-dev.github.io/param"
deploy:
- provider: pages
skip_cleanup: true
github_token: $GITHUB_TOKEN
local_dir: ./builtdocs
repo: pyviz-dev/param
on:
tags: true
all_branches: true