Skip to content

Commit eeaded1

Browse files
committed
perf(ci): NDK install uses rust, restore rust cache prior
1 parent cdc645f commit eeaded1

File tree

2 files changed

+48
-48
lines changed

2 files changed

+48
-48
lines changed

.github/workflows/build-quick.yml

Lines changed: 31 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -140,37 +140,6 @@ jobs:
140140
- name: Fetch submodules
141141
run: git submodule update --init
142142

143-
- name: Read configured NDK version
144-
run: |
145-
cargo install toml-cli
146-
ANDROID_NDK_VERSION=$(toml get gradle/libs.versions.toml versions.ndk --raw)
147-
echo "ANDROID_NDK_VERSION=$ANDROID_NDK_VERSION" >> $GITHUB_ENV
148-
shell: bash
149-
150-
- name: Install/Set NDK version (Unix)
151-
if: contains(matrix.os, 'ubuntu') || contains(matrix.os, 'macos')
152-
run: |
153-
export PATH="$PATH:$ANDROID_HOME/cmdline-tools/latest/bin"
154-
./.github/scripts/install_ndk.sh ${ANDROID_NDK_VERSION}
155-
export ANDROID_NDK_LATEST_HOME="${ANDROID_SDK_ROOT}/ndk/${ANDROID_NDK_VERSION}"
156-
echo "ANDROID_NDK_HOME=$ANDROID_NDK_LATEST_HOME" >> $GITHUB_ENV
157-
echo "ANDROID_NDK_ROOT=$ANDROID_NDK_LATEST_HOME" >> $GITHUB_ENV
158-
159-
- name: Install/Set NDK version (Windows)
160-
if: contains(matrix.os, 'windows')
161-
run: |
162-
$env:PATH = "$env:PATH;$env:ANDROID_HOME\cmdline-tools\latest\bin"
163-
./.github/scripts/install_ndk.bat $env:ANDROID_NDK_VERSION
164-
$env:ANDROID_NDK_LATEST_HOME = "$env:ANDROID_SDK_ROOT\ndk\$env:ANDROID_NDK_VERSION"
165-
Add-Content -Path $env:GITHUB_ENV -Value ANDROID_NDK_HOME=$env:ANDROID_NDK_LATEST_HOME
166-
Add-Content -Path $env:GITHUB_ENV -Value ANDROID_NDK_ROOT=$env:ANDROID_NDK_LATEST_HOME
167-
168-
- name: Configure JDK
169-
uses: actions/setup-java@v5
170-
with:
171-
distribution: "temurin"
172-
java-version: "21" # matches Anki-Android
173-
174143
- name: Restore Rust Cache (Windows)
175144
id: rust-cache-windows
176145
uses: actions/cache/restore@v4
@@ -207,6 +176,37 @@ jobs:
207176
${{ runner.os }}-rust-debug
208177
${{ runner.os }}-rust
209178
179+
- name: Read configured NDK version
180+
run: |
181+
cargo install toml-cli
182+
ANDROID_NDK_VERSION=$(toml get gradle/libs.versions.toml versions.ndk --raw)
183+
echo "ANDROID_NDK_VERSION=$ANDROID_NDK_VERSION" >> $GITHUB_ENV
184+
shell: bash
185+
186+
- name: Install/Set NDK version (Unix)
187+
if: contains(matrix.os, 'ubuntu') || contains(matrix.os, 'macos')
188+
run: |
189+
export PATH="$PATH:$ANDROID_HOME/cmdline-tools/latest/bin"
190+
./.github/scripts/install_ndk.sh ${ANDROID_NDK_VERSION}
191+
export ANDROID_NDK_LATEST_HOME="${ANDROID_SDK_ROOT}/ndk/${ANDROID_NDK_VERSION}"
192+
echo "ANDROID_NDK_HOME=$ANDROID_NDK_LATEST_HOME" >> $GITHUB_ENV
193+
echo "ANDROID_NDK_ROOT=$ANDROID_NDK_LATEST_HOME" >> $GITHUB_ENV
194+
195+
- name: Install/Set NDK version (Windows)
196+
if: contains(matrix.os, 'windows')
197+
run: |
198+
$env:PATH = "$env:PATH;$env:ANDROID_HOME\cmdline-tools\latest\bin"
199+
./.github/scripts/install_ndk.bat $env:ANDROID_NDK_VERSION
200+
$env:ANDROID_NDK_LATEST_HOME = "$env:ANDROID_SDK_ROOT\ndk\$env:ANDROID_NDK_VERSION"
201+
Add-Content -Path $env:GITHUB_ENV -Value ANDROID_NDK_HOME=$env:ANDROID_NDK_LATEST_HOME
202+
Add-Content -Path $env:GITHUB_ENV -Value ANDROID_NDK_ROOT=$env:ANDROID_NDK_LATEST_HOME
203+
204+
- name: Configure JDK
205+
uses: actions/setup-java@v5
206+
with:
207+
distribution: "temurin"
208+
java-version: "21" # matches Anki-Android
209+
210210
- name: Setup N2
211211
run: bash ./anki/tools/install-n2
212212

.github/workflows/build-release.yml

Lines changed: 17 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -63,6 +63,23 @@ jobs:
6363
run: |
6464
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y --default-toolchain none
6565
66+
- name: Restore Rust Cache
67+
id: rust-cache
68+
uses: actions/cache/restore@v4
69+
with:
70+
path: |
71+
~/.cargo/registry
72+
~/.cargo/git
73+
target
74+
anki/out/rust
75+
anki/out/download
76+
anki/out/extracted
77+
anki/out/node_modules
78+
key: ${{ runner.os }}-rust-release-${{ hashFiles('Cargo.lock', 'anki/Cargo.lock', 'anki/yarn.lock') }}
79+
restore-keys: |
80+
${{ runner.os }}-rust-release
81+
${{ runner.os }}-rust
82+
6683
- name: Read configured NDK version
6784
run: |
6885
cargo install toml-cli
@@ -95,23 +112,6 @@ jobs:
95112
brew install MaterializeInc/crosstools/x86_64-unknown-linux-gnu
96113
x86_64-unknown-linux-gnu-gcc -v
97114
98-
- name: Restore Rust Cache
99-
id: rust-cache
100-
uses: actions/cache/restore@v4
101-
with:
102-
path: |
103-
~/.cargo/registry
104-
~/.cargo/git
105-
target
106-
anki/out/rust
107-
anki/out/download
108-
anki/out/extracted
109-
anki/out/node_modules
110-
key: ${{ runner.os }}-rust-release-${{ hashFiles('Cargo.lock', 'anki/Cargo.lock', 'anki/yarn.lock') }}
111-
restore-keys: |
112-
${{ runner.os }}-rust-release
113-
${{ runner.os }}-rust
114-
115115
- name: Setup N2
116116
run: ./anki/tools/install-n2
117117

0 commit comments

Comments
 (0)