* admin/notes/emba (Emacs jobset): Remove stage slow.

* test/infra/Makefile.in (subdir_template): Add rule.

* test/infra/gitlab-ci.yml (.job-template): Remove changes section.
(.build-template, .gnustep-template, .filenotify-gio-template):
(.native-comp-template): Adapt changes section.
(.test-template): Add needs.  Adapt artifacts paths.
(stages): Remove slow.
(test-all-inotify): Move up.  Change stage to normal.  Remove timeout.
(test-filenotify-gio, test-gnustep, test-native-comp-speed0):
Move needs up.

* test/infra/test-jobs.yml: Regenerate.
This commit is contained in:
Michael Albinus 2021-11-24 13:43:32 +01:00
parent fdafaf5e41
commit 7878c7f596
4 changed files with 98 additions and 70 deletions

View file

@ -35,7 +35,7 @@ The Emacs jobset is defined in the Emacs source tree, file
A jobset on Gitlab is called pipeline. Emacs pipelines run through
the stages 'build-images', 'platform-images' and 'native-comp-images'
(create an Emacs instance by 'make bootstrap' with different
configuration parameters) as well as 'normal', 'slow', 'platforms' and
configuration parameters) as well as 'normal', 'platforms' and
'native-comp' (run respective test jobs based on the produced images).
The jobs for stage 'normal' are contained in the file

View file

@ -72,6 +72,8 @@ define subdir_template
@echo ' stage: normal' >>$(FILE)
@echo ' extends: [.job-template, .test-template]' >>$(FILE)
@echo ' rules:' >>$(FILE)
@echo ' - if: $CI_PIPELINE_SOURCE == "schedule"' >>$(FILE)
@echo ' when: never' >>$(FILE)
@echo ' - changes:' >>$(FILE)
$(changes)
@echo ' - test/$(1)/*.el' >>$(FILE)

View file

@ -71,32 +71,6 @@ default:
.job-template:
variables:
test_name: ${CI_JOB_NAME}-${CI_COMMIT_SHORT_SHA}
rules:
- changes:
- "**Makefile.in"
- .gitlab-ci.yml
- aclocal.m4
- autogen.sh
- configure.ac
- lib/*.{h,c}
- lisp/**.el
- src/*.{h,c}
- test/infra/*
- test/lib-src/*.el
- test/lisp/**.el
- test/misc/*.el
- test/src/*.el
- changes:
# gfilemonitor, kqueue
- src/gfilenotify.c
- src/kqueue.c
# MS Windows
- "**w32*"
# GNUstep
- lisp/term/ns-win.el
- src/ns*.{h,m}
- src/macfont.{h,m}
when: never
# These will be cached across builds.
cache:
key: ${CI_COMMIT_SHA}
@ -127,15 +101,17 @@ default:
- if: '$CI_PIPELINE_SOURCE == "web"'
when: always
- changes:
- "**Makefile.in"
- .gitlab-ci.yml
- "**.in"
- "**.yml"
- GNUmakefile
- aclocal.m4
- autogen.sh
- configure.ac
- lib/*.{h,c}
- lib/malloc/*.{h,c}
- lisp/emacs-lisp/*.el
- src/*.{h,c}
- test/infra/*
- test/infra/Dockerfile.emba
- changes:
# gfilemonitor, kqueue
- src/gfilenotify.c
@ -152,6 +128,7 @@ default:
- docker push ${CI_REGISTRY_IMAGE}:${target}-${BUILD_TAG}
.test-template:
needs: []
# Do not run fast and normal test jobs when scheduled.
rules:
- if: '$CI_JOB_STAGE =~ "fast|normal" && $CI_PIPELINE_SOURCE == "schedule"'
@ -162,9 +139,7 @@ default:
public: true
expire_in: 1 week
paths:
- ${test_name}/**/*.log
- ${test_name}/**/core
- ${test_name}/core
- "**.log"
when: always
.gnustep-template:
@ -172,27 +147,26 @@ default:
- if: '$CI_PIPELINE_SOURCE == "web"'
- if: '$CI_PIPELINE_SOURCE == "schedule"'
changes:
- "**Makefile.in"
- .gitlab-ci.yml
- configure.ac
- "**.in"
- "**.yml"
- src/ns*.{h,m}
- src/macfont.{h,m}
- lisp/term/ns-win.el
- nextstep/**
- test/infra/*
- test/infra/Dockerfile.emba
.filenotify-gio-template:
rules:
- if: '$CI_PIPELINE_SOURCE == "web"'
- if: '$CI_PIPELINE_SOURCE == "schedule"'
changes:
- "**Makefile.in"
- .gitlab-ci.yml
- "**.in"
- "**.yml"
- lisp/autorevert.el
- lisp/filenotify.el
- lisp/net/tramp-sh.el
- src/gfilenotify.c
- test/infra/*
- test/infra/Dockerfile.emba
- test/lisp/autorevert-tests.el
- test/lisp/filenotify-tests.el
@ -201,25 +175,23 @@ default:
- if: '$CI_PIPELINE_SOURCE == "web"'
- if: '$CI_PIPELINE_SOURCE == "schedule"'
changes:
- "**Makefile.in"
- .gitlab-ci.yml
- "**.in"
- "**.yml"
- lisp/emacs-lisp/comp.el
- lisp/emacs-lisp/comp-cstr.el
- src/comp.{h,m}
- test/infra/*
- test/infra/Dockerfile.emba
- test/src/comp-resources/*.el
- test/src/comp-tests.el
timeout: 8 hours
stages:
- build-images
# - fast
- normal
- platform-images
- platforms
- native-comp-images
- native-comp
- slow
build-image-inotify:
stage: build-images
@ -227,15 +199,20 @@ build-image-inotify:
variables:
target: emacs-inotify
# test-fast-inotify:
# stage: fast
# extends: [.job-template, .test-template]
# variables:
# target: emacs-inotify
# make_params: "-C test check"
include: '/test/infra/test-jobs.yml'
test-all-inotify:
# This tests also file monitor libraries inotify and inotifywatch.
stage: normal
extends: [.job-template, .test-template]
rules:
# Note there's no "changes" section, so this always runs on a schedule.
- if: '$CI_PIPELINE_SOURCE == "web"'
- if: '$CI_PIPELINE_SOURCE == "schedule"'
variables:
target: emacs-inotify
make_params: check-expensive
build-image-filenotify-gio:
stage: platform-images
extends: [.job-template, .build-template, .filenotify-gio-template]
@ -245,8 +222,8 @@ build-image-filenotify-gio:
test-filenotify-gio:
# This tests file monitor libraries gfilemonitor and gio.
stage: platforms
needs: [build-image-filenotify-gio]
extends: [.job-template, .test-template, .filenotify-gio-template]
needs: [build-image-filenotify-gio]
variables:
target: emacs-filenotify-gio
make_params: "-k -C test autorevert-tests.log filenotify-tests.log"
@ -260,8 +237,8 @@ build-image-gnustep:
test-gnustep:
# This tests the GNUstep build process.
stage: platforms
needs: [build-image-gnustep]
extends: [.job-template, .gnustep-template]
needs: [build-image-gnustep]
variables:
target: emacs-gnustep
make_params: install
@ -286,27 +263,12 @@ build-native-comp-speed2:
test-native-comp-speed0:
stage: native-comp
needs: [build-native-comp-speed0]
extends: [.job-template, .test-template, .native-comp-template]
needs: [build-native-comp-speed0]
variables:
target: emacs-native-comp-speed0
make_params: "-C test check SELECTOR='(not (tag :unstable))'"
test-all-inotify:
# This tests also file monitor libraries inotify and inotifywatch.
stage: slow
needs: [build-image-inotify]
extends: [.job-template, .test-template]
rules:
# Note there's no "changes" section, so this always runs on a schedule.
- if: '$CI_PIPELINE_SOURCE == "web"'
- if: '$CI_PIPELINE_SOURCE == "schedule"'
variables:
target: emacs-inotify
make_params: check-expensive
# Two hours.
EMACS_TEST_TIMEOUT: 7200
# Local Variables:
# add-log-current-defun-header-regexp: "^\\([-_.[:alnum:]]+\\)[ \t]*:"
# End:

View file

@ -3,6 +3,8 @@ test-lib-src-inotify:
stage: normal
extends: [.job-template, .test-template]
rules:
- if: I_PIPELINE_SOURCE == "schedule"
when: never
- changes:
- lib-src/*.{h,c}
- test/lib-src/*.el
@ -22,6 +24,8 @@ test-lisp-inotify:
stage: normal
extends: [.job-template, .test-template]
rules:
- if: I_PIPELINE_SOURCE == "schedule"
when: never
- changes:
- lisp/*.el
- test/lisp/*.el
@ -41,6 +45,8 @@ test-lisp-calc-inotify:
stage: normal
extends: [.job-template, .test-template]
rules:
- if: I_PIPELINE_SOURCE == "schedule"
when: never
- changes:
- lisp/calc/*.el
- test/lisp/calc/*.el
@ -60,6 +66,8 @@ test-lisp-calendar-inotify:
stage: normal
extends: [.job-template, .test-template]
rules:
- if: I_PIPELINE_SOURCE == "schedule"
when: never
- changes:
- lisp/calendar/*.el
- test/lisp/calendar/*.el
@ -79,6 +87,8 @@ test-lisp-cedet-inotify:
stage: normal
extends: [.job-template, .test-template]
rules:
- if: I_PIPELINE_SOURCE == "schedule"
when: never
- changes:
- lisp/cedet/*.el
- test/lisp/cedet/*.el
@ -98,6 +108,8 @@ test-lisp-cedet-semantic-inotify:
stage: normal
extends: [.job-template, .test-template]
rules:
- if: I_PIPELINE_SOURCE == "schedule"
when: never
- changes:
- lisp/cedet/semantic/*.el
- test/lisp/cedet/semantic/*.el
@ -117,6 +129,8 @@ test-lisp-cedet-semantic-bovine-inotify:
stage: normal
extends: [.job-template, .test-template]
rules:
- if: I_PIPELINE_SOURCE == "schedule"
when: never
- changes:
- lisp/cedet/semantic/bovine/*.el
- test/lisp/cedet/semantic/bovine/*.el
@ -136,6 +150,8 @@ test-lisp-cedet-srecode-inotify:
stage: normal
extends: [.job-template, .test-template]
rules:
- if: I_PIPELINE_SOURCE == "schedule"
when: never
- changes:
- lisp/cedet/srecode/*.el
- test/lisp/cedet/srecode/*.el
@ -155,6 +171,8 @@ test-lisp-emacs-lisp-inotify:
stage: normal
extends: [.job-template, .test-template]
rules:
- if: I_PIPELINE_SOURCE == "schedule"
when: never
- changes:
- lisp/emacs-lisp/*.el
- test/lisp/emacs-lisp/*.el
@ -174,6 +192,8 @@ test-lisp-emacs-lisp-eieio-tests-inotify:
stage: normal
extends: [.job-template, .test-template]
rules:
- if: I_PIPELINE_SOURCE == "schedule"
when: never
- changes:
- lisp/emacs-lisp/eieio*.el
- test/lisp/emacs-lisp/eieio-tests/*.el
@ -193,6 +213,8 @@ test-lisp-emacs-lisp-faceup-tests-inotify:
stage: normal
extends: [.job-template, .test-template]
rules:
- if: I_PIPELINE_SOURCE == "schedule"
when: never
- changes:
- lisp/emacs-lisp/faceup*.el
- test/lisp/emacs-lisp/faceup-tests/*.el
@ -212,6 +234,8 @@ test-lisp-emulation-inotify:
stage: normal
extends: [.job-template, .test-template]
rules:
- if: I_PIPELINE_SOURCE == "schedule"
when: never
- changes:
- lisp/emulation/*.el
- test/lisp/emulation/*.el
@ -231,6 +255,8 @@ test-lisp-erc-inotify:
stage: normal
extends: [.job-template, .test-template]
rules:
- if: I_PIPELINE_SOURCE == "schedule"
when: never
- changes:
- lisp/erc/*.el
- test/lisp/erc/*.el
@ -250,6 +276,8 @@ test-lisp-eshell-inotify:
stage: normal
extends: [.job-template, .test-template]
rules:
- if: I_PIPELINE_SOURCE == "schedule"
when: never
- changes:
- lisp/eshell/*.el
- test/lisp/eshell/*.el
@ -269,6 +297,8 @@ test-lisp-gnus-inotify:
stage: normal
extends: [.job-template, .test-template]
rules:
- if: I_PIPELINE_SOURCE == "schedule"
when: never
- changes:
- lisp/gnus/*.el
- test/lisp/gnus/*.el
@ -288,6 +318,8 @@ test-lisp-image-inotify:
stage: normal
extends: [.job-template, .test-template]
rules:
- if: I_PIPELINE_SOURCE == "schedule"
when: never
- changes:
- lisp/image/*.el
- test/lisp/image/*.el
@ -307,6 +339,8 @@ test-lisp-international-inotify:
stage: normal
extends: [.job-template, .test-template]
rules:
- if: I_PIPELINE_SOURCE == "schedule"
when: never
- changes:
- lisp/international/*.el
- test/lisp/international/*.el
@ -326,6 +360,8 @@ test-lisp-mail-inotify:
stage: normal
extends: [.job-template, .test-template]
rules:
- if: I_PIPELINE_SOURCE == "schedule"
when: never
- changes:
- lisp/mail/*.el
- test/lisp/mail/*.el
@ -345,6 +381,8 @@ test-lisp-mh-e-inotify:
stage: normal
extends: [.job-template, .test-template]
rules:
- if: I_PIPELINE_SOURCE == "schedule"
when: never
- changes:
- lisp/mh-e/*.el
- test/lisp/mh-e/*.el
@ -364,6 +402,8 @@ test-lisp-net-inotify:
stage: normal
extends: [.job-template, .test-template]
rules:
- if: I_PIPELINE_SOURCE == "schedule"
when: never
- changes:
- lisp/net/*.el
- test/lisp/net/*.el
@ -383,6 +423,8 @@ test-lisp-nxml-inotify:
stage: normal
extends: [.job-template, .test-template]
rules:
- if: I_PIPELINE_SOURCE == "schedule"
when: never
- changes:
- lisp/nxml/*.el
- test/lisp/nxml/*.el
@ -402,6 +444,8 @@ test-lisp-obsolete-inotify:
stage: normal
extends: [.job-template, .test-template]
rules:
- if: I_PIPELINE_SOURCE == "schedule"
when: never
- changes:
- lisp/obsolete/*.el
- test/lisp/obsolete/*.el
@ -421,6 +465,8 @@ test-lisp-org-inotify:
stage: normal
extends: [.job-template, .test-template]
rules:
- if: I_PIPELINE_SOURCE == "schedule"
when: never
- changes:
- lisp/org/*.el
- test/lisp/org/*.el
@ -440,6 +486,8 @@ test-lisp-play-inotify:
stage: normal
extends: [.job-template, .test-template]
rules:
- if: I_PIPELINE_SOURCE == "schedule"
when: never
- changes:
- lisp/play/*.el
- test/lisp/play/*.el
@ -459,6 +507,8 @@ test-lisp-progmodes-inotify:
stage: normal
extends: [.job-template, .test-template]
rules:
- if: I_PIPELINE_SOURCE == "schedule"
when: never
- changes:
- lisp/progmodes/*.el
- test/lisp/progmodes/*.el
@ -478,6 +528,8 @@ test-lisp-so-long-tests-inotify:
stage: normal
extends: [.job-template, .test-template]
rules:
- if: I_PIPELINE_SOURCE == "schedule"
when: never
- changes:
- lisp/so-long*.el
- test/lisp/so-long-tests/*.el
@ -497,6 +549,8 @@ test-lisp-term-inotify:
stage: normal
extends: [.job-template, .test-template]
rules:
- if: I_PIPELINE_SOURCE == "schedule"
when: never
- changes:
- lisp/term/*.el
- test/lisp/term/*.el
@ -516,6 +570,8 @@ test-lisp-textmodes-inotify:
stage: normal
extends: [.job-template, .test-template]
rules:
- if: I_PIPELINE_SOURCE == "schedule"
when: never
- changes:
- lisp/textmodes/*.el
- test/lisp/textmodes/*.el
@ -535,6 +591,8 @@ test-lisp-url-inotify:
stage: normal
extends: [.job-template, .test-template]
rules:
- if: I_PIPELINE_SOURCE == "schedule"
when: never
- changes:
- lisp/url/*.el
- test/lisp/url/*.el
@ -554,6 +612,8 @@ test-lisp-vc-inotify:
stage: normal
extends: [.job-template, .test-template]
rules:
- if: I_PIPELINE_SOURCE == "schedule"
when: never
- changes:
- lisp/vc/*.el
- test/lisp/vc/*.el
@ -573,6 +633,8 @@ test-misc-inotify:
stage: normal
extends: [.job-template, .test-template]
rules:
- if: I_PIPELINE_SOURCE == "schedule"
when: never
- changes:
- admin/*.el
- test/misc/*.el
@ -592,6 +654,8 @@ test-src-inotify:
stage: normal
extends: [.job-template, .test-template]
rules:
- if: I_PIPELINE_SOURCE == "schedule"
when: never
- changes:
- src/*.{h,c}
- test/src/*.el