diff --git a/ci/Dockerfile b/ci/Dockerfile index dec0ab4d598e6..3bd5540c5ae18 100644 --- a/ci/Dockerfile +++ b/ci/Dockerfile @@ -11,10 +11,20 @@ ENV LANG en_US.utf8 # Use AWS ubuntu mirror RUN sed -i 's|http://archive.ubuntu.com/ubuntu|http://us-east-2.ec2.archive.ubuntu.com/ubuntu/|g' /etc/apt/sources.list RUN apt-get update -yy && \ - DEBIAN_FRONTEND=noninteractive apt-get -y install make build-essential cmake protobuf-compiler curl parallel python3 python3-pip \ + DEBIAN_FRONTEND=noninteractive apt-get -y install make build-essential cmake protobuf-compiler curl parallel software-properties-common \ openssl libssl-dev libsasl2-dev libcurl4-openssl-dev pkg-config bash openjdk-11-jdk wget unzip git tmux lld postgresql-client kafkacat netcat mysql-client \ maven zstd libzstd-dev locales -yy \ && rm -rf /var/lib/{apt,dpkg,cache,log}/ +# Install Python 3.12 +RUN add-apt-repository ppa:deadsnakes/ppa -y && \ + apt-get update -yy && \ + DEBIAN_FRONTEND=noninteractive apt-get install python3.12 python3.12-dev -yy && \ + rm -rf /var/lib/{apt,dpkg,cache,log}/ +# Install pip 3.12 +RUN curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py | python3.12 +# Set Python 3.12 as the default Python3 version +RUN update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.12 1 && \ + update-alternatives --install /usr/bin/pip3 pip3 /usr/local/bin/pip3.12 1 SHELL ["/bin/bash", "-c"] diff --git a/ci/build-ci-image.sh b/ci/build-ci-image.sh index ed40458fcdf87..6ad98102c6ce1 100755 --- a/ci/build-ci-image.sh +++ b/ci/build-ci-image.sh @@ -10,7 +10,7 @@ cat ../rust-toolchain # shellcheck disable=SC2155 # REMEMBER TO ALSO UPDATE ci/docker-compose.yml -export BUILD_ENV_VERSION=v20240213 +export BUILD_ENV_VERSION=v20240223 export BUILD_TAG="public.ecr.aws/x5u3w5h6/rw-build-env:${BUILD_ENV_VERSION}" diff --git a/ci/docker-compose.yml b/ci/docker-compose.yml index 4a9f2970b84c7..49377a029ce56 100644 --- a/ci/docker-compose.yml +++ b/ci/docker-compose.yml @@ -71,7 +71,7 @@ services: retries: 5 source-test-env: - image: public.ecr.aws/x5u3w5h6/rw-build-env:v20240213 + image: public.ecr.aws/x5u3w5h6/rw-build-env:v20240223 depends_on: - mysql - db @@ -81,7 +81,7 @@ services: - ..:/risingwave sink-test-env: - image: public.ecr.aws/x5u3w5h6/rw-build-env:v20240213 + image: public.ecr.aws/x5u3w5h6/rw-build-env:v20240223 depends_on: - mysql - db @@ -93,12 +93,12 @@ services: - ..:/risingwave rw-build-env: - image: public.ecr.aws/x5u3w5h6/rw-build-env:v20240213 + image: public.ecr.aws/x5u3w5h6/rw-build-env:v20240223 volumes: - ..:/risingwave ci-flamegraph-env: - image: public.ecr.aws/x5u3w5h6/rw-build-env:v20240213 + image: public.ecr.aws/x5u3w5h6/rw-build-env:v20240223 # NOTE(kwannoel): This is used in order to permit # syscalls for `nperf` (perf_event_open), # so it can do CPU profiling. @@ -109,7 +109,7 @@ services: - ..:/risingwave regress-test-env: - image: public.ecr.aws/x5u3w5h6/rw-build-env:v20240213 + image: public.ecr.aws/x5u3w5h6/rw-build-env:v20240223 depends_on: db: condition: service_healthy