
This test fails occasionally: ``` *** [err]: CLIENT KILL maxAGE will kill old clients in tests/unit/introspection.tcl Expected 2 == 1 (context: type eval line 14 cmd {assert {$res == 1}} proc ::test) ``` This test is very likely to do a false positive if the execute time takes longer than the max age, for example, if the execution time between sleep and kill exceeds 1s, rd2 will also be killed due to the max age. The test can adjust the order of execution statements to increase the probability of passing, but this is still will be a timing issue in some slow machines, so decided give it a few more chances. The test was introduced in #12299.
86 lines
2.6 KiB
YAML
86 lines
2.6 KiB
YAML
name: External Server Tests
|
|
|
|
on:
|
|
pull_request:
|
|
push:
|
|
schedule:
|
|
- cron: '0 0 * * *'
|
|
|
|
jobs:
|
|
test-external-standalone:
|
|
runs-on: ubuntu-latest
|
|
if: github.event_name != 'schedule' || github.repository == 'redis/redis'
|
|
timeout-minutes: 14400
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- name: Build
|
|
run: make REDIS_CFLAGS=-Werror
|
|
- name: Start redis-server
|
|
run: |
|
|
./src/redis-server --daemonize yes --save "" --logfile external-redis.log \
|
|
--enable-protected-configs yes --enable-debug-command yes --enable-module-command yes
|
|
- name: Run external test
|
|
run: |
|
|
./runtest \
|
|
--host 127.0.0.1 --port 6379 \
|
|
--verbose \
|
|
--tags -slow
|
|
- name: Archive redis log
|
|
if: ${{ failure() }}
|
|
uses: actions/upload-artifact@v3
|
|
with:
|
|
name: test-external-redis-log
|
|
path: external-redis.log
|
|
|
|
test-external-cluster:
|
|
runs-on: ubuntu-latest
|
|
if: github.event_name != 'schedule' || github.repository == 'redis/redis'
|
|
timeout-minutes: 14400
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- name: Build
|
|
run: make REDIS_CFLAGS=-Werror
|
|
- name: Start redis-server
|
|
run: |
|
|
./src/redis-server --cluster-enabled yes --daemonize yes --save "" --logfile external-redis.log \
|
|
--enable-protected-configs yes --enable-debug-command yes --enable-module-command yes
|
|
- name: Create a single node cluster
|
|
run: ./src/redis-cli cluster addslots $(for slot in {0..16383}; do echo $slot; done); sleep 5
|
|
- name: Run external test
|
|
run: |
|
|
./runtest \
|
|
--host 127.0.0.1 --port 6379 \
|
|
--verbose \
|
|
--cluster-mode \
|
|
--tags -slow
|
|
- name: Archive redis log
|
|
if: ${{ failure() }}
|
|
uses: actions/upload-artifact@v3
|
|
with:
|
|
name: test-external-cluster-log
|
|
path: external-redis.log
|
|
|
|
test-external-nodebug:
|
|
runs-on: ubuntu-latest
|
|
if: github.event_name != 'schedule' || github.repository == 'redis/redis'
|
|
timeout-minutes: 14400
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- name: Build
|
|
run: make REDIS_CFLAGS=-Werror
|
|
- name: Start redis-server
|
|
run: |
|
|
./src/redis-server --daemonize yes --save "" --logfile external-redis.log
|
|
- name: Run external test
|
|
run: |
|
|
./runtest \
|
|
--host 127.0.0.1 --port 6379 \
|
|
--verbose \
|
|
--tags "-slow -needs:debug"
|
|
- name: Archive redis log
|
|
if: ${{ failure() }}
|
|
uses: actions/upload-artifact@v3
|
|
with:
|
|
name: test-external-redis-log
|
|
path: external-redis.log
|