]> git.ipfire.org Git - thirdparty/bind9.git/commitdiff
Rename the "precheck" stage in CI to "quick-checks"
authorAndoni Duarte Pintado <andoni@isc.org>
Mon, 15 Dec 2025 12:08:44 +0000 (13:08 +0100)
committerAndoni Duarte Pintado <andoni@isc.org>
Fri, 23 Jan 2026 10:57:40 +0000 (11:57 +0100)
Most jobs in the "precheck" stage spend more time setting up their
environment than running the script (seconds), this allows us to add a
small always on dedicated runner instead of the autoscaled ones.

Hence, the stage is renamed to "quick-checks", and a tag "smalljob" is
added to the anchor so that these jobs are picked by the dedicated
runner.

.gitlab-ci.yml

index ac19283be0d61b90384e89ddee02a583774a4e06..8f9001b714ec000c1a70f5a898c62b6c67a72663 100644 (file)
@@ -102,7 +102,7 @@ default:
       - runner_system_failure
 
 stages:
-  - precheck
+  - quick-checks
   - build
   - unit
   - system
@@ -357,10 +357,12 @@ stages:
     - *rule_source_other_than_mr
     - *rule_mr_system_tests
 
-.precheck: &precheck_job
+.quick-check: &quick_checks_job
   <<: *default_triggering_rules
   <<: *base_image
-  stage: precheck
+  stage: quick-checks
+  tags:
+    - smalljob
 
 .configure: &configure
     - meson setup
@@ -625,10 +627,10 @@ stages:
 
 ### Job Definitions
 
-# Jobs in the precheck stage
+# Jobs in the quick-checks stage
 
 misc:
-  <<: *precheck_job
+  <<: *quick_checks_job
   script:
     - sh util/checklibs.sh > checklibs.out
     - sh util/check-categories.sh
@@ -645,7 +647,7 @@ misc:
     when: on_failure
 
 black:
-  <<: *precheck_job
+  <<: *quick_checks_job
   <<: *python_triggering_rules
   needs: []
   script:
@@ -659,14 +661,14 @@ black:
     when: on_failure
 
 vulture:
-  <<: *precheck_job
+  <<: *quick_checks_job
   <<: *python_triggering_rules
   needs: []
   script:
     - vulture --exclude "*ans.py,conftest.py,re_compile_checker.py,isctest" --ignore-names "after_servers_start,bootstrap,pytestmark,autouse_*" bin/tests/system/
 
 ci-variables:
-  <<: *precheck_job
+  <<: *quick_checks_job
   script:
     # When testing a .0 release, compare it against the previous development
     # release (e.g., 9.19.0 and 9.18.0 should both be compared against 9.17.22).
@@ -678,7 +680,7 @@ ci-variables:
       dotenv: ci_vars.env
 
 ci-orphaned-anchors:
-  <<: *precheck_job
+  <<: *quick_checks_job
   script:
     - *git_clone_bind9-qa
     - bind9-qa/ci-orphaned-anchors/check-orphaned-anchors-ci.py .gitlab-ci.yml
@@ -689,7 +691,7 @@ ci-orphaned-anchors:
         - .gitlab-ci.yml
 
 clang-format:
-  <<: *precheck_job
+  <<: *quick_checks_job
   rules:
     - if: '$CI_MERGE_REQUEST_DIFF_BASE_SHA != null'
       changes:
@@ -712,7 +714,7 @@ clang-format:
     when: on_failure
 
 coccinelle:
-  <<: *precheck_job
+  <<: *quick_checks_job
   rules:
     - if: '$CI_MERGE_REQUEST_DIFF_BASE_SHA != null'
       changes:
@@ -729,7 +731,7 @@ coccinelle:
     - if test "$(git status --porcelain | grep -Ev '\?\?' | wc -l)" -gt "0"; then git status --short; exit 1; fi
 
 meson-format:
-  <<: *precheck_job
+  <<: *quick_checks_job
   rules:
     - if: '$CI_MERGE_REQUEST_DIFF_BASE_SHA != null'
       changes:
@@ -753,7 +755,7 @@ meson-format:
         - "**/meson.build"
 
 doctest:
-  <<: *precheck_job
+  <<: *quick_checks_job
   needs: []
   # This script needs to: 1) fail if the doctest fails, 2) fail if
   # the junit.xml file is broken, 3) produce the junit.xml file even if
@@ -780,7 +782,7 @@ doctest:
         - junit.xml
 
 pylint:
-  <<: *precheck_job
+  <<: *quick_checks_job
   <<: *python_triggering_rules
   needs: []
   variables:
@@ -791,7 +793,7 @@ pylint:
     - pylint --rcfile $CI_PROJECT_DIR/.pylintrc --load-plugins re_compile_checker --disable=wrong-import-position $(git ls-files 'bin/tests/system/*.py' | grep -vE '(ans\.py|vulture_ignore_list\.py)')
 
 reuse:
-  <<: *precheck_job
+  <<: *quick_checks_job
   needs: []
   image:
     name: docker.io/fsfe/reuse:latest
@@ -800,7 +802,7 @@ reuse:
     - reuse lint
 
 shfmt:
-  <<: *precheck_job
+  <<: *quick_checks_job
   <<: *shell_triggering_rules
   needs: []
   script:
@@ -814,7 +816,7 @@ shfmt:
     when: on_failure
 
 danger:
-  <<: *precheck_job
+  <<: *quick_checks_job
   needs: []
   script:
     - pip install git+https://gitlab.isc.org/isc-projects/hazard.git
@@ -823,21 +825,20 @@ danger:
     - if: '$CI_PIPELINE_SOURCE == "merge_request_event"'
 
 checkbashisms:
-  <<: *precheck_job
+  <<: *quick_checks_job
   <<: *shell_triggering_rules
   needs: []
   script:
     - checkbashisms $(find . -path './.git' -prune -o -type f -exec sh -c 'head -n 1 "{}" | grep -qsF "#!/bin/sh"' \; -print)
 
 mypy:
-  <<: *precheck_job
+  <<: *quick_checks_job
   <<: *python_triggering_rules
-  stage: precheck
   script:
     - mypy "bin/tests/system/isctest/"
 
 tarball-create:
-  stage: precheck
+  stage: quick-checks
   <<: *base_image
   <<: *default_triggering_rules
   script:
@@ -2182,9 +2183,7 @@ shotgun:doh-get:
   #   - *shotgun_rule_other
 
 generate-stress-test-configs:
-  <<: *base_image
-  <<: *default_triggering_rules
-  stage: precheck
+  <<: *quick_checks_job
   script:
     - *git_clone_bind9-qa
     - bind9-qa/stress/generate-stress-test-configs.py > stress-test-configs.yml