aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTed Zlatanov2021-01-19 13:35:07 +0000
committerTed Zlatanov2021-01-19 18:00:55 +0000
commit1248c67484d599b36e094f0e641c82482fd269ce (patch)
treefa94c70eca95a5cff4ebfcae3c63cdbfe0cf9c8d
parentbfa140d7cf82ed640d033391cde505ab020de0f2 (diff)
downloademacs-1248c67484d599b36e094f0e641c82482fd269ce.tar.gz
emacs-1248c67484d599b36e094f0e641c82482fd269ce.zip
* test/infra/gitlab-ci.yml: Bootstrap only from web, schedule, or C-related.
-rw-r--r--test/infra/gitlab-ci.yml37
1 files changed, 33 insertions, 4 deletions
diff --git a/test/infra/gitlab-ci.yml b/test/infra/gitlab-ci.yml
index 3214f01eddb..ddabacfe010 100644
--- a/test/infra/gitlab-ci.yml
+++ b/test/infra/gitlab-ci.yml
@@ -49,6 +49,8 @@ variables:
49 # DOCKER_TLS_CERTDIR: "/certs" 49 # DOCKER_TLS_CERTDIR: "/certs"
50 # Put the configuration for each run in a separate directory to avoid conflicts 50 # Put the configuration for each run in a separate directory to avoid conflicts
51 DOCKER_CONFIG: "/.docker-config-${CI_COMMIT_SHA}" 51 DOCKER_CONFIG: "/.docker-config-${CI_COMMIT_SHA}"
52 # We don't use ${CI_COMMIT_SHA} to be able to do one bootstrap across multiple builds
53 BUILD_TAG: ${CI_COMMIT_REF_SLUG}
52 54
53default: 55default:
54 image: docker:19.03.12 56 image: docker:19.03.12
@@ -96,17 +98,42 @@ default:
96 # - "**/*.log" 98 # - "**/*.log"
97 # using the variables for each job 99 # using the variables for each job
98 script: 100 script:
99 - docker pull ${CI_REGISTRY_IMAGE}:${target}-${CI_COMMIT_SHA} 101 - docker pull ${CI_REGISTRY_IMAGE}:${target}-${BUILD_TAG}
100 # TODO: with make -j4 several of the tests were failing, for example shadowfile-tests, but passed without it 102 # TODO: with make -j4 several of the tests were failing, for example shadowfile-tests, but passed without it
101 - docker run -i --rm -e EMACS_EMBA_CI=${EMACS_EMBA_CI} ${CI_REGISTRY_IMAGE}:${target}-${CI_COMMIT_SHA} make ${make_params} 103 - docker run -i --rm -e EMACS_EMBA_CI=${EMACS_EMBA_CI} ${CI_REGISTRY_IMAGE}:${target}-${BUILD_TAG} make ${make_params}
102 104
103.build-template: 105.build-template:
106 rules:
107 - if: '$CI_PIPELINE_SOURCE == "web"'
108 when: always
109 - changes:
110 - "**/Makefile.in"
111 - .gitlab-ci.yml
112 - aclocal.m4
113 - autogen.sh
114 - configure.ac
115 - lib/*.{h,c}
116 - lisp/emacs-lisp/*.el
117 - src/*.{h,c}
118 - test/infra/*
119 - changes:
120 # gfilemonitor, kqueue
121 - src/gfilenotify.c
122 - src/kqueue.c
123 # MS Windows
124 - "**/w32*"
125 # GNUstep
126 - lisp/term/ns-win.el
127 - src/ns*.{h,m}
128 - src/macfont.{h,m}
129 when: never
104 script: 130 script:
105 - docker build --pull --target ${target} -t ${CI_REGISTRY_IMAGE}:${target}-${CI_COMMIT_SHA} -f test/infra/Dockerfile.emba . 131 - docker build --pull --target ${target} -t ${CI_REGISTRY_IMAGE}:${target}-${BUILD_TAG} -f test/infra/Dockerfile.emba .
106 - docker push ${CI_REGISTRY_IMAGE}:${target}-${CI_COMMIT_SHA} 132 - docker push ${CI_REGISTRY_IMAGE}:${target}-${BUILD_TAG}
107 133
108.gnustep-template: 134.gnustep-template:
109 rules: 135 rules:
136 - if: '$CI_PIPELINE_SOURCE == "web"'
110 - if: '$CI_PIPELINE_SOURCE == "schedule"' 137 - if: '$CI_PIPELINE_SOURCE == "schedule"'
111 changes: 138 changes:
112 - "**/Makefile.in" 139 - "**/Makefile.in"
@@ -120,6 +147,7 @@ default:
120 147
121.filenotify-gio-template: 148.filenotify-gio-template:
122 rules: 149 rules:
150 - if: '$CI_PIPELINE_SOURCE == "web"'
123 - if: '$CI_PIPELINE_SOURCE == "schedule"' 151 - if: '$CI_PIPELINE_SOURCE == "schedule"'
124 changes: 152 changes:
125 - "**/Makefile.in" 153 - "**/Makefile.in"
@@ -208,6 +236,7 @@ test-all-inotify:
208 extends: [.job-template] 236 extends: [.job-template]
209 rules: 237 rules:
210 # note there's no "changes" section, so this always runs on a schedule 238 # note there's no "changes" section, so this always runs on a schedule
239 - if: '$CI_PIPELINE_SOURCE == "web"'
211 - if: '$CI_PIPELINE_SOURCE == "schedule"' 240 - if: '$CI_PIPELINE_SOURCE == "schedule"'
212 variables: 241 variables:
213 target: emacs-inotify 242 target: emacs-inotify