aboutsummaryrefslogtreecommitdiffstats
path: root/test
diff options
context:
space:
mode:
authorMichael Albinus2025-06-08 15:47:44 +0200
committerMichael Albinus2025-06-08 15:47:44 +0200
commitf1766fd2b35b70093bb4caab79a8dcdfec666ee0 (patch)
treec32e362fec77d3c67e8b68a85aff954c47acd2de /test
parent988110fb6d13ce263574c8f4610a89a38ebb6835 (diff)
downloademacs-f1766fd2b35b70093bb4caab79a8dcdfec666ee0.tar.gz
emacs-f1766fd2b35b70093bb4caab79a8dcdfec666ee0.zip
Improve emba integration
* admin/notes/emba: Mention generated compatibility-report.html. * test/infra/Dockerfile.emba (emacs-base): Install man-db. (emacs-inotify): Don't install clangd. (emacs-eglot): Derive from debian:trixie. Install rust-analyzer. * test/infra/gitlab-ci.yml (.job-template): Make actions in after_script more robust.
Diffstat (limited to 'test')
-rw-r--r--test/infra/Dockerfile.emba21
-rw-r--r--test/infra/gitlab-ci.yml10
2 files changed, 18 insertions, 13 deletions
diff --git a/test/infra/Dockerfile.emba b/test/infra/Dockerfile.emba
index 8078dd77312..3944f7cca7e 100644
--- a/test/infra/Dockerfile.emba
+++ b/test/infra/Dockerfile.emba
@@ -29,15 +29,14 @@ FROM debian:bookworm as emacs-base
29RUN apt-get update && \ 29RUN apt-get update && \
30 apt-get install -y --no-install-recommends -o=Dpkg::Use-Pty=0 \ 30 apt-get install -y --no-install-recommends -o=Dpkg::Use-Pty=0 \
31 libc-dev gcc g++ make autoconf automake libncurses-dev gnutls-dev \ 31 libc-dev gcc g++ make autoconf automake libncurses-dev gnutls-dev \
32 libxml2-dev libdbus-1-dev libacl1-dev acl git texinfo gdb \ 32 libxml2-dev libdbus-1-dev libacl1-dev acl git man-db texinfo gdb \
33 && rm -rf /var/lib/apt/lists/* 33 && rm -rf /var/lib/apt/lists/*
34 34
35FROM emacs-base as emacs-inotify 35FROM emacs-base as emacs-inotify
36 36
37# We install clangd for Eglot tests.
38RUN apt-get update && \ 37RUN apt-get update && \
39 apt-get install -y --no-install-recommends -o=Dpkg::Use-Pty=0 \ 38 apt-get install -y --no-install-recommends -o=Dpkg::Use-Pty=0 \
40 inotify-tools clangd \ 39 inotify-tools \
41 && rm -rf /var/lib/apt/lists/* 40 && rm -rf /var/lib/apt/lists/*
42 41
43COPY . /checkout 42COPY . /checkout
@@ -60,12 +59,19 @@ RUN ./autogen.sh autoconf
60RUN ./configure --with-file-notification=gfile 59RUN ./configure --with-file-notification=gfile
61RUN make -j `nproc` bootstrap 60RUN make -j `nproc` bootstrap
62 61
63FROM emacs-base as emacs-eglot 62FROM debian:trixie as emacs-eglot
64 63
65# Install clangd, tsserver. 64# This mimics emacs-base.
66RUN apt-get update && \ 65RUN apt-get update && \
67 apt-get install -y --no-install-recommends -o=Dpkg::Use-Pty=0 \ 66 apt-get install -y --no-install-recommends -o=Dpkg::Use-Pty=0 \
68 clangd node-typescript \ 67 libc-dev gcc g++ make autoconf automake libncurses-dev gnutls-dev \
68 libxml2-dev libdbus-1-dev libacl1-dev acl git man-db texinfo gdb \
69 && rm -rf /var/lib/apt/lists/*
70
71# Install clangd, tsserver, rust-analyzer.
72RUN apt-get update && \
73 apt-get install -y --no-install-recommends -o=Dpkg::Use-Pty=0 \
74 clangd node-typescript rust-analyzer cargo \
69 && rm -rf /var/lib/apt/lists/* 75 && rm -rf /var/lib/apt/lists/*
70 76
71# eclipse-jdt-ls is planned as Java language server. 77# eclipse-jdt-ls is planned as Java language server.
@@ -81,9 +87,6 @@ RUN apt-get update && \
81# && rm -rf /var/lib/apt/lists/* 87# && rm -rf /var/lib/apt/lists/*
82# RUN snap install core 88# RUN snap install core
83 89
84# # Install rust-analyzer.
85# RUN snap install rust-analyzer --beta
86
87# # Install typescript-language-server. 90# # Install typescript-language-server.
88# RUN snap install typescript-language-server 91# RUN snap install typescript-language-server
89 92
diff --git a/test/infra/gitlab-ci.yml b/test/infra/gitlab-ci.yml
index 79255258aca..93658347761 100644
--- a/test/infra/gitlab-ci.yml
+++ b/test/infra/gitlab-ci.yml
@@ -118,11 +118,13 @@ default:
118 docker cp ${test_name}:checkout/compatibility-report.html ${test_name} || 118 docker cp ${test_name}:checkout/compatibility-report.html ${test_name} ||
119 true' 119 true'
120 - 'test -n "$(docker ps -aq -f name=${test_name})" && docker rm ${test_name}' 120 - 'test -n "$(docker ps -aq -f name=${test_name})" && docker rm ${test_name}'
121 - 'find ${test_name} 121 - 'test -d ${test_name} &&
122 ! \( -name "*.log" -o -name ${EMACS_TEST_JUNIT_REPORT} -o 122 find ${test_name}
123 -name compatibility-report.html \) -type f -delete' 123 ! \( -name "*.log" -o -name ${EMACS_TEST_JUNIT_REPORT} -o
124 -name compatibility-report.html \) -type f -delete'
124 # BusyBox find does not know -empty. 125 # BusyBox find does not know -empty.
125 - 'find ${test_name} -type d -depth -exec rmdir {} + 2>/dev/null' 126 - 'test -d ${test_name} &&
127 find ${test_name} -type d -depth -exec rmdir {} + 2>/dev/null'
126 128
127.build-template: 129.build-template:
128 needs: [] 130 needs: []