diff --git a/images/ci/Dockerfile.monitoring b/images/ci/Dockerfile.monitoring index 987bc2d8ada1dd1ec844446a0d1d760f505a4be0..63d5a21e3dd6680b3a36367d7b716f766c30f1c7 100644 --- a/images/ci/Dockerfile.monitoring +++ b/images/ci/Dockerfile.monitoring @@ -14,7 +14,6 @@ USER root # hadolint ignore=DL3018,DL3019 RUN apk update && apk add --no-cache npm curl jq - # Set NPM registry # NPM_REGISTRY_DOMAIN and NPM_REGISTRY are set in the GitLab CI/CD ARG NPM_REGISTRY_DOMAIN diff --git a/images/ci/Dockerfile.prebuild b/images/ci/Dockerfile.prebuild index f1739690bb0e2a363db86a2b15dd8536de6c334e..0d7896d64f1da69b18a2ab3aed75f71aa2753c64 100644 --- a/images/ci/Dockerfile.prebuild +++ b/images/ci/Dockerfile.prebuild @@ -30,6 +30,7 @@ COPY --chown=tezos:tezos .gitconfig /home/tezos/ # Rust installer script COPY --chown=tezos:tezos install-rust.sh /tmp/ +COPY --chown=tezos:tezos scripts/install_opam_static.sh /tmp/ # setup kisscache COPY --chown=tezos:tezos scripts/kiss-fetch.sh scripts/kiss-logs.sh /tmp/ @@ -77,15 +78,18 @@ RUN apk update \ protobuf \ protobuf-dev \ sqlite-static \ - sqlite-dev \ - # Opam from Edge is Opam 2.2 - && apk add --no-cache \ - opam --repository=https://dl-cdn.alpinelinux.org/alpine/edge/community + sqlite-dev # Install Cargo and Rust (more information in the shell script) RUN ./install-rust.sh \ && rm -rf /tmp/install-rust.sh +ARG OPAM_VERSION +ENV OPAM_VERSION=$OPAM_VERSION +# Install opam +RUN ./install_opam_static.sh \ + && rm -rf /tmp/install_opam_static.sh + USER tezos WORKDIR /home/tezos diff --git a/images/ci/scripts/install_opam_static.sh b/images/ci/scripts/install_opam_static.sh new file mode 120000 index 0000000000000000000000000000000000000000..fe5761f2f45526af9aa100e756192509d8978480 --- /dev/null +++ b/images/ci/scripts/install_opam_static.sh @@ -0,0 +1 @@ +../../scripts/install_opam_static.sh \ No newline at end of file diff --git a/images/create_ci_images.sh b/images/create_ci_images.sh index 6ee3d9d049204bf6b86d15c7dcc6db072f386c20..c96c292f94a2f116a88b96aab324c7f0de449902 100755 --- a/images/create_ci_images.sh +++ b/images/create_ci_images.sh @@ -206,6 +206,7 @@ build() { --cache-from="$f_image_name_protected" \ --build-arg BUILD_IMAGE="alpine:${alpine_version}" \ --build-arg OCAML_VERSION="${ocaml_version}" \ + --build-arg OPAM_VERSION="${opam_version}" \ --build-arg TARGETARCH="${targetarch}" \ --build-arg NPM_REGISTRY_DOMAIN="${NPM_REGISTRY_DOMAIN:-}" \ --build-arg NPM_REGISTRY="${NPM_REGISTRY:-}" \ diff --git a/images/packages/debian-deps-build.Dockerfile b/images/packages/debian-deps-build.Dockerfile index 19dc6ed61602fcc336095e1e77c1bce90be99f23..00322adaf903e8143758cab9e80663f8a66018a6 100644 --- a/images/packages/debian-deps-build.Dockerfile +++ b/images/packages/debian-deps-build.Dockerfile @@ -43,6 +43,10 @@ RUN echo "Acquire::http::Proxy \"$APT_PROXY\";" > /etc/apt/apt.conf.d/01proxy && apt-get clean && \ rm -rf /var/lib/apt/lists/* + +ARG OPAM_VERSION +ENV OPAM_VERSION=${OPAM_VERSION} + RUN /tmp/install_sccache_static.sh && \ /tmp/install_datadog_static.sh && \ /tmp/install_opam_static.sh diff --git a/images/packages/rpm-deps-build.Dockerfile b/images/packages/rpm-deps-build.Dockerfile index 6b08afa67598e5418ff60db88b61aa9d527f1e32..cec4da4d5a976b98b8d425464e4daabad124742a 100644 --- a/images/packages/rpm-deps-build.Dockerfile +++ b/images/packages/rpm-deps-build.Dockerfile @@ -11,6 +11,9 @@ ENV TZ=Etc/UTC ENV BLST_PORTABLE=true ENV VENV_PATH=$HOME/venv +ARG OPAM_VERSION +ENV OPAM_VERSION=${OPAM_VERSION} + #hadolint ignore=DL3041 RUN dnf -y update &&\ dnf install -y rpmdevtools &&\ diff --git a/images/scripts/install_opam_static.sh b/images/scripts/install_opam_static.sh index 14ffd1ba8852532f70c3a0a5fbd4022339273b41..da2dfae57db19505cef931f736cb3ad3281061ab 100755 --- a/images/scripts/install_opam_static.sh +++ b/images/scripts/install_opam_static.sh @@ -4,7 +4,7 @@ set -eu -OPAM_VERSION="${OPAM_VERSION:-2.3.0}" +OPAM_VERSION="${OPAM_VERSION:?"Please call this script with OPAM_VERSION"}" # Architecture detection ARCH=$(uname -m) diff --git a/scripts/ci/build-packages-dependencies.sh b/scripts/ci/build-packages-dependencies.sh index e655bb7f532f12fd0e5cd7de6aa65071f29d9689..0c741bae852b02c11cfd407dc73e03c2874dff13 100755 --- a/scripts/ci/build-packages-dependencies.sh +++ b/scripts/ci/build-packages-dependencies.sh @@ -40,6 +40,7 @@ docker build \ --build-arg=BUILDKIT_INLINE_CACHE=1 \ --build-arg IMAGE="$DISTRIBUTION:$RELEASE" \ --build-arg APT_PROXY="${APT_PROXY_DEB:-}" \ + --build-arg OPAM_VERSION="${opam_version}" \ --cache-from="${DEP_IMAGE}:${ARCHITECTURE}-${CI_COMMIT_REF_SLUG}" \ --cache-from="${DEP_IMAGE_PROTECTED}:master" \ -t "$LOCAL_IMAGE_NAME" \ diff --git a/scripts/version.sh b/scripts/version.sh index 3f2e0cb81f218ab9e6a62ac6753d0303bc9ced49..d4bcdbc17c1c51ab858faecb038158cd0f25de12 100644 --- a/scripts/version.sh +++ b/scripts/version.sh @@ -52,7 +52,9 @@ export rust_version='1.86.0' # Installed via apk cargo export cargo_version='1.86.0' -# Installed via apk opam +# Installed via install_opam_static.sh +# beware of updating opam to 2.4.0. +# See https://gitlab.com/tezos/tezos/-/merge_requests/18809 export opam_version='2.3.0' # Installed via apk python3-dev