-
-
Notifications
You must be signed in to change notification settings - Fork 1.9k
64 lines (53 loc) · 1.74 KB
/
macos.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
name: macOS CI
# Controls when the action will run. Triggers the workflow on push or pull request
## events but only for the master branch
on:
push:
branches:
- 'develop'
pull_request:
branches:
- '**'
jobs:
skip_ci:
runs-on: ubuntu-latest
outputs:
canSkip: ${{ steps.check.outputs.canSkip }}
steps:
- id: check
uses: Legorooj/skip-ci@main
tests:
needs: skip_ci
if: ${{ needs.skip_ci.outputs.canSkip != 'true' }}
runs-on: macos-latest
strategy:
matrix:
python-version: [3.6, 3.7, 3.8, 3.9]
fail-fast: false
steps:
- uses: actions/checkout@v2
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v1
with:
python-version: ${{ matrix.python-version }}
- name: Set up environment
run: |
# Update pip.
python -m pip install -U pip setuptools wheel
# Install dependencies for tests.
pip install --progress-bar=off -U -r tests/requirements-tools.txt -r tests/requirements-libraries.txt
# Install PyInstaller Hook Sample, to ensure that tests declared in
# entry-points are discovered.
pip install https://github.com/pyinstaller/hooksample/archive/v4.0rc1.zip
# Compile bootloader
cd bootloader
python waf distclean all
cd ..
# Install PyInstaller.
pip install --progress-bar=off -e .
# Make sure the help options print.
python -m pyinstaller -h
- name: Run tests
run: |
pytest -n 3 --maxfail 3 --durations 10 tests/unit tests/functional --ignore tests/functional/test_libraries.py \
--force-flaky --no-flaky-report