Skip to content
Merged
45 changes: 37 additions & 8 deletions .github/workflows/build.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -19,11 +19,14 @@ jobs:

build-linux:
runs-on: ubuntu-24.04
permissions:
contents: read
packages: read
container:
image: stackwallet/stackwallet-ci:latest
image: ghcr.io/${{ github.repository_owner }}/stackwallet-ci:latest
credentials:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
username: ${{ github.actor }}
password: ${{ github.token }}
steps:
- uses: actions/checkout@v6
with:
Expand Down Expand Up @@ -76,7 +79,7 @@ jobs:
- name: Build
env:
USE_SYSTEM_SECURE_STORAGE_DEPS: "1"
run: flutter build linux --release
run: flutter build linux --release --verbose

- name: Package
run: |
Expand All @@ -90,11 +93,14 @@ jobs:

build-android:
runs-on: ubuntu-24.04
permissions:
contents: read
packages: read
container:
image: stackwallet/stackwallet-ci:latest
image: ghcr.io/${{ github.repository_owner }}/stackwallet-ci:latest
credentials:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
username: ${{ github.actor }}
password: ${{ github.token }}
steps:
- uses: actions/checkout@v6
with:
Expand Down Expand Up @@ -186,7 +192,7 @@ jobs:
path: android-artifacts/

build-windows:
runs-on: windows-latest
runs-on: windows-2022
defaults:
run:
shell: bash
Expand Down Expand Up @@ -215,6 +221,13 @@ jobs:
flutter-version: '3.38.1'
channel: 'stable'

- uses: actions/setup-go@v5
with:
go-version: '1.24.13'

- name: Flutter doctor
run: flutter doctor -v

- name: Configure app
run: |
cd scripts
Expand Down Expand Up @@ -244,6 +257,9 @@ jobs:
CHANGE_NOW: ${{ secrets.CHANGE_NOW }}
run: echo "$CHANGE_NOW" | base64 --decode > lib/external_api_keys.dart

- name: Build secp256k1.dll for Windows
run: dart run coinlib:build_windows

- name: Build
run: flutter build windows --release

Expand Down Expand Up @@ -285,6 +301,10 @@ jobs:
flutter-version: '3.38.1'
channel: 'stable'

- uses: actions/setup-go@v5
with:
go-version: '1.24.13'

- name: Configure app
run: |
cd scripts
Expand Down Expand Up @@ -355,11 +375,20 @@ jobs:
toolchain: '1.71.0'
targets: aarch64-apple-ios

- uses: dtolnay/rust-toolchain@master
with:
toolchain: stable
targets: aarch64-apple-ios

- uses: subosito/flutter-action@v2
with:
flutter-version: '3.38.1'
channel: 'stable'

- uses: actions/setup-go@v5
with:
go-version: '1.24.13'

- name: Configure app
run: |
cd scripts
Expand Down
11 changes: 9 additions & 2 deletions Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ ENV RUSTUP_HOME=/usr/local/rustup \

RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs \
| sh -s -- -y --default-toolchain 1.89.0 --profile minimal --no-modify-path \
&& rustup install 1.85.1 1.71.0 --profile minimal \
&& rustup install 1.85.1 1.71.0 stable --profile minimal \
&& rustup target add x86_64-unknown-linux-gnu --toolchain 1.89.0 \
&& cargo install cargo-ndk \
&& chmod -R a+rwX "$CARGO_HOME" "$RUSTUP_HOME"
Expand Down Expand Up @@ -67,6 +67,13 @@ RUN mkdir -p "$ANDROID_SDK_ROOT/cmdline-tools" \
"ndk;28.2.13676358" \
&& chmod -R a+rwX "$ANDROID_SDK_ROOT"

ENV PATH=/usr/local/go/bin:$PATH

RUN curl -fsSL https://go.dev/dl/go1.24.13.linux-amd64.tar.gz -o /tmp/go.tar.gz \
&& echo "1fc94b57134d51669c72173ad5d49fd62afb0f1db9bf3f798fd98ee423f8d730 /tmp/go.tar.gz" | sha256sum -c \
&& tar -C /usr/local -xzf /tmp/go.tar.gz \
&& rm /tmp/go.tar.gz

ENV FLUTTER_HOME=/opt/flutter \
PATH=/opt/flutter/bin:/opt/flutter/bin/cache/dart-sdk/bin:$PATH

Expand All @@ -78,7 +85,7 @@ RUN git clone --depth 1 --branch 3.38.1 https://github.com/flutter/flutter.git "

RUN git config --system --add safe.directory '*'

RUN flutter --version && rustc --version && cargo --version && node --version
RUN flutter --version && rustc --version && cargo --version && node --version && go version


# Minimal image for flutter test (no Rust, no Android SDK, no cross-compilers)
Expand Down
2 changes: 1 addition & 1 deletion crypto_plugins/flutter_libmwc
2 changes: 1 addition & 1 deletion crypto_plugins/frostdart
Loading