2
0
mirror of https://gitlab.isc.org/isc-projects/bind9 synced 2025-09-01 06:55:30 +00:00

Merge branch '4711-stress-test-finer-runtime-granularity' into 'main'

Add short version of "stress" tests to MR-triggered pipelines

Closes #4711

See merge request isc-projects/bind9!9002
This commit is contained in:
Michal Nowak
2024-05-06 14:05:22 +00:00

View File

@@ -1604,16 +1604,12 @@ shotgun:dot:
when: delayed when: delayed
start_in: 5 minutes start_in: 5 minutes
# Parallel build in the "make" step is avoided since multiple jobs can be .stress-test: &stress_test
# executed concurrently on the same runner. This may present problems when one
# job runs a performance-sensitive task of replying to queries while another
# takes all cores to build BIND.
.stress: &stress_job
stage: performance stage: performance
script: script:
- *configure - *configure
- *setup_interfaces - *setup_interfaces
- make -k all V=1 - make -j${BUILD_PARALLEL_JOBS:-1} -k all V=1
- make DESTDIR="${INSTALL_PATH}" install - make DESTDIR="${INSTALL_PATH}" install
- git clone --depth 1 https://gitlab.isc.org/isc-projects/bind9-qa.git - git clone --depth 1 https://gitlab.isc.org/isc-projects/bind9-qa.git
- cd bind9-qa/stress - cd bind9-qa/stress
@@ -1621,6 +1617,119 @@ shotgun:dot:
needs: needs:
- job: autoreconf - job: autoreconf
artifacts: true artifacts: true
.stress-test-short: &stress_test_short_job
<<: *stress_test
only:
- merge_requests
stress:short:authoritative:fedora:39:amd64:
<<: *fedora_39_amd64_image
<<: *linux_amd64
<<: *stress_test_short_job
variables:
CC: gcc
CFLAGS: "${CFLAGS_COMMON} -Og"
FLAME: /usr/bin/flame
MODE: authoritative
RATE: 10000
RUN_TIME: 15
stress:short:recursive:fedora:39:amd64:
<<: *fedora_39_amd64_image
<<: *linux_amd64
<<: *stress_test_short_job
variables:
CC: gcc
CFLAGS: "${CFLAGS_COMMON} -Og"
FLAME: /usr/bin/flame
MODE: recursive
RATE: 10000
RUN_TIME: 15
stress:short:rpz:fedora:39:amd64:
<<: *fedora_39_amd64_image
<<: *linux_amd64
<<: *stress_test_short_job
variables:
CC: gcc
CFLAGS: "${CFLAGS_COMMON} -Og"
FLAME: /usr/bin/flame
MODE: rpz
RATE: 1500
RUN_TIME: 15
stress:short:authoritative:fedora:39:arm64:
<<: *fedora_39_arm64_image
<<: *linux_arm64
<<: *stress_test_short_job
variables:
CC: gcc
CFLAGS: "${CFLAGS_COMMON} -Og"
FLAME: /usr/bin/flame
MODE: authoritative
RATE: 10000
RUN_TIME: 15
stress:short:recursive:fedora:39:arm64:
<<: *fedora_39_arm64_image
<<: *linux_arm64
<<: *stress_test_short_job
variables:
CC: gcc
CFLAGS: "${CFLAGS_COMMON} -Og"
FLAME: /usr/bin/flame
MODE: recursive
RATE: 10000
RUN_TIME: 15
stress:short:rpz:fedora:39:arm64:
<<: *fedora_39_arm64_image
<<: *linux_arm64
<<: *stress_test_short_job
variables:
CC: gcc
CFLAGS: "${CFLAGS_COMMON} -Og"
FLAME: /usr/bin/flame
MODE: rpz
RATE: 1500
RUN_TIME: 15
stress:short:authoritative:freebsd13:amd64:
<<: *freebsd_stress_amd64
<<: *stress_test_short_job
variables:
CC: clang
CFLAGS: "${CFLAGS_COMMON} -Og"
FLAME: /usr/local/bin/flame
MODE: authoritative
RATE: 10000
RUN_TIME: 15
stress:short:recursive:freebsd13:amd64:
<<: *freebsd_stress_amd64
<<: *stress_test_short_job
variables:
CC: clang
CFLAGS: "${CFLAGS_COMMON} -Og"
FLAME: /usr/local/bin/flame
MODE: recursive
RATE: 10000
RUN_TIME: 15
stress:short:rpz:freebsd13:amd64:
<<: *freebsd_stress_amd64
<<: *stress_test_short_job
variables:
CC: clang
CFLAGS: "${CFLAGS_COMMON} -Og"
FLAME: /usr/local/bin/flame
MODE: rpz
RATE: 1500
RUN_TIME: 15
.stress-test-long: &stress_test_long_job
<<: *stress_test
artifacts: artifacts:
untracked: true untracked: true
expire_in: "1 week" expire_in: "1 week"
@@ -1630,14 +1739,14 @@ shotgun:dot:
stress:authoritative:fedora:39:amd64: stress:authoritative:fedora:39:amd64:
<<: *fedora_39_amd64_image <<: *fedora_39_amd64_image
<<: *linux_amd64 <<: *linux_amd64
<<: *stress_job <<: *stress_test_long_job
variables: variables:
CC: gcc CC: gcc
CFLAGS: "${CFLAGS_COMMON} -Og" CFLAGS: "${CFLAGS_COMMON} -Og"
FLAME: /usr/bin/flame FLAME: /usr/bin/flame
MODE: authoritative MODE: authoritative
RATE: 10000 RATE: 10000
RUN_TIME: 1 RUN_TIME: 60
only: only:
variables: variables:
- $CI_COMMIT_TAG || ($BIND_STRESS_TEST_OS =~ /linux/i && $BIND_STRESS_TEST_MODE =~ /authoritative/i && $BIND_STRESS_TEST_ARCH =~ /amd64/i) - $CI_COMMIT_TAG || ($BIND_STRESS_TEST_OS =~ /linux/i && $BIND_STRESS_TEST_MODE =~ /authoritative/i && $BIND_STRESS_TEST_ARCH =~ /amd64/i)
@@ -1645,14 +1754,14 @@ stress:authoritative:fedora:39:amd64:
stress:recursive:fedora:39:amd64: stress:recursive:fedora:39:amd64:
<<: *fedora_39_amd64_image <<: *fedora_39_amd64_image
<<: *linux_amd64 <<: *linux_amd64
<<: *stress_job <<: *stress_test_long_job
variables: variables:
CC: gcc CC: gcc
CFLAGS: "${CFLAGS_COMMON} -Og" CFLAGS: "${CFLAGS_COMMON} -Og"
FLAME: /usr/bin/flame FLAME: /usr/bin/flame
MODE: recursive MODE: recursive
RATE: 10000 RATE: 10000
RUN_TIME: 1 RUN_TIME: 60
only: only:
variables: variables:
- $CI_COMMIT_TAG || ($BIND_STRESS_TEST_OS =~ /linux/i && $BIND_STRESS_TEST_MODE =~ /recursive/i && $BIND_STRESS_TEST_ARCH =~ /amd64/i) - $CI_COMMIT_TAG || ($BIND_STRESS_TEST_OS =~ /linux/i && $BIND_STRESS_TEST_MODE =~ /recursive/i && $BIND_STRESS_TEST_ARCH =~ /amd64/i)
@@ -1660,14 +1769,14 @@ stress:recursive:fedora:39:amd64:
stress:rpz:fedora:39:amd64: stress:rpz:fedora:39:amd64:
<<: *fedora_39_amd64_image <<: *fedora_39_amd64_image
<<: *linux_amd64 <<: *linux_amd64
<<: *stress_job <<: *stress_test_long_job
variables: variables:
CC: gcc CC: gcc
CFLAGS: "${CFLAGS_COMMON} -Og" CFLAGS: "${CFLAGS_COMMON} -Og"
FLAME: /usr/bin/flame FLAME: /usr/bin/flame
MODE: rpz MODE: rpz
RATE: 1500 RATE: 1500
RUN_TIME: 1 RUN_TIME: 60
only: only:
variables: variables:
- $CI_COMMIT_TAG || ($BIND_STRESS_TEST_OS =~ /linux/i && $BIND_STRESS_TEST_MODE =~ /rpz/i && $BIND_STRESS_TEST_ARCH =~ /amd64/i) - $CI_COMMIT_TAG || ($BIND_STRESS_TEST_OS =~ /linux/i && $BIND_STRESS_TEST_MODE =~ /rpz/i && $BIND_STRESS_TEST_ARCH =~ /amd64/i)
@@ -1675,14 +1784,14 @@ stress:rpz:fedora:39:amd64:
stress:authoritative:fedora:39:arm64: stress:authoritative:fedora:39:arm64:
<<: *fedora_39_arm64_image <<: *fedora_39_arm64_image
<<: *linux_arm64 <<: *linux_arm64
<<: *stress_job <<: *stress_test_long_job
variables: variables:
CC: gcc CC: gcc
CFLAGS: "${CFLAGS_COMMON} -Og" CFLAGS: "${CFLAGS_COMMON} -Og"
FLAME: /usr/bin/flame FLAME: /usr/bin/flame
MODE: authoritative MODE: authoritative
RATE: 10000 RATE: 10000
RUN_TIME: 1 RUN_TIME: 60
only: only:
variables: variables:
- $CI_COMMIT_TAG || ($BIND_STRESS_TEST_OS =~ /linux/i && $BIND_STRESS_TEST_MODE =~ /authoritative/i && $BIND_STRESS_TEST_ARCH =~ /arm64/i) - $CI_COMMIT_TAG || ($BIND_STRESS_TEST_OS =~ /linux/i && $BIND_STRESS_TEST_MODE =~ /authoritative/i && $BIND_STRESS_TEST_ARCH =~ /arm64/i)
@@ -1690,14 +1799,14 @@ stress:authoritative:fedora:39:arm64:
stress:recursive:fedora:39:arm64: stress:recursive:fedora:39:arm64:
<<: *fedora_39_arm64_image <<: *fedora_39_arm64_image
<<: *linux_arm64 <<: *linux_arm64
<<: *stress_job <<: *stress_test_long_job
variables: variables:
CC: gcc CC: gcc
CFLAGS: "${CFLAGS_COMMON} -Og" CFLAGS: "${CFLAGS_COMMON} -Og"
FLAME: /usr/bin/flame FLAME: /usr/bin/flame
MODE: recursive MODE: recursive
RATE: 10000 RATE: 10000
RUN_TIME: 1 RUN_TIME: 60
only: only:
variables: variables:
- $CI_COMMIT_TAG || ($BIND_STRESS_TEST_OS =~ /linux/i && $BIND_STRESS_TEST_MODE =~ /recursive/i && $BIND_STRESS_TEST_ARCH =~ /arm64/i) - $CI_COMMIT_TAG || ($BIND_STRESS_TEST_OS =~ /linux/i && $BIND_STRESS_TEST_MODE =~ /recursive/i && $BIND_STRESS_TEST_ARCH =~ /arm64/i)
@@ -1705,56 +1814,56 @@ stress:recursive:fedora:39:arm64:
stress:rpz:fedora:39:arm64: stress:rpz:fedora:39:arm64:
<<: *fedora_39_arm64_image <<: *fedora_39_arm64_image
<<: *linux_arm64 <<: *linux_arm64
<<: *stress_job <<: *stress_test_long_job
variables: variables:
CC: gcc CC: gcc
CFLAGS: "${CFLAGS_COMMON} -Og" CFLAGS: "${CFLAGS_COMMON} -Og"
FLAME: /usr/bin/flame FLAME: /usr/bin/flame
MODE: rpz MODE: rpz
RATE: 1500 RATE: 1500
RUN_TIME: 1 RUN_TIME: 60
only: only:
variables: variables:
- $CI_COMMIT_TAG || ($BIND_STRESS_TEST_OS =~ /linux/i && $BIND_STRESS_TEST_MODE =~ /rpz/i && $BIND_STRESS_TEST_ARCH =~ /arm64/i) - $CI_COMMIT_TAG || ($BIND_STRESS_TEST_OS =~ /linux/i && $BIND_STRESS_TEST_MODE =~ /rpz/i && $BIND_STRESS_TEST_ARCH =~ /arm64/i)
stress:authoritative:freebsd13:amd64: stress:authoritative:freebsd13:amd64:
<<: *freebsd_stress_amd64 <<: *freebsd_stress_amd64
<<: *stress_job <<: *stress_test_long_job
variables: variables:
CC: clang CC: clang
CFLAGS: "${CFLAGS_COMMON} -Og" CFLAGS: "${CFLAGS_COMMON} -Og"
FLAME: /usr/local/bin/flame FLAME: /usr/local/bin/flame
MODE: authoritative MODE: authoritative
RATE: 10000 RATE: 10000
RUN_TIME: 1 RUN_TIME: 60
only: only:
variables: variables:
- $CI_COMMIT_TAG || ($BIND_STRESS_TEST_OS =~ /freebsd/i && $BIND_STRESS_TEST_MODE =~ /authoritative/i && $BIND_STRESS_TEST_ARCH =~ /amd64/i) - $CI_COMMIT_TAG || ($BIND_STRESS_TEST_OS =~ /freebsd/i && $BIND_STRESS_TEST_MODE =~ /authoritative/i && $BIND_STRESS_TEST_ARCH =~ /amd64/i)
stress:recursive:freebsd13:amd64: stress:recursive:freebsd13:amd64:
<<: *freebsd_stress_amd64 <<: *freebsd_stress_amd64
<<: *stress_job <<: *stress_test_long_job
variables: variables:
CC: clang CC: clang
CFLAGS: "${CFLAGS_COMMON} -Og" CFLAGS: "${CFLAGS_COMMON} -Og"
FLAME: /usr/local/bin/flame FLAME: /usr/local/bin/flame
MODE: recursive MODE: recursive
RATE: 10000 RATE: 10000
RUN_TIME: 1 RUN_TIME: 60
only: only:
variables: variables:
- $CI_COMMIT_TAG || ($BIND_STRESS_TEST_OS =~ /freebsd/i && $BIND_STRESS_TEST_MODE =~ /recursive/i && $BIND_STRESS_TEST_ARCH =~ /amd64/i) - $CI_COMMIT_TAG || ($BIND_STRESS_TEST_OS =~ /freebsd/i && $BIND_STRESS_TEST_MODE =~ /recursive/i && $BIND_STRESS_TEST_ARCH =~ /amd64/i)
stress:rpz:freebsd13:amd64: stress:rpz:freebsd13:amd64:
<<: *freebsd_stress_amd64 <<: *freebsd_stress_amd64
<<: *stress_job <<: *stress_test_long_job
variables: variables:
CC: clang CC: clang
CFLAGS: "${CFLAGS_COMMON} -Og" CFLAGS: "${CFLAGS_COMMON} -Og"
FLAME: /usr/local/bin/flame FLAME: /usr/local/bin/flame
MODE: rpz MODE: rpz
RATE: 1500 RATE: 1500
RUN_TIME: 1 RUN_TIME: 60
only: only:
variables: variables:
- $CI_COMMIT_TAG || ($BIND_STRESS_TEST_OS =~ /freebsd/i && $BIND_STRESS_TEST_MODE =~ /rpz/i && $BIND_STRESS_TEST_ARCH =~ /amd64/i) - $CI_COMMIT_TAG || ($BIND_STRESS_TEST_OS =~ /freebsd/i && $BIND_STRESS_TEST_MODE =~ /rpz/i && $BIND_STRESS_TEST_ARCH =~ /amd64/i)