mirror of
https://github.com/masscollaborationlabs/emacs.git
synced 2025-07-02 02:21:15 +00:00
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.
This commit is contained in:
parent
988110fb6d
commit
f1766fd2b3
3 changed files with 23 additions and 14 deletions
|
@ -66,7 +66,11 @@ jobs run scheduled in a pipeline every 8 hours.
|
|||
The log files for every test job are kept on the server for a week.
|
||||
They can be downloaded from the server, visiting the URL
|
||||
<https://emba.gnu.org/emacs/emacs/-/pipelines>, and selecting the job
|
||||
in question.
|
||||
in question. Browse the job artifacts.
|
||||
|
||||
Additionally, the artifacts of the 'test-tree-sitter' job contain the
|
||||
file 'compatibility-report.html', which reports tree-sitter grammars
|
||||
compatibility status.
|
||||
|
||||
Every pipeline generates a JUnit test report for the respective test
|
||||
jobs, which can be inspected on the pipeline web page. This test
|
||||
|
|
|
@ -29,15 +29,14 @@ FROM debian:bookworm as emacs-base
|
|||
RUN apt-get update && \
|
||||
apt-get install -y --no-install-recommends -o=Dpkg::Use-Pty=0 \
|
||||
libc-dev gcc g++ make autoconf automake libncurses-dev gnutls-dev \
|
||||
libxml2-dev libdbus-1-dev libacl1-dev acl git texinfo gdb \
|
||||
libxml2-dev libdbus-1-dev libacl1-dev acl git man-db texinfo gdb \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
FROM emacs-base as emacs-inotify
|
||||
|
||||
# We install clangd for Eglot tests.
|
||||
RUN apt-get update && \
|
||||
apt-get install -y --no-install-recommends -o=Dpkg::Use-Pty=0 \
|
||||
inotify-tools clangd \
|
||||
inotify-tools \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
COPY . /checkout
|
||||
|
@ -60,12 +59,19 @@ RUN ./autogen.sh autoconf
|
|||
RUN ./configure --with-file-notification=gfile
|
||||
RUN make -j `nproc` bootstrap
|
||||
|
||||
FROM emacs-base as emacs-eglot
|
||||
FROM debian:trixie as emacs-eglot
|
||||
|
||||
# Install clangd, tsserver.
|
||||
# This mimics emacs-base.
|
||||
RUN apt-get update && \
|
||||
apt-get install -y --no-install-recommends -o=Dpkg::Use-Pty=0 \
|
||||
clangd node-typescript \
|
||||
libc-dev gcc g++ make autoconf automake libncurses-dev gnutls-dev \
|
||||
libxml2-dev libdbus-1-dev libacl1-dev acl git man-db texinfo gdb \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# Install clangd, tsserver, rust-analyzer.
|
||||
RUN apt-get update && \
|
||||
apt-get install -y --no-install-recommends -o=Dpkg::Use-Pty=0 \
|
||||
clangd node-typescript rust-analyzer cargo \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# eclipse-jdt-ls is planned as Java language server.
|
||||
|
@ -81,9 +87,6 @@ RUN apt-get update && \
|
|||
# && rm -rf /var/lib/apt/lists/*
|
||||
# RUN snap install core
|
||||
|
||||
# # Install rust-analyzer.
|
||||
# RUN snap install rust-analyzer --beta
|
||||
|
||||
# # Install typescript-language-server.
|
||||
# RUN snap install typescript-language-server
|
||||
|
||||
|
|
|
@ -118,11 +118,13 @@ default:
|
|||
docker cp ${test_name}:checkout/compatibility-report.html ${test_name} ||
|
||||
true'
|
||||
- 'test -n "$(docker ps -aq -f name=${test_name})" && docker rm ${test_name}'
|
||||
- 'find ${test_name}
|
||||
! \( -name "*.log" -o -name ${EMACS_TEST_JUNIT_REPORT} -o
|
||||
-name compatibility-report.html \) -type f -delete'
|
||||
- 'test -d ${test_name} &&
|
||||
find ${test_name}
|
||||
! \( -name "*.log" -o -name ${EMACS_TEST_JUNIT_REPORT} -o
|
||||
-name compatibility-report.html \) -type f -delete'
|
||||
# BusyBox find does not know -empty.
|
||||
- 'find ${test_name} -type d -depth -exec rmdir {} + 2>/dev/null'
|
||||
- 'test -d ${test_name} &&
|
||||
find ${test_name} -type d -depth -exec rmdir {} + 2>/dev/null'
|
||||
|
||||
.build-template:
|
||||
needs: []
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue