source: .circleci/config.yml @ 4c72a9c

feature/autosinkfeature/cnnfeature/cnn_orgfeature/constantqfeature/crepefeature/crepe_orgfeature/pitchshiftfeature/timestretchfix/ffmpeg5
Last change on this file since 4c72a9c was 548f60d, checked in by Paul Brossier <piem@piem.org>, 6 years ago

[ci] switch circleci to pytest

  • Property mode set to 100644
File size: 2.3 KB
Line 
1apt-run: &apt-install
2  name: Install apt packages
3  command: |
4    sudo apt-get update
5    sudo apt-get -y install make sox pkg-config libavcodec-dev libavformat-dev libavresample-dev libavutil-dev libsndfile1-dev libsamplerate-dev
6
7pip-install: &pip-install
8  name: Install pip dependencies
9  command: |
10    pip install --user -r requirements.txt
11
12build-wheel: &build-wheel
13  name: Build python wheel
14  command: |
15    pip wheel -v -v -v --wheel-dir=dist .
16
17install-wheel: &install-wheel
18  name: Install python wheel
19  command: |
20    pip install --user dist/aubio*.whl
21
22test-pytest: &test-pytest
23  name: Test python wheel
24  command: |
25    make create_test_sounds
26    PATH=/home/circleci/.local/bin:$PATH pytest -v
27
28test-pytest-nosounds: &test-pytest-nosounds
29  name: Test python wheel
30  command: |
31    PATH=/home/circleci/.local/bin:$PATH pytest -v
32
33uninstall-wheel: &uninstall-wheel
34  name: Uninstall python wheel
35  command: |
36    pip show -f aubio
37    pip uninstall --verbose --yes aubio
38
39version: 2
40jobs:
41  build-27:
42    docker:
43      - image: circleci/python:2.7
44    steps:
45      - checkout
46      - run: *apt-install
47      - run: *pip-install
48      - run: *build-wheel
49      - run: *install-wheel
50      - run: *test-pytest
51      - run: *uninstall-wheel
52      - store_artifacts:
53          path: dist/
54
55  build-36:
56    docker:
57      - image: circleci/python:3.6
58    steps:
59      - checkout
60      - run: *apt-install
61      - run: *pip-install
62      - run: *build-wheel
63      - run: *install-wheel
64      - run: *test-pytest
65      - run: *uninstall-wheel
66      - store_artifacts:
67          path: dist/
68
69  build-37:
70    docker:
71      - image: circleci/python:3.7
72    steps:
73      - checkout
74      - run: *apt-install
75      - run: *pip-install
76      - run: *build-wheel
77      - run: *install-wheel
78      - run: *test-pytest
79      - run: *uninstall-wheel
80      - store_artifacts:
81          path: dist/
82
83  build-37-nodeps:
84    docker:
85      - image: circleci/python:3.7
86    steps:
87      - checkout
88      - run: *pip-install
89      - run: *build-wheel
90      - run: *install-wheel
91      - run: *test-pytest-nosounds
92      - run: *uninstall-wheel
93      - store_artifacts:
94          path: dist/
95
96workflows:
97  version: 2
98
99  test-wheel:
100    jobs:
101      - build-27
102      - build-36
103      - build-37
104      - build-37-nodeps
Note: See TracBrowser for help on using the repository browser.