1- ci-steps : &ci-steps
2- working_directory : /work
3- steps :
4- - checkout
5- - run :
6- name :
7- command : |
8- export MANYLINUX_PYTHON=$(echo ${CIRCLE_JOB} | cut -d"_" -f2)
9- echo "MANYLINUX_PYTHON [${MANYLINUX_PYTHON}]"
10- /opt/python/${MANYLINUX_PYTHON}/bin/pip install scikit-ci
11- /opt/python/${MANYLINUX_PYTHON}/bin/ci
12-
131version : 2
14- jobs :
15- #
16- # x64
17- #
18- manylinux-x64_cp27-cp27m :
19- docker :
20- - image : dockcross/manylinux-x64
21- << : *ci-steps
222
23- manylinux-x64_cp27-cp27mu :
24- docker :
25- - image : dockcross/manylinux-x64
26- << : *ci-steps
3+ references :
274
28- manylinux-x64_cp34-cp34m :
5+ ci_steps : &ci_steps
6+ working_directory : /work
7+ steps :
8+ - checkout
9+ - run :
10+ name : Run CI
11+ command : |
12+ #
13+ # Set UPLOAD_SDIST environment variable
14+ #
15+ export UPLOAD_SDIST=$(echo ${CIRCLE_JOB} | cut -d"_" -f3)
16+ echo "UPLOAD_SDIST [${UPLOAD_SDIST}]"
17+ #
18+ # Run CI
19+ #
20+ export MANYLINUX_PYTHON=$(echo ${CIRCLE_JOB} | cut -d"_" -f2)
21+ echo "MANYLINUX_PYTHON [${MANYLINUX_PYTHON}]"
22+ /opt/python/${MANYLINUX_PYTHON}/bin/pip install scikit-ci
23+ /opt/python/${MANYLINUX_PYTHON}/bin/ci
24+ - persist_to_workspace :
25+ root : ./
26+ paths :
27+ - dist
28+
29+ x64_build_job : &x64_build_job
2930 docker :
3031 - image : dockcross/manylinux-x64
31- << : *ci-steps
32+ << : *ci_steps
3233
33- manylinux-x64_cp35-cp35m :
34+ x86_build_job : &x86_build_job
3435 docker :
35- - image : dockcross/manylinux-x64
36- << : *ci-steps
36+ - image : dockcross/manylinux-x86
37+ << : *ci_steps
38+
39+ no_filters : &no_filters
40+ filters :
41+ tags :
42+ only : /.*/
43+
44+ jobs :
3745
46+ # x64
47+ manylinux-x64_cp27-cp27m :
48+ << : *x64_build_job
49+ manylinux-x64_cp27-cp27mu :
50+ << : *x64_build_job
51+ manylinux-x64_cp34-cp34m :
52+ << : *x64_build_job
53+ manylinux-x64_cp35-cp35m :
54+ << : *x64_build_job
3855 manylinux-x64_cp36-cp36m :
39- docker :
40- - image : dockcross/ manylinux-x64
41- << : *ci-steps
56+ << : *x64_build_job
57+ manylinux-x64_cp37-cp37m_upload-sdist :
58+ << : *x64_build_job
4259
43- manylinux-x64_cp37-cp37m :
44- docker :
45- - image : dockcross/manylinux-x64
46- << : *ci-steps
47- #
4860 # x86
49- #
5061 manylinux-x86_cp27-cp27m :
51- docker :
52- - image : dockcross/manylinux-x86
53- << : *ci-steps
54-
62+ << : *x86_build_job
5563 manylinux-x86_cp27-cp27mu :
56- docker :
57- - image : dockcross/manylinux-x86
58- << : *ci-steps
59-
64+ << : *x86_build_job
6065 manylinux-x86_cp34-cp34m :
61- docker :
62- - image : dockcross/manylinux-x86
63- << : *ci-steps
64-
66+ << : *x86_build_job
6567 manylinux-x86_cp35-cp35m :
66- docker :
67- - image : dockcross/manylinux-x86
68- << : *ci-steps
69-
68+ << : *x86_build_job
7069 manylinux-x86_cp36-cp36m :
70+ << : *x86_build_job
71+ manylinux-x86_cp37-cp37m :
72+ << : *x86_build_job
73+
74+ deploy-master :
7175 docker :
72- - image : dockcross/manylinux-x86
73- << : *ci-steps
76+ - image : circleci/python:3.7.0-stretch
77+ steps :
78+ - attach_workspace :
79+ at : ./
80+ - run :
81+ name : Deploy master
82+ command : |
83+ echo "Deploy master (not implemented)"
7484
75- manylinux-x86_cp37-cp37m :
85+ deploy-release :
7686 docker :
77- - image : dockcross/manylinux-x86
78- << : *ci-steps
87+ - image : circleci/python:3.7.0-stretch
88+ steps :
89+ - attach_workspace :
90+ at : ./
91+ - run :
92+ name : Deploy release
93+ command : |
94+ echo "Deploy release"
95+ python -m venv ../venv
96+ . ../venv/bin/activate
97+ pip install twine
98+ ls dist
99+ twine upload -u $PYPI_USER -p $PYPI_PASSWORD --skip-existing dist/*
79100
80101workflows :
81102 version : 2
82103 build-test-deploy :
83104 jobs :
84- - manylinux-x64_cp27-cp27m
85- - manylinux-x64_cp27-cp27mu
86- - manylinux-x64_cp34-cp34m
87- - manylinux-x64_cp35-cp35m
88- - manylinux-x64_cp36-cp36m
89- - manylinux-x64_cp37-cp37m
105+ # x64
106+ - manylinux-x64_cp27-cp27m :
107+ << : *no_filters
108+ - manylinux-x64_cp27-cp27mu :
109+ << : *no_filters
110+ - manylinux-x64_cp34-cp34m :
111+ << : *no_filters
112+ - manylinux-x64_cp35-cp35m :
113+ << : *no_filters
114+ - manylinux-x64_cp36-cp36m :
115+ << : *no_filters
116+ - manylinux-x64_cp37-cp37m_upload-sdist :
117+ << : *no_filters
118+ # x86
119+ - manylinux-x86_cp27-cp27m :
120+ << : *no_filters
121+ - manylinux-x86_cp27-cp27mu :
122+ << : *no_filters
123+ - manylinux-x86_cp34-cp34m :
124+ << : *no_filters
125+ - manylinux-x86_cp35-cp35m :
126+ << : *no_filters
127+ - manylinux-x86_cp36-cp36m :
128+ << : *no_filters
129+ - manylinux-x86_cp37-cp37m :
130+ << : *no_filters
131+
132+ - deploy-master :
133+ requires :
134+ # x64
135+ - manylinux-x64_cp27-cp27m
136+ - manylinux-x64_cp27-cp27mu
137+ - manylinux-x64_cp34-cp34m
138+ - manylinux-x64_cp35-cp35m
139+ - manylinux-x64_cp36-cp36m
140+ - manylinux-x64_cp37-cp37m_upload-sdist
141+ # x86
142+ - manylinux-x86_cp27-cp27m
143+ - manylinux-x86_cp27-cp27mu
144+ - manylinux-x86_cp34-cp34m
145+ - manylinux-x86_cp35-cp35m
146+ - manylinux-x86_cp36-cp36m
147+ - manylinux-x86_cp37-cp37m
148+ filters :
149+ branches :
150+ only : master
151+ - deploy-release :
152+ requires :
153+ # x64
154+ - manylinux-x64_cp27-cp27m
155+ - manylinux-x64_cp27-cp27mu
156+ - manylinux-x64_cp34-cp34m
157+ - manylinux-x64_cp35-cp35m
158+ - manylinux-x64_cp36-cp36m
159+ - manylinux-x64_cp37-cp37m_upload-sdist
160+ # x86
161+ - manylinux-x86_cp27-cp27m
162+ - manylinux-x86_cp27-cp27mu
163+ - manylinux-x86_cp34-cp34m
164+ - manylinux-x86_cp35-cp35m
165+ - manylinux-x86_cp36-cp36m
166+ - manylinux-x86_cp37-cp37m
167+ filters :
168+ tags :
169+ only : /^[0-9]+(\.[0-9]+)*(\.post[0-9]+)?$/
170+ branches :
171+ ignore : /.*/
90172
91- - manylinux-x86_cp27-cp27m
92- - manylinux-x86_cp27-cp27mu
93- - manylinux-x86_cp34-cp34m
94- - manylinux-x86_cp35-cp35m
95- - manylinux-x86_cp36-cp36m
96- - manylinux-x86_cp37-cp37m
0 commit comments