From 5fbda320fc17c539a054c4d48d976a10a2b3a9e6 Mon Sep 17 00:00:00 2001 From: Michael Albinus Date: Wed, 22 Mar 2023 15:00:15 +0100 Subject: [PATCH] Add platform for Eglot tests on EMBA * test/infra/Dockerfile.emba (emacs-eglot): New image. * test/infra/gitlab-ci.yml (.eglot-template): New template. (build-image-eglot, test-eglot): New jobs. --- test/infra/Dockerfile.emba | 11 +++++++++++ test/infra/gitlab-ci.yml | 27 +++++++++++++++++++++++++++ 2 files changed, 38 insertions(+) diff --git a/test/infra/Dockerfile.emba b/test/infra/Dockerfile.emba index 872591333e6..7451c727624 100644 --- a/test/infra/Dockerfile.emba +++ b/test/infra/Dockerfile.emba @@ -60,6 +60,17 @@ RUN ./autogen.sh autoconf RUN ./configure --with-file-notification=gfile RUN make bootstrap +FROM emacs-base as emacs-eglot + +# We install a recent clangd for Eglot tests. +RUN bash -c "$(wget -O - https://apt.llvm.org/llvm.sh)" + +COPY . /checkout +WORKDIR /checkout +RUN ./autogen.sh autoconf +RUN ./configure +RUN make bootstrap + FROM emacs-base as emacs-gnustep RUN apt-get update && \ diff --git a/test/infra/gitlab-ci.yml b/test/infra/gitlab-ci.yml index 4e11b1337b5..b2d52117ba4 100644 --- a/test/infra/gitlab-ci.yml +++ b/test/infra/gitlab-ci.yml @@ -166,6 +166,16 @@ default: - test/lisp/autorevert-tests.el - test/lisp/filenotify-tests.el +.eglot-template: + rules: + - if: '$CI_PIPELINE_SOURCE == "web"' + - if: '$CI_PIPELINE_SOURCE == "schedule"' + changes: + - "**.in" + - lisp/progmodes/eglot.el + - test/infra/* + - test/lisp/progmodes/eglot-tests.el + .native-comp-template: rules: - if: '$CI_PIPELINE_SOURCE == "web"' @@ -229,6 +239,23 @@ test-filenotify-gio: # This is needed in order to get a JUnit test report. make_params: '-k -C test check-expensive LOGFILES="lisp/autorevert-tests.log lisp/filenotify-tests.log"' +build-image-eglot: + stage: platform-images + extends: [.job-template, .build-template, .eglot-template] + variables: + target: emacs-eglot + +test-eglot: + stage: platforms + extends: [.job-template, .test-template, .eglot-template] + needs: + - job: build-image-eglot + optional: true + variables: + target: emacs-eglot + # This is needed in order to get a JUnit test report. + make_params: '-k -C test check-expensive LOGFILES="lisp/progmodes/eglot-tests.log"' + # The next two jobs are commented out due to bug#62210. # build-image-gnustep: -- 2.39.5