aboutsummaryrefslogtreecommitdiffstats
path: root/extra/docker/Dockerfile.test-base
diff options
context:
space:
mode:
Diffstat (limited to 'extra/docker/Dockerfile.test-base')
-rw-r--r--extra/docker/Dockerfile.test-base47
1 files changed, 47 insertions, 0 deletions
diff --git a/extra/docker/Dockerfile.test-base b/extra/docker/Dockerfile.test-base
new file mode 100644
index 00000000..a556ed99
--- /dev/null
+++ b/extra/docker/Dockerfile.test-base
@@ -0,0 +1,47 @@
+
+FROM ubuntu:xenial
+
+ENV RUSTUP_HOME=/usr/local/rustup \
+ CARGO_HOME=/usr/local/cargo \
+ PATH=/usr/local/cargo/bin:$PATH \
+ RUST_VERSION=1.42.0 \
+ LC_ALL=C.UTF-8 \
+ LANG=C.UTF-8
+
+
+# Add deadsnakes repo
+RUN set -eux; \
+ apt update -qy; \
+ apt install -y software-properties-common; \
+ add-apt-repository -y ppa:deadsnakes/ppa;
+
+# APT dependencies
+RUN set -eux; \
+ apt update -qy; \
+ apt install -y python3-dev python3-pip python3-wheel python3-requests python3-six python3-pytest libsnappy-dev libsodium-dev software-properties-common python3.7 python3.7-dev python3.7-venv python3.7-distutils wget libpq-dev pkg-config python3-pytest git
+
+# Rust setup from docker-rust debian Dockerfile
+RUN set -eux; \
+ dpkgArch="$(dpkg --print-architecture)"; \
+ rustArch='x86_64-unknown-linux-gnu'; rustupSha256='ad1f8b5199b3b9e231472ed7aa08d2e5d1d539198a15c5b1e53c746aad81d27b' ; \
+ url="https://static.rust-lang.org/rustup/archive/1.21.1/${rustArch}/rustup-init"; \
+ wget "$url"; \
+ echo "${rustupSha256} *rustup-init" | sha256sum -c -; \
+ chmod +x rustup-init; \
+ ./rustup-init -y --no-modify-path --profile minimal --default-toolchain $RUST_VERSION; \
+ rm rustup-init; \
+ chmod -R a+w $RUSTUP_HOME $CARGO_HOME; \
+ rustup --version; \
+ cargo --version; \
+ rustc --version;
+
+# Compile and install diesel
+RUN set -eux; \
+ cargo install diesel_cli --version 1.3.1 --no-default-features --features postgres; \
+ diesel --version
+
+# Install pipenv
+RUN set -eux; \
+ pip3 install pipenv; \
+ pipenv --version
+