3030 - os : ubuntu-latest # Ubuntu
3131 android-api : 30
3232 arch : x86_64
33+ config_file : experiments/android_x86_64_ci.yaml
3334# - os: macOS-latest # macOS on Apple Silicon (M1/M2)
3435# android-api: 30
3536# arch: arm64
37+ # config_file: experiments/android_example.yaml
3638 runs-on : ${{ matrix.os }}
3739
3840 steps :
@@ -111,12 +113,13 @@ jobs:
111113 rm -rf $HOME/ovmb_cache/models 2>/dev/null || true
112114 fi
113115
114- # Use x86_64 config for CI
115- CONFIG_FILE="experiments/android_x86_64_ci.yaml"
116- echo "📱 Using x86_64 configuration for CI: $CONFIG_FILE"
116+ # Use config file from matrix
117+ echo "📱 Using configuration: ${{ matrix.config_file }}"
118+ echo " Architecture: ${{ matrix.arch }}"
119+ echo " OS: ${{ matrix.os }}"
117120
118121 python -m ovmobilebench.cli setup-android \
119- -c $CONFIG_FILE \
122+ -c ${{ matrix.config_file }} \
120123 --api ${{ matrix.android-api }} \
121124 --create-avd \
122125 --verbose
@@ -128,8 +131,8 @@ jobs:
128131 # === PREPARE EMULATOR ===
129132 - name : Start Android Emulator
130133 run : |
131- python tests/e2e/test_emulator_helper.py -c experiments/android_x86_64_ci.yaml start-emulator &
132- python tests/e2e/test_emulator_helper.py -c experiments/android_x86_64_ci.yaml wait-for-boot
134+ python tests/e2e/test_emulator_helper.py -c ${{ matrix.config_file }} start-emulator &
135+ python tests/e2e/test_emulator_helper.py -c ${{ matrix.config_file }} wait-for-boot
133136
134137 - name : Setup ccache
135138 uses : hendrikmuhs/ccache-action@v1.2
@@ -142,7 +145,7 @@ jobs:
142145
143146 # === PREPARE MODEL ===
144147 - name : Download ResNet-50 model
145- run : python tests/e2e/test_model_helper.py -c experiments/android_x86_64_ci.yaml download-resnet50
148+ run : python tests/e2e/test_model_helper.py -c ${{ matrix.config_file }} download-resnet50
146149
147150 # === OVMOBILEBENCH PIPELINE ===
148151 - name : List available devices
@@ -151,7 +154,7 @@ jobs:
151154 - name : Build OpenVINO for Android
152155 run : |
153156 python -m ovmobilebench.cli build \
154- -c experiments/android_x86_64_ci.yaml \
157+ -c ${{ matrix.config_file }} \
155158 --verbose
156159
157160 - name : Show ccache statistics
@@ -162,33 +165,33 @@ jobs:
162165 - name : Package OpenVINO runtime and model
163166 run : |
164167 python -m ovmobilebench.cli package \
165- -c experiments/android_x86_64_ci.yaml \
168+ -c ${{ matrix.config_file }} \
166169 --verbose
167170
168171 - name : Deploy to Android device
169172 run : |
170173 python -m ovmobilebench.cli deploy \
171- -c experiments/android_x86_64_ci.yaml \
174+ -c ${{ matrix.config_file }} \
172175 --verbose
173176
174177 - name : Run benchmark on device
175178 run : |
176179 python -m ovmobilebench.cli run \
177- -c experiments/android_x86_64_ci.yaml \
180+ -c ${{ matrix.config_file }} \
178181 --verbose
179182
180183 - name : Generate benchmark report
181184 run : |
182185 python -m ovmobilebench.cli report \
183- -c experiments/android_x86_64_ci.yaml \
186+ -c ${{ matrix.config_file }} \
184187 --verbose
185188
186189 # === ALTERNATIVE: Run all stages at once ===
187190 - name : Run complete pipeline (alternative)
188191 if : false # Set to true to use this instead of individual stages
189192 run : |
190193 python -m ovmobilebench.cli all \
191- -c experiments/android_x86_64_ci.yaml \
194+ -c ${{ matrix.config_file }} \
192195 --verbose
193196
194197 # === VALIDATION ===
@@ -201,7 +204,7 @@ jobs:
201204 # === CLEANUP ===
202205 - name : Stop emulator
203206 if : always()
204- run : python tests/e2e/test_emulator_helper.py -c experiments/android_x86_64_ci.yaml stop-emulator
207+ run : python tests/e2e/test_emulator_helper.py -c ${{ matrix.config_file }} stop-emulator
205208
206209 - name : Upload artifacts
207210 if : always()
0 commit comments