diff options
author | James E. King III <jking@apache.org> | 2019-06-21 17:50:34 -0400 |
---|---|---|
committer | James E. King III <jking@apache.org> | 2019-07-07 12:16:52 -0400 |
commit | 93ff9b00531682ece08a1a43883e55fd2aa83a15 (patch) | |
tree | 69e0f337bd2fd92e0890eb20af44654f9a829c1e /build/docker | |
parent | 1a2dee60b4384de2f6190caa85cf3e2a497c31b9 (diff) | |
download | thrift-93ff9b00531682ece08a1a43883e55fd2aa83a15.tar.gz |
Update language levels, fix erlang and rust in CI
- Include rebar3 in docker image so erlang builds in CI
- Include the correct path in docker image so rust builds in CI
- Updated common lisp (sbcl) to 1.5.3 in docker image
- Updated dlang to 2.087.0 in docker image
- Updated dart to 2.0.0 in xenial docker image
- Updated dart to 2.4.0 in bionic docker image
- Updated erlang to 22.0 in docker image
- Updated openjdk to 11.0.3 in docker image
- Updated node.js to 10.16 in docker image
- Updated rust to 1.34.0 in xenial docker image
- Updated rust to 1.35.0 in bionic docker image
THRIFT-4905: Disable hanging experimental dlang async ssl test
Diffstat (limited to 'build/docker')
-rw-r--r-- | build/docker/README.md | 32 | ||||
-rw-r--r-- | build/docker/ubuntu-bionic/Dockerfile | 40 | ||||
-rw-r--r-- | build/docker/ubuntu-xenial/Dockerfile | 40 |
3 files changed, 54 insertions, 58 deletions
diff --git a/build/docker/README.md b/build/docker/README.md index ce79985a3..7bbf00173 100644 --- a/build/docker/README.md +++ b/build/docker/README.md @@ -167,31 +167,31 @@ Last updated: October 1, 2017 | Language | ubuntu-xenial | ubuntu-bionic | Notes | | :-------- | :------------ | :------------ | :---- | -| as of | Mar 06, 2018 | Jan 21, 2019 | | +| as of | Mar 06, 2018 | Jul 1, 2019 | | | as3 | | 4.6.0 | | -| C++ gcc | 5.4.0 | 7.3.0 | | +| C++ gcc | 5.4.0 | 7.4.0 | | | C++ clang | 3.8 | 6.0 | | | C# (mono) | 4.2.1.0 | 4.6.2.7 | | -| c_glib | 2.48.2 | 2.56.0 | | -| cl (sbcl) | | 1.4.15 | | -| d | 2.075.1 | 2.083.1 | | -| dart | 1.24.3 | 2.1.0 | | +| c_glib | 2.48.2 | 2.56.4 | | +| cl (sbcl) | | 1.5.3 | | +| d | 2.075.1 | 2.087.0 | | +| dart | 2.0.0 | 2.4.0 | | | delphi | | | Not in CI | -| dotnet | 2.1.503 | 2.2.103 | | -| erlang | 18.3 | 20.2.2 | | -| go | 1.7.6 | 1.11.4 | | +| dotnet | 2.1.503 | 2.2.300 | | +| erlang | 18.3 | 22.0 | | +| go | 1.10.8 | 1.12.6 | | | haskell | 7.10.3 | 8.0.2 | | | haxe | 3.2.1 | 3.4.4 | THRIFT-4352: avoid 3.4.2 | -| java | 1.8.0_191 | 1.8.0_191 | | +| java | 1.8.0_191 | 11.0.3 | | | js | | | Unsure how to look for version info? | -| lua | 5.2.4 | 5.2.4 | Lua 5.3: see THRIFT-4386 | -| nodejs | 6.16.0 | 8.15.0 | | +| lua | | 5.2.4 | Lua 5.3: see THRIFT-4386 | +| nodejs | 6.16.0 | 10.16.0 | | | ocaml | | 4.05.0 | THRIFT-4517: ocaml 4.02.3 on xenial appears broken | | perl | 5.22.1 | 5.26.1 | | -| php | 7.0.32 | 7.2.10 | | -| python | 2.7.12 | 2.7.15rc1 | | -| python3 | 3.5.2 | 3.6.7 | | +| php | 7.0.32 | 7.2.19 | | +| python | 2.7.12 | 2.7.15 | | +| python3 | 3.5.2 | 3.6.8 | | | ruby | 2.3.1p112 | 2.5.1p57 | | -| rust | 1.35.0 | 1.35.0 | | +| rust | 1.34.0 | 1.35.0 | | | smalltalk | | | Not in CI | | swift | | 4.2.1 | | diff --git a/build/docker/ubuntu-bionic/Dockerfile b/build/docker/ubuntu-bionic/Dockerfile index b508b1e8d..2c0609e23 100644 --- a/build/docker/ubuntu-bionic/Dockerfile +++ b/build/docker/ubuntu-bionic/Dockerfile @@ -12,13 +12,7 @@ # # Apache Thrift Docker build environment for Ubuntu Bionic -# Using all stock Ubuntu Bionic packaging except for: -# - cl: want latest -# - d: dmd does not come with Ubuntu -# - dart: does not come with Ubuntu - we use 2.x here -# - dotnet: does not come with Ubuntu -# - go: want latest -# - nodejs: want v8, bionic comes with v6 +# with some updated packages. # FROM buildpack-deps:bionic-scm @@ -38,10 +32,6 @@ RUN apt-get update && \ software-properties-common \ wget -# csharp (mono) - if we ever want a later version -# RUN echo "deb http://download.mono-project.com/repo/debian xenial main" | tee /etc/apt/sources.list.d/mono.list && \ -# apt-key adv --keyserver keyserver.ubuntu.com --recv-keys A6A19B38D3D831EF - # Dart RUN curl https://dl-ssl.google.com/linux/linux_signing_key.pub | apt-key add - && \ curl https://storage.googleapis.com/download.dartlang.org/linux/debian/dart_stable.list > \ @@ -53,9 +43,13 @@ RUN curl https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > /et chown root:root /etc/apt/trusted.gpg.d/microsoft.gpg && \ chown root:root /etc/apt/sources.list.d/microsoft-prod.list +# erlang +RUN wget -O- https://packages.erlang-solutions.com/ubuntu/erlang_solutions.asc | apt-key add - && \ + echo "deb https://packages.erlang-solutions.com/ubuntu bionic contrib" | tee /etc/apt/sources.list.d/erlang.list + # node.js RUN curl -sL https://deb.nodesource.com/gpgkey/nodesource.gpg.key | apt-key add - && \ - echo "deb https://deb.nodesource.com/node_8.x bionic main" | tee /etc/apt/sources.list.d/nodesource.list + echo "deb https://deb.nodesource.com/node_10.x bionic main" | tee /etc/apt/sources.list.d/nodesource.list ### install general dependencies RUN apt-get update && apt-get install -y --no-install-recommends \ @@ -99,7 +93,7 @@ RUN apt-get install -y --no-install-recommends \ `# csharp (mono) dependencies` \ mono-devel -ENV SBCL_VERSION 1.4.15 +ENV SBCL_VERSION 1.5.3 RUN \ `# Common Lisp (sbcl) dependencies` \ curl --version && \ @@ -111,8 +105,8 @@ RUN \ cd .. && \ rm -rf sbcl* -ENV D_VERSION 2.083.1 -ENV DMD_DEB dmd_2.083.1-0_amd64.deb +ENV D_VERSION 2.087.0 +ENV DMD_DEB dmd_2.087.0-0_amd64.deb RUN \ `# D dependencies` \ wget -q http://downloads.dlang.org/releases/2.x/${D_VERSION}/${DMD_DEB} && \ @@ -128,7 +122,7 @@ RUN \ mv deimos-openssl-1.1.0h/C/* /usr/include/dmd/druntime/import/C/ && \ rm -rf deimos-openssl-1.1.0h -ENV DART_VERSION 2.1.0-1 +ENV DART_VERSION 2.4.0-1 RUN apt-get install -y --no-install-recommends \ `# Dart dependencies` \ dart=$DART_VERSION @@ -140,20 +134,19 @@ RUN apt-get install -y --no-install-recommends \ RUN apt-get install -y --no-install-recommends \ `# Erlang dependencies` \ - erlang-base \ - erlang-eunit \ - erlang-dev \ - erlang-tools \ - rebar + erlang && \ + wget https://s3.amazonaws.com/rebar3/rebar3 -O /usr/bin/rebar3 && \ + chmod 755 /usr/bin/rebar3 && \ + rebar3 --version RUN apt-get install -y --no-install-recommends \ `# GlibC dependencies` \ libglib2.0-dev # golang -ENV GOLANG_VERSION 1.12.1 +ENV GOLANG_VERSION 1.12.6 ENV GOLANG_DOWNLOAD_URL https://golang.org/dl/go$GOLANG_VERSION.linux-amd64.tar.gz -ENV GOLANG_DOWNLOAD_SHA256 2a3fdabf665496a0db5f41ec6af7a9b15a49fbe71a85a50ca38b1f13a103aeec +ENV GOLANG_DOWNLOAD_SHA256 dbcf71a3c1ea53b8d54ef1b48c85a39a6c9a935d01fc8291ff2b92028e59913c RUN curl -fsSL "$GOLANG_DOWNLOAD_URL" -o golang.tar.gz && \ echo "$GOLANG_DOWNLOAD_SHA256 golang.tar.gz" | sha256sum -c - && \ tar -C /usr/local -xzf golang.tar.gz && \ @@ -258,6 +251,7 @@ RUN apt-get install -y --no-install-recommends \ # Rust dependencies RUN curl https://sh.rustup.rs -sSf | sh -s -- --default-toolchain 1.35.0 -y +ENV PATH /root/.cargo/bin:$PATH # Swift on Linux for cross tests RUN cd / && \ diff --git a/build/docker/ubuntu-xenial/Dockerfile b/build/docker/ubuntu-xenial/Dockerfile index 119d4cdf5..8dc6497dc 100644 --- a/build/docker/ubuntu-xenial/Dockerfile +++ b/build/docker/ubuntu-xenial/Dockerfile @@ -14,7 +14,7 @@ # Apache Thrift Docker build environment for Ubuntu Xenial # Using all stock Ubuntu Xenial packaging except for: # - d: does not come with Ubuntu so we're installing 2.075.1 for coverage -# - dart: does not come with Ubuntu so we're installing 1.24.3 for coverage +# - dart: does not come with Ubuntu so we're installing 2.0.0-1 for coverage # - dotnet: does not come with Ubuntu # - go: Xenial comes with 1.6, but we need 1.10 or later # - nodejs: Xenial comes with 4.2.6 which exits LTS April 2018, so we're installing 6.x @@ -35,29 +35,29 @@ RUN apt-get update && \ apt-utils \ curl \ software-properties-common \ - wget + wget && \ # csharp (mono) -# RUN echo "deb http://download.mono-project.com/repo/debian xenial main" | tee /etc/apt/sources.list.d/mono.list && \ -# apt-key adv --keyserver keyserver.ubuntu.com --recv-keys A6A19B38D3D831EF +# echo "deb http://download.mono-project.com/repo/debian xenial main" | tee /etc/apt/sources.list.d/mono.list && \ +# apt-key adv --keyserver keyserver.ubuntu.com --recv-keys A6A19B38D3D831EF && \ # D -RUN apt-key adv --keyserver keyserver.ubuntu.com --recv-keys EBCF975E5BA24D5E && \ + apt-key adv --keyserver keyserver.ubuntu.com --recv-keys EBCF975E5BA24D5E && \ wget http://master.dl.sourceforge.net/project/d-apt/files/d-apt.list -O /etc/apt/sources.list.d/d-apt.list && \ - wget -qO - https://dlang.org/d-keyring.gpg | apt-key add - + wget -qO - https://dlang.org/d-keyring.gpg | apt-key add - && \ # Dart -RUN curl https://dl-ssl.google.com/linux/linux_signing_key.pub | apt-key add - && \ + curl https://dl-ssl.google.com/linux/linux_signing_key.pub | apt-key add - && \ curl https://storage.googleapis.com/download.dartlang.org/linux/debian/dart_stable.list > \ - /etc/apt/sources.list.d/dart_stable.list + /etc/apt/sources.list.d/dart_stable.list && \ # dotnet (core) -RUN curl https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > /etc/apt/trusted.gpg.d/microsoft.gpg && \ + curl https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > /etc/apt/trusted.gpg.d/microsoft.gpg && \ echo "deb [arch=amd64] https://packages.microsoft.com/repos/microsoft-ubuntu-xenial-prod xenial main" > \ - /etc/apt/sources.list.d/dotnetdev.list + /etc/apt/sources.list.d/dotnetdev.list && \ # node.js -RUN curl -sL https://deb.nodesource.com/gpgkey/nodesource.gpg.key | apt-key add - && \ + curl -sL https://deb.nodesource.com/gpgkey/nodesource.gpg.key | apt-key add - && \ echo "deb https://deb.nodesource.com/node_6.x xenial main" | tee /etc/apt/sources.list.d/nodesource.list ### install general dependencies @@ -119,7 +119,7 @@ RUN curl -sSL https://github.com/D-Programming-Deimos/openssl/archive/v1.1.6+1.0 mv openssl-1.1.6-1.0.1g/C/* /usr/include/dmd/druntime/import/C/ && \ rm -rf openssl-1.1.6-1.0.1g -ENV DART_VERSION 1.24.3-1 +ENV DART_VERSION 2.0.0-1 RUN apt-get install -y --no-install-recommends \ `# Dart dependencies` \ dart=$DART_VERSION @@ -151,7 +151,7 @@ RUN curl -fsSL "$GOLANG_DOWNLOAD_URL" -o golang.tar.gz && \ ln -s /usr/local/go/bin/go /usr/local/bin && \ rm golang.tar.gz -# due to a bug in cabal in xenial (cabal-install package) we pull in another: +# cabal 1.22 in xenial is too old so we grab a pre-built 1.24 binary RUN apt-get install -y --no-install-recommends \ `# Haskell dependencies` \ ghc && \ @@ -160,7 +160,8 @@ RUN apt-get install -y --no-install-recommends \ tar xzf cabal-install-1.24.0.2-x86_64-unknown-linux.tar.gz && \ find dist-newstyle/ -type f -name cabal -exec mv {} /usr/bin \; && \ rm -rf /tmp/cabal* && \ - cabal --version + cabal --version && \ + cabal update RUN apt-get install -y --no-install-recommends \ `# Haxe dependencies` \ @@ -179,10 +180,11 @@ RUN apt-get install -y --no-install-recommends \ openjdk-8-jdk \ maven -RUN apt-get install -y --no-install-recommends \ -`# Lua dependencies` \ - lua5.2 \ - lua5.2-dev +# disabled: same as ubuntu-bionic jobs +# RUN apt-get install -y --no-install-recommends \ +# `# Lua dependencies` \ +# lua5.2 \ +# lua5.2-dev # https://bugs.launchpad.net/ubuntu/+source/lua5.3/+bug/1707212 # lua5.3 does not install alternatives so stick with 5.2 here @@ -255,7 +257,7 @@ RUN apt-get install -y --no-install-recommends \ ruby-bundler # Rust dependencies -RUN curl https://sh.rustup.rs -sSf | sh -s -- --default-toolchain 1.35.0 -y +RUN curl https://sh.rustup.rs -sSf | sh -s -- --default-toolchain 1.34.0 -y # Clean up RUN rm -rf /var/cache/apt/* && \ |