source:
.circleci/config.yml
@
b8e23f8
Last change on this file since b8e23f8 was edf82d8, checked in by , 12 months ago | |
---|---|
|
|
File size: 2.7 KB |
Rev | Line | |
---|---|---|
[e8aed04c] | 1 | # python circleci 2.1 configuration |
2 | # see https://circleci.com/docs/2.1/language-python/ | |
3 | version: 2.1 | |
4 | ||
[73f02cc] | 5 | apt-run: &apt-install |
6 | name: Install apt packages | |
7 | command: | | |
[f70e181] | 8 | sudo apt-get update |
[7545b56] | 9 | sudo apt-get -y install make sox pkg-config libavcodec-dev libavformat-dev libswresample-dev libavutil-dev libsndfile1-dev libsamplerate-dev librubberband-dev libvorbis-dev libflac-dev |
[73f02cc] | 10 | |
[91ac33f] | 11 | pip-install: &pip-install |
12 | name: Install pip dependencies | |
13 | command: | | |
[58cc68e] | 14 | pip install --user -r requirements.txt |
[91ac33f] | 15 | |
[73f02cc] | 16 | build-wheel: &build-wheel |
17 | name: Build python wheel | |
18 | command: | | |
19 | pip wheel -v -v -v --wheel-dir=dist . | |
20 | ||
21 | install-wheel: &install-wheel | |
[a363759] | 22 | name: Install python wheel |
[73f02cc] | 23 | command: | |
[58cc68e] | 24 | pip install --user dist/aubio*.whl |
[73f02cc] | 25 | |
[548f60d] | 26 | test-pytest: &test-pytest |
[73f02cc] | 27 | name: Test python wheel |
28 | command: | | |
29 | make create_test_sounds | |
[548f60d] | 30 | PATH=/home/circleci/.local/bin:$PATH pytest -v |
[73f02cc] | 31 | |
[548f60d] | 32 | test-pytest-nosounds: &test-pytest-nosounds |
[ab8bffa] | 33 | name: Test python wheel |
34 | command: | | |
[548f60d] | 35 | PATH=/home/circleci/.local/bin:$PATH pytest -v |
[ab8bffa] | 36 | |
37 | uninstall-wheel: &uninstall-wheel | |
38 | name: Uninstall python wheel | |
39 | command: | | |
40 | pip show -f aubio | |
41 | pip uninstall --verbose --yes aubio | |
42 | ||
[73f02cc] | 43 | jobs: |
[c9701ff] | 44 | build-36: |
45 | docker: | |
[68d4565] | 46 | - image: cimg/python:3.6 |
[73f02cc] | 47 | steps: |
48 | - checkout | |
49 | - run: *apt-install | |
[91ac33f] | 50 | - run: *pip-install |
[73f02cc] | 51 | - run: *build-wheel |
52 | - run: *install-wheel | |
[548f60d] | 53 | - run: *test-pytest |
[ab8bffa] | 54 | - run: *uninstall-wheel |
[73f02cc] | 55 | - store_artifacts: |
56 | path: dist/ | |
57 | ||
[ea7f48e] | 58 | build-310: |
[500f4c2] | 59 | docker: |
[ea7f48e] | 60 | - image: cimg/python:3.10 |
[500f4c2] | 61 | steps: |
62 | - checkout | |
63 | - run: *apt-install | |
64 | - run: *pip-install | |
65 | - run: *build-wheel | |
66 | - run: *install-wheel | |
[548f60d] | 67 | - run: *test-pytest |
[ab8bffa] | 68 | - run: *uninstall-wheel |
[500f4c2] | 69 | - store_artifacts: |
70 | path: dist/ | |
71 | ||
[ea7f48e] | 72 | build-310-nodeps: |
[f1baffd] | 73 | docker: |
[ea7f48e] | 74 | - image: cimg/python:3.10 |
[f1baffd] | 75 | steps: |
76 | - checkout | |
77 | - run: *pip-install | |
78 | - run: *build-wheel | |
79 | - run: *install-wheel | |
[548f60d] | 80 | - run: *test-pytest-nosounds |
[ab8bffa] | 81 | - run: *uninstall-wheel |
[f1baffd] | 82 | - store_artifacts: |
83 | path: dist/ | |
84 | ||
[edf82d8] | 85 | build-312: |
86 | docker: | |
87 | - image: cimg/python:3.12 | |
88 | steps: | |
89 | - checkout | |
90 | - run: *apt-install | |
91 | - run: *pip-install | |
92 | - run: *build-wheel | |
93 | - run: *install-wheel | |
94 | - run: *test-pytest | |
95 | - run: *uninstall-wheel | |
96 | - store_artifacts: | |
97 | path: dist/ | |
98 | ||
99 | build-312-nodeps: | |
100 | docker: | |
101 | - image: cimg/python:3.12 | |
102 | steps: | |
103 | - checkout | |
104 | - run: *pip-install | |
105 | - run: *build-wheel | |
106 | - run: *install-wheel | |
107 | - run: *test-pytest-nosounds | |
108 | - run: *uninstall-wheel | |
109 | - store_artifacts: | |
110 | path: dist/ | |
111 | ||
[73f02cc] | 112 | workflows: |
113 | version: 2 | |
114 | ||
115 | test-wheel: | |
116 | jobs: | |
[c9701ff] | 117 | - build-36 |
[ea7f48e] | 118 | - build-310 |
119 | - build-310-nodeps | |
[edf82d8] | 120 | - build-312 |
121 | - build-312-nodeps |
Note: See TracBrowser
for help on using the repository browser.