diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 1a4e65b29..9bde46038 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -16,19 +16,19 @@ jobs: os: - ubuntu-latest ocaml-compiler: - - 4.13.x + - '4.14.x' runs-on: ${{ matrix.os }} steps: - name: Checkout code - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Check Valid ocaml-version/*.json and URLs run: make check_url - name: Use OCaml ${{ matrix.ocaml-compiler }} - uses: ocaml/setup-ocaml@v2 + uses: ocaml/setup-ocaml@v3 with: ocaml-compiler: ${{ matrix.ocaml-compiler }} @@ -72,19 +72,19 @@ jobs: os: - ubuntu-latest ocaml-compiler: - - 4.13.x + - '4.14.x' runs-on: ${{ matrix.os }} steps: - name: Checkout code - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Check Valid ocaml-version/*.json and URLs run: make check_url - name: Use OCaml ${{ matrix.ocaml-compiler }} - uses: ocaml/setup-ocaml@v2 + uses: ocaml/setup-ocaml@v3 with: ocaml-compiler: ${{ matrix.ocaml-compiler }} @@ -128,16 +128,16 @@ jobs: os: - ubuntu-latest ocaml-compiler: - - 4.13.x + - '4.14.x' runs-on: ${{ matrix.os }} steps: - name: Checkout code - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Use OCaml ${{ matrix.ocaml-compiler }} - uses: ocaml/setup-ocaml@v2 + uses: ocaml/setup-ocaml@v3 with: ocaml-compiler: ${{ matrix.ocaml-compiler }} @@ -180,7 +180,7 @@ jobs: steps: - name: Checkout code - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: test_notebooks run: | diff --git a/bench.Dockerfile b/bench.Dockerfile index 1f3ebc843..7b2ca9602 100644 --- a/bench.Dockerfile +++ b/bench.Dockerfile @@ -1,4 +1,5 @@ -FROM ocaml/opam:ubuntu-20.04-ocaml-4.12 +# syntax=docker/dockerfile:1 +FROM ocaml/opam:ubuntu-22.04-ocaml-4.14 ARG BENCH_CPU ENV BENCH_CPU=$BENCH_CPU @@ -7,11 +8,25 @@ ENV BENCHCMD="$(MAKE) set-bench-cpu/run_config.json; TAG='\"run_in_ci\"' $(MAKE) WORKDIR /app -RUN sudo apt-get update +RUN sudo rm -f /etc/apt/apt.conf.d/docker-clean; echo 'Binary::apt::APT::Keep-Downloaded-Packages "true";' | sudo tee /etc/apt/apt.conf.d/keep-cache +RUN --mount=type=cache,target=/var/cache/apt,sharing=locked \ + --mount=type=cache,target=/var/lib/apt,sharing=locked \ + sudo apt update && sudo apt-get --no-install-recommends install -y \ + autoconf \ + cmake \ + jo \ + jq \ + libcap2-bin \ + libdw-dev \ + libffi-dev \ + libgmp-dev \ + m4 \ + pkg-config \ + python3-pip \ + wget # TODO: Add gnuplot-x11 when irmin benchmarks are enabled -RUN sudo apt-get -y install libgmp-dev libdw-dev jq jo python3-pip pkg-config m4 autoconf libffi-dev cmake libcap2-bin wget -COPY . . +COPY --link . . RUN sudo chown -R opam /app RUN sudo setcap cap_sys_nice=ep /usr/bin/chrt # for parallel benchmarks