From 18f8bfd26996a0b1bbd65b638bf1b8b6651d8a0c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Antonin=20D=C3=A9cimo?= Date: Wed, 9 Oct 2024 11:16:06 +0200 Subject: [PATCH] Update Dockerfiles and dependencies --- Dockerfile | 7 ++++--- Dockerfile.worker | 9 +++++---- Dockerfile.worker.alpine | 9 +++++---- current_ocluster.opam | 6 +++--- dune-project | 20 ++++++++++---------- obuilder | 2 +- ocluster-api.opam | 6 +++--- ocluster-worker.opam | 6 +++--- ocluster.opam | 8 ++++---- 9 files changed, 38 insertions(+), 35 deletions(-) diff --git a/Dockerfile b/Dockerfile index 8919764d..a93da559 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,7 +1,8 @@ -FROM ocaml/opam:debian-12-ocaml-4.14@sha256:650f6b9780c41f4ab594930957aa25012c60114d97638686678eb6979aa7df87 AS build +# syntax=docker/dockerfile:1 +FROM ocaml/opam:debian-12-ocaml-4.14@sha256:be38063c43f00b0627de62144f24dc8c9929504f0db4774343d7bffc62777073 AS build +RUN sudo ln -f /usr/bin/opam-2.2 /usr/bin/opam && opam init --reinit -ni RUN sudo apt-get update && sudo apt-get install libev-dev capnproto libcapnp-dev m4 pkg-config libsqlite3-dev libgmp-dev -y --no-install-recommends -RUN sudo ln -f /usr/bin/opam-2.1 /usr/bin/opam && opam init --reinit -ni -RUN cd ~/opam-repository && git fetch -q origin master && git reset --hard 76d09264e920a27527de605cc64ef1d28ec353cd && opam update +RUN cd ~/opam-repository && git fetch -q origin master && git reset --hard 1b4da5019e5ea60af76c94aacc672a7e9659a832 && opam update COPY --chown=opam ocluster-api.opam ocluster-worker.opam ocluster.opam /src/ COPY --chown=opam obuilder/obuilder.opam obuilder/obuilder-spec.opam /src/obuilder/ RUN opam pin -yn /src/obuilder/ diff --git a/Dockerfile.worker b/Dockerfile.worker index d9096b07..c368a5b4 100644 --- a/Dockerfile.worker +++ b/Dockerfile.worker @@ -1,7 +1,8 @@ -FROM ocaml/opam:ubuntu-22.04-ocaml-4.14@sha256:41ce765f59ecde9d8525ec58e0da7cd1317f3798d2c4951186aeef2ce804fad5 AS build +# syntax=docker/dockerfile:1 +FROM ocaml/opam:ubuntu-24.04-ocaml-4.14@sha256:96517e22343713a96a55aee23d13db8e4f3595cc47413f738dcc686a33684835 AS build +RUN sudo ln -f /usr/bin/opam-2.2 /usr/bin/opam && opam init --reinit -ni RUN sudo apt-get update && sudo apt-get install libev-dev capnproto libcapnp-dev m4 pkg-config libsqlite3-dev libgmp-dev -y --no-install-recommends -RUN sudo ln -f /usr/bin/opam-2.1 /usr/bin/opam && opam init --reinit -ni -RUN cd ~/opam-repository && git fetch -q origin master && git reset --hard 47a1176c71e6b07f26b724409a88340f8bac3a42 && opam update +RUN cd ~/opam-repository && git fetch -q origin master && git reset --hard 1b4da5019e5ea60af76c94aacc672a7e9659a832 && opam update COPY --chown=opam ocluster-api.opam ocluster-worker.opam ocluster.opam /src/ COPY --chown=opam obuilder/obuilder.opam obuilder/obuilder-spec.opam /src/obuilder/ RUN opam pin -yn /src/obuilder/ @@ -11,7 +12,7 @@ ADD --chown=opam . . RUN opam exec -- dune subst RUN opam exec -- dune build ./_build/install/default/bin/ocluster-worker -FROM ubuntu:jammy-20221130 +FROM ubuntu:24.04 RUN apt-get update && apt-get install docker.io libev4 curl gnupg2 git libsqlite3-dev ca-certificates netbase -y --no-install-recommends WORKDIR /var/lib/ocluster-worker ENTRYPOINT ["/usr/local/bin/ocluster-worker"] diff --git a/Dockerfile.worker.alpine b/Dockerfile.worker.alpine index 6b5ff302..1bf57d12 100644 --- a/Dockerfile.worker.alpine +++ b/Dockerfile.worker.alpine @@ -1,7 +1,8 @@ -FROM ocaml/opam:alpine-3.17-ocaml-4.14@sha256:df87c00eb4b212b8b42e3cbf37b7729507bb398b4bf19c9df0e2d84d1c41e46d AS build +# syntax=docker/dockerfile:1 +FROM ocaml/opam:alpine-3.20-ocaml-4.14@sha256:1946904456dca358d7031ac517900714ce71981defc577f6dad16bd1a5be1108 AS build +RUN sudo ln -f /usr/bin/opam-2.2 /usr/bin/opam && opam init --reinit -ni RUN sudo apk update && sudo apk add libev capnproto m4 sqlite libgmpxx -RUN sudo ln -f /usr/bin/opam-2.1 /usr/bin/opam && opam init --reinit -ni -RUN cd ~/opam-repository && git fetch -q origin master && git reset --hard 47a1176c71e6b07f26b724409a88340f8bac3a42 && opam update +RUN cd ~/opam-repository && git fetch -q origin master && git reset --hard 1b4da5019e5ea60af76c94aacc672a7e9659a832 && opam update COPY --chown=opam ocluster-api.opam ocluster-worker.opam ocluster.opam /src/ COPY --chown=opam obuilder/obuilder.opam obuilder/obuilder-spec.opam /src/obuilder/ RUN opam pin -yn /src/obuilder/ @@ -11,7 +12,7 @@ ADD --chown=opam . . RUN opam exec -- dune subst RUN opam exec -- dune build ./_build/install/default/bin/ocluster-worker -FROM alpine:3.17 +FROM alpine:3.20 RUN apk update && apk add docker libev curl gnupg git sqlite WORKDIR /var/lib/ocluster-worker ENTRYPOINT ["/usr/local/bin/ocluster-worker"] diff --git a/current_ocluster.opam b/current_ocluster.opam index 74bc269f..645e0aa3 100644 --- a/current_ocluster.opam +++ b/current_ocluster.opam @@ -19,16 +19,16 @@ homepage: "https://github.com/ocurrent/ocluster" doc: "https://ocurrent.github.io/ocluster/" bug-reports: "https://github.com/ocurrent/ocluster/issues" depends: [ - "dune" {>= "3.7"} + "dune" {>= "3.16"} "ocluster-api" {= version} - "ocaml" {>= "4.14.1"} + "ocaml" {>= "4.14"} "capnp-rpc-unix" {>= "1.2.3"} "current" {>= "0.6.4"} "current_git" {>= "0.6.4"} "duration" "fmt" "logs" - "lwt" {>= "5.6.1"} + "lwt" {>= "5.7.0"} "ppx_deriving" "ppx_deriving_yojson" "prometheus" {>= "1.2"} diff --git a/dune-project b/dune-project index 1f72ba1c..b2b5494c 100644 --- a/dune-project +++ b/dune-project @@ -1,4 +1,4 @@ -(lang dune 3.7) +(lang dune 3.16) (name ocluster) (formatting disabled) (generate_opam_files true) @@ -22,10 +22,10 @@ (synopsis "Cap'n Proto API for OCluster") (description "OCaml bindings for the OCluster Cap'n Proto API.") (depends - (ocaml (>= 4.14.1)) + (ocaml (>= 4.14)) (capnp-rpc-lwt (>= 1.2.3)) fmt - (lwt (>= 5.6.1)) + (lwt (>= 5.7.0)) ppx_deriving ppx_deriving_yojson)) @@ -35,14 +35,14 @@ (description "OCluster library for defining workers") (depends (ocluster-api (= :version)) - (ocaml (>= 4.14.1)) + (ocaml (>= 4.14)) (capnp-rpc-lwt (>= 1.2.3)) (cohttp-lwt-unix (>= 4.0)) (digestif (>= 0.8)) (extunix (>= 0.4.1)) fpath logs - (lwt (>= 5.6.1)) + (lwt (>= 5.7.0)) (obuilder (>= 0.5.1)) (prometheus-app (>= 1.2)))) @@ -53,18 +53,18 @@ (depends (ocluster-api (= :version)) (ocluster-worker (= :version)) - (ocaml (>= 4.14.1)) + (ocaml (>= 4.14)) (capnp-rpc-lwt (>= 1.2.3)) (capnp-rpc-net (>= 1.2.3)) (capnp-rpc-unix (>= 1.2.3)) - (cmdliner (>= 1.2.0)) + (cmdliner (>= 1.3.0)) (conf-libev (<> :os "win32")) (digestif (>= 0.8)) dune-build-info fmt fpath logs - (lwt (>= 5.6.1)) + (lwt (>= 5.7.0)) lwt-dllist (mirage-crypto (>= 0.8.5)) (obuilder (>= 0.5.1)) @@ -88,14 +88,14 @@ "Creates a stage in an OCurrent pipeline for submitting jobs to OCluster.") (depends (ocluster-api (= :version)) - (ocaml (>= 4.14.1)) + (ocaml (>= 4.14)) (capnp-rpc-unix (>= 1.2.3)) (current (>= 0.6.4)) (current_git (>= 0.6.4)) duration fmt logs - (lwt (>= 5.6.1)) + (lwt (>= 5.7.0)) ppx_deriving ppx_deriving_yojson (prometheus (>= 1.2)) diff --git a/obuilder b/obuilder index bc6eca86..fc345f56 160000 --- a/obuilder +++ b/obuilder @@ -1 +1 @@ -Subproject commit bc6eca86e5624b32ca58fb0b5e43e7e15f188f58 +Subproject commit fc345f56a401ae2e7193014313b7f82383464a9f diff --git a/ocluster-api.opam b/ocluster-api.opam index 2b166546..aa2e3855 100644 --- a/ocluster-api.opam +++ b/ocluster-api.opam @@ -18,11 +18,11 @@ homepage: "https://github.com/ocurrent/ocluster" doc: "https://ocurrent.github.io/ocluster/" bug-reports: "https://github.com/ocurrent/ocluster/issues" depends: [ - "dune" {>= "3.7"} - "ocaml" {>= "4.14.1"} + "dune" {>= "3.16"} + "ocaml" {>= "4.14"} "capnp-rpc-lwt" {>= "1.2.3"} "fmt" - "lwt" {>= "5.6.1"} + "lwt" {>= "5.7.0"} "ppx_deriving" "ppx_deriving_yojson" "odoc" {with-doc} diff --git a/ocluster-worker.opam b/ocluster-worker.opam index aa1fb9e2..3280b0ea 100644 --- a/ocluster-worker.opam +++ b/ocluster-worker.opam @@ -18,16 +18,16 @@ homepage: "https://github.com/ocurrent/ocluster" doc: "https://ocurrent.github.io/ocluster/" bug-reports: "https://github.com/ocurrent/ocluster/issues" depends: [ - "dune" {>= "3.7"} + "dune" {>= "3.16"} "ocluster-api" {= version} - "ocaml" {>= "4.14.1"} + "ocaml" {>= "4.14"} "capnp-rpc-lwt" {>= "1.2.3"} "cohttp-lwt-unix" {>= "4.0"} "digestif" {>= "0.8"} "extunix" {>= "0.4.1"} "fpath" "logs" - "lwt" {>= "5.6.1"} + "lwt" {>= "5.7.0"} "obuilder" {>= "0.5.1"} "prometheus-app" {>= "1.2"} "odoc" {with-doc} diff --git a/ocluster.opam b/ocluster.opam index 3b62a54a..6eb75b82 100644 --- a/ocluster.opam +++ b/ocluster.opam @@ -27,21 +27,21 @@ homepage: "https://github.com/ocurrent/ocluster" doc: "https://ocurrent.github.io/ocluster/" bug-reports: "https://github.com/ocurrent/ocluster/issues" depends: [ - "dune" {>= "3.7"} + "dune" {>= "3.16"} "ocluster-api" {= version} "ocluster-worker" {= version} - "ocaml" {>= "4.14.1"} + "ocaml" {>= "4.14"} "capnp-rpc-lwt" {>= "1.2.3"} "capnp-rpc-net" {>= "1.2.3"} "capnp-rpc-unix" {>= "1.2.3"} - "cmdliner" {>= "1.2.0"} + "cmdliner" {>= "1.3.0"} "conf-libev" {os != "win32"} "digestif" {>= "0.8"} "dune-build-info" "fmt" "fpath" "logs" - "lwt" {>= "5.6.1"} + "lwt" {>= "5.7.0"} "lwt-dllist" "mirage-crypto" {>= "0.8.5"} "obuilder" {>= "0.5.1"}