diff --git a/scripts/concourse/docs_wheels.yml b/scripts/concourse/docs_wheels.yml index 7750ab2d0..81ca87511 100644 --- a/scripts/concourse/docs_wheels.yml +++ b/scripts/concourse/docs_wheels.yml @@ -86,6 +86,7 @@ jobs: params: CONTEXT: deltachat-core-rust/scripts/docker-coredeps UNPACK_ROOTFS: "true" + BUILD_ARG_BASEIMAGE: quay.io/pypa/manylinux2014_x86_64 platform: linux caches: - path: cache @@ -185,6 +186,7 @@ jobs: params: CONTEXT: deltachat-core-rust/scripts/docker-coredeps-arm64 UNPACK_ROOTFS: "true" + BUILD_ARG_BASEIMAGE: quay.io/pypa/manylinux2014_aarch64 platform: linux caches: - path: cache diff --git a/scripts/coredeps/Dockerfile b/scripts/coredeps/Dockerfile new file mode 100644 index 000000000..a6ceed532 --- /dev/null +++ b/scripts/coredeps/Dockerfile @@ -0,0 +1,8 @@ +ARG BASEIMAGE=quay.io/pypa/manylinux2014_x86_64 +#ARG BASEIMAGE=quay.io/pypa/musllinux_1_1_x86_64 +#ARG BASEIMAGE=quay.io/pypa/manylinux2014_aarch64 + +FROM $BASEIMAGE +RUN pipx install tox +COPY install-rust.sh /scripts/ +RUN /scripts/install-rust.sh diff --git a/scripts/coredeps/install-rust.sh b/scripts/coredeps/install-rust.sh new file mode 100755 index 000000000..b2063da8c --- /dev/null +++ b/scripts/coredeps/install-rust.sh @@ -0,0 +1,20 @@ +#!/usr/bin/env bash +set -euo pipefail + +# Install Rust +# +# Path from https://forge.rust-lang.org/infra/other-installation-methods.html +# +# Avoid using rustup here as it depends on reading /proc/self/exe and +# has problems running under QEMU. +RUST_VERSION=1.61.0 + +ARCH="$(uname -m)" +test -f "/lib/libc.musl-$ARCH.so.1" && LIBC=musl || LIBC=gnu + +curl "https://static.rust-lang.org/dist/rust-${RUST_VERSION}-$ARCH-unknown-linux-$LIBC.tar.gz" | tar xz +cd "rust-${RUST_VERSION}-$ARCH-unknown-linux-$LIBC" +./install.sh --prefix=/usr --components=rustc,cargo,"rust-std-$ARCH-unknown-linux-$LIBC" +rustc --version +cd .. +rm -fr "rust-${RUST_VERSION}-$ARCH-unknown-linux-$LIBC" diff --git a/scripts/docker-coredeps-arm64/Dockerfile b/scripts/docker-coredeps-arm64/Dockerfile deleted file mode 100644 index 30b17cf83..000000000 --- a/scripts/docker-coredeps-arm64/Dockerfile +++ /dev/null @@ -1,6 +0,0 @@ -FROM quay.io/pypa/manylinux2014_aarch64 -RUN pipx install tox - -# Install Rust -ADD deps/build_rust.sh /builder/build_rust.sh -RUN mkdir tmp1 && cd tmp1 && bash /builder/build_rust.sh && cd .. && rm -r tmp1 diff --git a/scripts/docker-coredeps-arm64/deps/build_rust.sh b/scripts/docker-coredeps-arm64/deps/build_rust.sh deleted file mode 100755 index 5e8680265..000000000 --- a/scripts/docker-coredeps-arm64/deps/build_rust.sh +++ /dev/null @@ -1,18 +0,0 @@ -#!/bin/bash - -set -e -x - -# Install Rust -# -# Path from https://forge.rust-lang.org/infra/other-installation-methods.html -# -# Avoid using rustup here as it depends on reading /proc/self/exe and -# has problems running under QEMU. -RUST_VERSION=1.61.0 - -curl "https://static.rust-lang.org/dist/rust-${RUST_VERSION}-$(uname -m)-unknown-linux-gnu.tar.gz" | tar xz -cd "rust-${RUST_VERSION}-$(uname -m)-unknown-linux-gnu" -./install.sh --prefix=/usr --components=rustc,cargo,"rust-std-$(uname -m)-unknown-linux-gnu" -rustc --version -cd .. -rm -fr "rust-${RUST_VERSION}-$(uname -m)-unknown-linux-gnu" diff --git a/scripts/docker-coredeps/Dockerfile b/scripts/docker-coredeps/Dockerfile deleted file mode 100644 index f31e80de9..000000000 --- a/scripts/docker-coredeps/Dockerfile +++ /dev/null @@ -1,6 +0,0 @@ -FROM quay.io/pypa/manylinux2014_x86_64 -RUN pipx install tox - -# Install Rust -ADD deps/build_rust.sh /builder/build_rust.sh -RUN mkdir tmp1 && cd tmp1 && bash /builder/build_rust.sh && cd .. && rm -r tmp1 diff --git a/scripts/docker-coredeps/deps/build_rust.sh b/scripts/docker-coredeps/deps/build_rust.sh deleted file mode 100755 index 5e8680265..000000000 --- a/scripts/docker-coredeps/deps/build_rust.sh +++ /dev/null @@ -1,18 +0,0 @@ -#!/bin/bash - -set -e -x - -# Install Rust -# -# Path from https://forge.rust-lang.org/infra/other-installation-methods.html -# -# Avoid using rustup here as it depends on reading /proc/self/exe and -# has problems running under QEMU. -RUST_VERSION=1.61.0 - -curl "https://static.rust-lang.org/dist/rust-${RUST_VERSION}-$(uname -m)-unknown-linux-gnu.tar.gz" | tar xz -cd "rust-${RUST_VERSION}-$(uname -m)-unknown-linux-gnu" -./install.sh --prefix=/usr --components=rustc,cargo,"rust-std-$(uname -m)-unknown-linux-gnu" -rustc --version -cd .. -rm -fr "rust-${RUST_VERSION}-$(uname -m)-unknown-linux-gnu" diff --git a/scripts/run_all.sh b/scripts/run_all.sh index 28e3371bf..0ff06d494 100755 --- a/scripts/run_all.sh +++ b/scripts/run_all.sh @@ -4,6 +4,10 @@ set -e -x +pipx install tox + +scripts/install-rust.sh + # Perform clean build of core and install. # compile core lib