-
Notifications
You must be signed in to change notification settings - Fork 17
147 lines (119 loc) · 3.83 KB
/
test-src-build-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
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
name: From source(macOS)
on:
workflow_dispatch:
workflow_call:
pull_request:
paths:
- '.github/workflows/test-src-build-macos.yml'
- 'libheif/macos/**'
- 'setup.*'
- 'pyproject.toml'
- 'pi-heif/libheif/macos/**'
- 'pi-heif/setup.cfg'
- 'pillow_heif/_pillow_heif.c'
push:
branches: [master]
paths:
- '.github/workflows/test-src-build-macos.yml'
- 'libheif/macos/**'
- 'setup.*'
- 'pyproject.toml'
- 'pi-heif/libheif/macos/**'
- 'pi-heif/setup.cfg'
- 'pillow_heif/_pillow_heif.c'
concurrency:
group: src_macos-${{ github.ref }}
cancel-in-progress: true
jobs:
full_macos_13:
name: macOS:13-x86_64
runs-on: macos-13
env:
TEST_DECODE_THREADS: 0 # This test fails on GitHub on macOS. We have such enabled test on Cirrus.
PH_FULL_ACTION: 1
EXP_PH_LIBHEIF_VERSION: ""
steps:
- uses: actions/checkout@v4
- name: Install libheif from formula
run: |
brew uninstall --force --ignore-dependencies imagemagick libheif
brew install --formula ./libheif/macos/libheif.rb
- name: Installing Pillow-Heif
run: python3 -m pip -v install ".[dev]"
- name: LibHeif info
run: python3 -c "import pillow_heif; print(pillow_heif.libheif_info())"
- name: Perform tests
run: python3 -m pytest
full_macos_14:
name: macOS:14-Arm
runs-on: macos-14
env:
PH_FULL_ACTION: 1
EXP_PH_LIBHEIF_VERSION: ""
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: '3.12'
- name: Workaround for pkg-config
run: brew link --overwrite pkgconf
- name: Install libheif from formula
run: |
brew uninstall --force --ignore-dependencies imagemagick libheif
brew install --formula ./libheif/macos/libheif.rb
- name: Installing Pillow-Heif
run: python3 -m pip -v install ".[dev]"
- name: LibHeif info
run: python3 -c "import pillow_heif; print(pillow_heif.libheif_info())"
- name: Perform tests
run: python3 -m pytest
lite_macos_13:
name: macOS:13-x86_64(Pi-Heif)
runs-on: macos-13
env:
TEST_DECODE_THREADS: 0
PH_LIGHT_ACTION: 1
EXP_PH_LIBHEIF_VERSION: ""
steps:
- uses: actions/checkout@v4
- name: Transform to Pi-Heif
run: |
cp -r -v ./pi-heif/* .
python3 .github/transform_to-pi_heif.py
- name: Install libheif from formula
run: |
brew uninstall --force --ignore-dependencies imagemagick libheif x265 aom
brew install --formula ./libheif/macos/libheif.rb
- name: Installing Pi-Heif
run: python3 -m pip -v install ".[tests]"
- name: LibHeif info
run: python3 -c "import pi_heif; print(pi_heif.libheif_info())"
- name: Perform tests
run: python3 -m pytest
lite_macos_14:
name: macOS:14-Arm(Pi-Heif)
runs-on: macos-14
env:
PH_LIGHT_ACTION: 1
EXP_PH_LIBHEIF_VERSION: ""
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: '3.12'
- name: Workaround for pkg-config
run: brew link --overwrite pkgconf
- name: Transform to Pi-Heif
run: |
cp -r -v ./pi-heif/* .
python3 .github/transform_to-pi_heif.py
- name: Install libheif from formula
run: |
brew uninstall --force --ignore-dependencies imagemagick libheif x265 aom
brew install --formula ./libheif/macos/libheif.rb
- name: Installing Pi-Heif
run: python3 -m pip -v install ".[tests]"
- name: LibHeif info
run: python3 -c "import pi_heif; print(pi_heif.libheif_info())"
- name: Perform tests
run: python3 -m pytest