Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
33 changes: 2 additions & 31 deletions .github/workflows/build-linux.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ jobs:
- image: docker.io/library/dart
platform: linux/arm/v7
target: linux-arm
- image: docker.io/library/debian:trixie-slim
- image: docker.io/library/dart
platform: linux/riscv64
target: linux-riscv64
- image: ghcr.io/dart-musl/dart
Expand Down Expand Up @@ -65,7 +65,7 @@ jobs:
run: docker run --privileged --rm registry.fedoraproject.org/fedora-minimal /bin/sh -c "microdnf install --assumeyes --nodocs --setopt=install_weak_deps=False qemu-user-static systemd-udev && mount binfmt_misc -t binfmt_misc /proc/sys/fs/binfmt_misc && /usr/lib/systemd/systemd-binfmt --unregister && /usr/lib/systemd/systemd-binfmt"

- name: Build
if: matrix.image != 'ghcr.io/dart-android/dart' && matrix.image != 'docker.io/library/debian:trixie-slim'
if: matrix.image != 'ghcr.io/dart-android/dart'
run: |
docker run --rm -i \
--platform ${{ matrix.platform }} \
Expand Down Expand Up @@ -93,35 +93,6 @@ jobs:
dart run grinder pkg-standalone-${{ matrix.target }}
EOF

# https://github.com/dart-lang/dart-docker/issues/96#issuecomment-1669860829
# There is no official riscv64 dart container image yet, build on debian:trixie instead.
# The setup is adopted from: https://github.com/dart-lang/dart-docker/blob/main/Dockerfile-debian.template
- name: Build
if: matrix.image == 'docker.io/library/debian:trixie-slim'
run: |
DART_CHANNEL=stable
DART_VERSION=$(curl -fsSL https://storage.googleapis.com/dart-archive/channels/$DART_CHANNEL/release/latest/VERSION | yq .version)
curl -fsSLO "https://storage.googleapis.com/dart-archive/channels/$DART_CHANNEL/release/$DART_VERSION/sdk/dartsdk-${{ matrix.target }}-release.zip"

docker run --rm -i \
--platform ${{ matrix.platform }} \
--volume "$PWD:$PWD" \
--workdir "$PWD" \
${{ matrix.image }} <<'EOF'
set -e
apt-get update
apt-get install -y --no-install-recommends bind9-dnsutils ca-certificates curl git openssh-client unzip

export DART_SDK=/usr/lib/dart
export PATH=$DART_SDK/bin:/root/.pub-cache/bin:$PATH

SDK="dartsdk-${{ matrix.target }}-release.zip"
unzip "$SDK" && mv dart-sdk "$DART_SDK" && rm "$SDK"

dart pub get
dart run grinder pkg-standalone-${{ matrix.target }}
EOF

- name: Generate artifact attestation
if: github.ref_type == 'tag'
uses: actions/attest-build-provenance@v2
Expand Down
Loading