@@ -58,12 +58,11 @@ jobs:
58
58
sudo apt install gcc libxxf86vm-dev libosmesa6-dev libgles2-mesa-dev xvfb weston -y
59
59
- name : Install rust
60
60
id : toolchain
61
- uses : dtolnay/rust-toolchain@stable
61
+ uses : dtolnay/rust-toolchain@1.81.0
62
62
with :
63
63
targets : ${{ matrix.platform.target }}
64
64
- name : Build
65
65
run : |
66
- rustup target add ${{ matrix.platform.target }}
67
66
cargo build --features "${{ matrix.features }}" --target ${{ matrix.platform.target }}
68
67
- name : Test
69
68
if : ${{ matrix.platform.test && startsWith(matrix.platform.os, 'ubuntu') }}
74
73
if : ${{ matrix.platform.test && !startsWith(matrix.platform.os, 'ubuntu') }}
75
74
run : |
76
75
cargo test --features "${{ matrix.features }}" --target ${{ matrix.platform.target }}
76
+
77
+ android-test :
78
+ name : ${{ format('x86_64-linux-android {0}', matrix.features)}}
79
+ runs-on : ubuntu-24.04
80
+ env :
81
+ RUST_BACKTRACE : 1
82
+ strategy :
83
+ fail-fast : false
84
+ matrix :
85
+ features :
86
+ [
87
+ " " ,
88
+ " chains sm-raw-window-handle-06" ,
89
+ " chains sm-raw-window-handle-05" ,
90
+ ]
91
+ steps :
92
+ - uses : actions/checkout@v4
93
+ - name : Install rust
94
+ id : toolchain
95
+ uses : dtolnay/rust-toolchain@1.81.0
96
+ with :
97
+ targets : x86_64-linux-android
98
+
99
+ - uses : taiki-e/install-action@v2
100
+ with :
101
+ tool : cargo-dinghy
102
+
103
+ - name : Enable KVM
104
+ run : |
105
+ echo 'KERNEL=="kvm", GROUP="kvm", MODE="0666", OPTIONS+="static_node=kvm"' | sudo tee /etc/udev/rules.d/99-kvm4all.rules
106
+ sudo udevadm control --reload-rules
107
+ sudo udevadm trigger --name-match=kvm
108
+
109
+ - name : Run tests in android emulator
110
+ uses : reactivecircus/android-emulator-runner@v2
111
+ env :
112
+ RANLIB : " ${ANDROID_NDK_HOME}/toolchains/llvm/prebuilt/linux-x86_64/bin/llvm-ranlib"
113
+ with :
114
+ api-level : 30
115
+ arch : x86_64
116
+ emulator-options : -no-snapshot-save -no-window -gpu swiftshader_indirect -noaudio -no-boot-anim -camera-back none
117
+ disable-animations : true
118
+ script : |
119
+ cargo dinghy all-platforms
120
+ cargo dinghy all-devices
121
+ cargo dinghy -p auto-android-x86_64-api30 test --features "${{ matrix.features }}" -- --test-threads 1
122
+
77
123
Format :
78
124
name : Run `rustfmt`
79
125
runs-on : ubuntu-24.04
0 commit comments