* test/infra/gitlab-ci.yml: Merge test-template into job-template.

This commit is contained in:
Ted Zlatanov 2021-01-17 13:56:27 +00:00
parent 1773679af3
commit 1fe135a024
No known key found for this signature in database
GPG key ID: 11F23D0A4E4B9DEE

View file

@ -59,6 +59,30 @@ default:
- docker login -u ${CI_REGISTRY_USER} -p ${CI_REGISTRY_PASSWORD} ${CI_REGISTRY}
.job-template:
rules:
- changes:
- "**/Makefile.in"
- .gitlab-ci.yml
- aclocal.m4
- autogen.sh
- configure.ac
- lib/*.{h,c}
- lisp/**/*.el
- src/*.{h,c}
- test/infra/*
- test/lisp/**/*.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}
@ -103,32 +127,6 @@ default:
- test/lisp/autorevert-tests.el
- test/lisp/filenotify-tests.el
.test-template:
rules:
- changes:
- "**/Makefile.in"
- .gitlab-ci.yml
- aclocal.m4
- autogen.sh
- configure.ac
- lib/*.{h,c}
- lisp/**/*.el
- src/*.{h,c}
- test/infra/*
- test/lisp/**/*.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
# using the variables for each job
script:
- docker pull ${CI_REGISTRY_IMAGE}:${target}-${CI_COMMIT_SHA}
@ -158,7 +156,7 @@ build-image-inotify:
test-fast-inotify:
stage: fast
extends: [.job-template, .test-template]
extends: [.job-template]
variables:
target: emacs-inotify
make_params: "-C test check"
@ -177,14 +175,14 @@ build-image-gnustep:
test-lisp-inotify:
stage: normal
extends: [.job-template, .test-template]
extends: [.job-template]
variables:
target: emacs-inotify
make_params: "-C test check-lisp"
test-lisp-net-inotify:
stage: normal
extends: [.job-template, .test-template]
extends: [.job-template]
variables:
target: emacs-inotify
make_params: "-C test check-lisp-net"
@ -192,7 +190,7 @@ test-lisp-net-inotify:
test-filenotify-gio:
# This tests file monitor libraries gfilemonitor and gio.
stage: platforms
extends: [.job-template, .test-template, .filenotify-gio-template]
extends: [.job-template, .filenotify-gio-template]
variables:
target: emacs-filenotify-gio
make_params: "-k -C test autorevert-tests filenotify-tests"
@ -200,7 +198,7 @@ test-filenotify-gio:
test-gnustep:
# This tests the GNUstep build process
stage: platforms
extends: [.job-template, .test-template, .gnustep-template]
extends: [.job-template, .gnustep-template]
variables:
target: emacs-gnustep
make_params: install
@ -208,7 +206,7 @@ test-gnustep:
test-all-inotify:
# This tests also file monitor libraries inotify and inotifywatch.
stage: slow
extends: [.job-template, .test-template]
extends: [.job-template]
rules:
# note there's no "changes" section, so this always runs on a schedule
- if: '$CI_PIPELINE_SOURCE == "schedule"'