mirror of
https://codeberg.org/redict/redict.git
synced 2025-01-23 08:38:27 -05:00
3ac835777c
stabilize the test introduced in #11248 * remove random aspect of the test by using DEBUG POPULATE instead of redis-benchmark * disable rdbcompression, so that the rdb file is always about 1GB. when fadvise was disabled, i get about 1GB in the page cace when enabled i get less than 200KB so for now, i'll keep the 500kb threshold.
901 lines
39 KiB
YAML
901 lines
39 KiB
YAML
name: Daily
|
|
|
|
on:
|
|
pull_request:
|
|
branches:
|
|
# any PR to a release branch.
|
|
- '[0-9].[0-9]'
|
|
schedule:
|
|
- cron: '0 0 * * *'
|
|
workflow_dispatch:
|
|
inputs:
|
|
skipjobs:
|
|
description: 'jobs to skip (delete the ones you wanna keep, do not leave empty)'
|
|
default: 'valgrind,sanitizer,tls,freebsd,macos,alpine,32bit,iothreads,ubuntu,centos,malloc,specific'
|
|
skiptests:
|
|
description: 'tests to skip (delete the ones you wanna keep, do not leave empty)'
|
|
default: 'redis,modules,sentinel,cluster,unittest'
|
|
test_args:
|
|
description: 'extra test arguments'
|
|
default: ''
|
|
cluster_test_args:
|
|
description: 'extra cluster / sentinel test arguments'
|
|
default: ''
|
|
use_repo:
|
|
description: 'repo owner and name'
|
|
default: 'redis/redis'
|
|
use_git_ref:
|
|
description: 'git branch or sha to use'
|
|
default: 'unstable'
|
|
|
|
|
|
jobs:
|
|
|
|
test-ubuntu-jemalloc:
|
|
runs-on: ubuntu-latest
|
|
if: |
|
|
(github.event_name == 'workflow_dispatch' || (github.event_name != 'workflow_dispatch' && github.repository == 'redis/redis')) &&
|
|
!contains(github.event.inputs.skipjobs, 'ubuntu')
|
|
timeout-minutes: 14400
|
|
steps:
|
|
- name: prep
|
|
if: github.event_name == 'workflow_dispatch'
|
|
run: |
|
|
echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV
|
|
echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV
|
|
echo "skipping: ${{github.event.inputs.skipjobs}} and ${{github.event.inputs.skiptests}}"
|
|
- uses: actions/checkout@v3
|
|
with:
|
|
repository: ${{ env.GITHUB_REPOSITORY }}
|
|
ref: ${{ env.GITHUB_HEAD_REF }}
|
|
- name: make
|
|
run: make REDIS_CFLAGS='-Werror -DREDIS_TEST'
|
|
- name: testprep
|
|
run: sudo apt-get install tcl8.6 tclx
|
|
- name: test
|
|
if: true && !contains(github.event.inputs.skiptests, 'redis')
|
|
run: ./runtest --accurate --verbose --dump-logs ${{github.event.inputs.test_args}}
|
|
- name: module api test
|
|
if: true && !contains(github.event.inputs.skiptests, 'modules')
|
|
run: ./runtest-moduleapi --verbose --dump-logs ${{github.event.inputs.test_args}}
|
|
- name: sentinel tests
|
|
if: true && !contains(github.event.inputs.skiptests, 'sentinel')
|
|
run: ./runtest-sentinel ${{github.event.inputs.cluster_test_args}}
|
|
- name: cluster tests
|
|
if: true && !contains(github.event.inputs.skiptests, 'cluster')
|
|
run: ./runtest-cluster ${{github.event.inputs.cluster_test_args}}
|
|
- name: unittest
|
|
if: true && !contains(github.event.inputs.skiptests, 'unittest')
|
|
run: ./src/redis-server test all --accurate
|
|
|
|
test-ubuntu-libc-malloc:
|
|
runs-on: ubuntu-latest
|
|
if: |
|
|
(github.event_name == 'workflow_dispatch' || (github.event_name != 'workflow_dispatch' && github.repository == 'redis/redis')) &&
|
|
!contains(github.event.inputs.skipjobs, 'malloc')
|
|
timeout-minutes: 14400
|
|
steps:
|
|
- name: prep
|
|
if: github.event_name == 'workflow_dispatch'
|
|
run: |
|
|
echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV
|
|
echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV
|
|
- uses: actions/checkout@v3
|
|
with:
|
|
repository: ${{ env.GITHUB_REPOSITORY }}
|
|
ref: ${{ env.GITHUB_HEAD_REF }}
|
|
- name: make
|
|
run: make MALLOC=libc REDIS_CFLAGS='-Werror'
|
|
- name: testprep
|
|
run: sudo apt-get install tcl8.6 tclx
|
|
- name: test
|
|
if: true && !contains(github.event.inputs.skiptests, 'redis')
|
|
run: ./runtest --accurate --verbose --dump-logs ${{github.event.inputs.test_args}}
|
|
- name: module api test
|
|
if: true && !contains(github.event.inputs.skiptests, 'modules')
|
|
run: ./runtest-moduleapi --verbose --dump-logs ${{github.event.inputs.test_args}}
|
|
- name: sentinel tests
|
|
if: true && !contains(github.event.inputs.skiptests, 'sentinel')
|
|
run: ./runtest-sentinel ${{github.event.inputs.cluster_test_args}}
|
|
- name: cluster tests
|
|
if: true && !contains(github.event.inputs.skiptests, 'cluster')
|
|
run: ./runtest-cluster ${{github.event.inputs.cluster_test_args}}
|
|
|
|
test-ubuntu-no-malloc-usable-size:
|
|
runs-on: ubuntu-latest
|
|
if: |
|
|
(github.event_name == 'workflow_dispatch' || (github.event_name != 'workflow_dispatch' && github.repository == 'redis/redis')) &&
|
|
!contains(github.event.inputs.skipjobs, 'malloc')
|
|
timeout-minutes: 14400
|
|
steps:
|
|
- name: prep
|
|
if: github.event_name == 'workflow_dispatch'
|
|
run: |
|
|
echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV
|
|
echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV
|
|
- uses: actions/checkout@v3
|
|
with:
|
|
repository: ${{ env.GITHUB_REPOSITORY }}
|
|
ref: ${{ env.GITHUB_HEAD_REF }}
|
|
- name: make
|
|
run: make MALLOC=libc CFLAGS=-DNO_MALLOC_USABLE_SIZE REDIS_CFLAGS='-Werror'
|
|
- name: testprep
|
|
run: sudo apt-get install tcl8.6 tclx
|
|
- name: test
|
|
if: true && !contains(github.event.inputs.skiptests, 'redis')
|
|
run: ./runtest --accurate --verbose --dump-logs ${{github.event.inputs.test_args}}
|
|
- name: module api test
|
|
if: true && !contains(github.event.inputs.skiptests, 'modules')
|
|
run: ./runtest-moduleapi --verbose --dump-logs ${{github.event.inputs.test_args}}
|
|
- name: sentinel tests
|
|
if: true && !contains(github.event.inputs.skiptests, 'sentinel')
|
|
run: ./runtest-sentinel ${{github.event.inputs.cluster_test_args}}
|
|
- name: cluster tests
|
|
if: true && !contains(github.event.inputs.skiptests, 'cluster')
|
|
run: ./runtest-cluster ${{github.event.inputs.cluster_test_args}}
|
|
|
|
test-ubuntu-32bit:
|
|
runs-on: ubuntu-latest
|
|
if: |
|
|
(github.event_name == 'workflow_dispatch' || (github.event_name != 'workflow_dispatch' && github.repository == 'redis/redis')) &&
|
|
!contains(github.event.inputs.skipjobs, '32bit')
|
|
timeout-minutes: 14400
|
|
steps:
|
|
- name: prep
|
|
if: github.event_name == 'workflow_dispatch'
|
|
run: |
|
|
echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV
|
|
echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV
|
|
- uses: actions/checkout@v3
|
|
with:
|
|
repository: ${{ env.GITHUB_REPOSITORY }}
|
|
ref: ${{ env.GITHUB_HEAD_REF }}
|
|
- name: make
|
|
run: |
|
|
sudo apt-get update && sudo apt-get install libc6-dev-i386
|
|
make 32bit REDIS_CFLAGS='-Werror -DREDIS_TEST'
|
|
- name: testprep
|
|
run: sudo apt-get install tcl8.6 tclx
|
|
- name: test
|
|
if: true && !contains(github.event.inputs.skiptests, 'redis')
|
|
run: ./runtest --accurate --verbose --dump-logs ${{github.event.inputs.test_args}}
|
|
- name: module api test
|
|
if: true && !contains(github.event.inputs.skiptests, 'modules')
|
|
run: |
|
|
make -C tests/modules 32bit # the script below doesn't have an argument, we must build manually ahead of time
|
|
./runtest-moduleapi --verbose --dump-logs ${{github.event.inputs.test_args}}
|
|
- name: sentinel tests
|
|
if: true && !contains(github.event.inputs.skiptests, 'sentinel')
|
|
run: ./runtest-sentinel ${{github.event.inputs.cluster_test_args}}
|
|
- name: cluster tests
|
|
if: true && !contains(github.event.inputs.skiptests, 'cluster')
|
|
run: ./runtest-cluster ${{github.event.inputs.cluster_test_args}}
|
|
- name: unittest
|
|
if: true && !contains(github.event.inputs.skiptests, 'unittest')
|
|
run: ./src/redis-server test all --accurate
|
|
|
|
test-ubuntu-tls:
|
|
runs-on: ubuntu-latest
|
|
if: |
|
|
(github.event_name == 'workflow_dispatch' || (github.event_name != 'workflow_dispatch' && github.repository == 'redis/redis')) &&
|
|
!contains(github.event.inputs.skipjobs, 'tls')
|
|
timeout-minutes: 14400
|
|
steps:
|
|
- name: prep
|
|
if: github.event_name == 'workflow_dispatch'
|
|
run: |
|
|
echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV
|
|
echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV
|
|
- uses: actions/checkout@v3
|
|
with:
|
|
repository: ${{ env.GITHUB_REPOSITORY }}
|
|
ref: ${{ env.GITHUB_HEAD_REF }}
|
|
- name: make
|
|
run: |
|
|
make BUILD_TLS=yes REDIS_CFLAGS='-Werror'
|
|
- name: testprep
|
|
run: |
|
|
sudo apt-get install tcl8.6 tclx tcl-tls
|
|
./utils/gen-test-certs.sh
|
|
- name: test
|
|
if: true && !contains(github.event.inputs.skiptests, 'redis')
|
|
run: |
|
|
./runtest --accurate --verbose --dump-logs --tls --dump-logs ${{github.event.inputs.test_args}}
|
|
- name: module api test
|
|
if: true && !contains(github.event.inputs.skiptests, 'modules')
|
|
run: |
|
|
./runtest-moduleapi --verbose --dump-logs --tls --dump-logs ${{github.event.inputs.test_args}}
|
|
- name: sentinel tests
|
|
if: true && !contains(github.event.inputs.skiptests, 'sentinel')
|
|
run: |
|
|
./runtest-sentinel --tls ${{github.event.inputs.cluster_test_args}}
|
|
- name: cluster tests
|
|
if: true && !contains(github.event.inputs.skiptests, 'cluster')
|
|
run: |
|
|
./runtest-cluster --tls ${{github.event.inputs.cluster_test_args}}
|
|
|
|
test-ubuntu-tls-no-tls:
|
|
runs-on: ubuntu-latest
|
|
if: |
|
|
(github.event_name == 'workflow_dispatch' || (github.event_name != 'workflow_dispatch' && github.repository == 'redis/redis')) &&
|
|
!contains(github.event.inputs.skipjobs, 'tls')
|
|
timeout-minutes: 14400
|
|
steps:
|
|
- name: prep
|
|
if: github.event_name == 'workflow_dispatch'
|
|
run: |
|
|
echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV
|
|
echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV
|
|
- uses: actions/checkout@v3
|
|
with:
|
|
repository: ${{ env.GITHUB_REPOSITORY }}
|
|
ref: ${{ env.GITHUB_HEAD_REF }}
|
|
- name: make
|
|
run: |
|
|
make BUILD_TLS=yes REDIS_CFLAGS='-Werror'
|
|
- name: testprep
|
|
run: |
|
|
sudo apt-get install tcl8.6 tclx tcl-tls
|
|
./utils/gen-test-certs.sh
|
|
- name: test
|
|
if: true && !contains(github.event.inputs.skiptests, 'redis')
|
|
run: |
|
|
./runtest --accurate --verbose --dump-logs ${{github.event.inputs.test_args}}
|
|
- name: module api test
|
|
if: true && !contains(github.event.inputs.skiptests, 'modules')
|
|
run: |
|
|
./runtest-moduleapi --verbose --dump-logs ${{github.event.inputs.test_args}}
|
|
- name: sentinel tests
|
|
if: true && !contains(github.event.inputs.skiptests, 'sentinel')
|
|
run: |
|
|
./runtest-sentinel ${{github.event.inputs.cluster_test_args}}
|
|
- name: cluster tests
|
|
if: true && !contains(github.event.inputs.skiptests, 'cluster')
|
|
run: |
|
|
./runtest-cluster ${{github.event.inputs.cluster_test_args}}
|
|
|
|
test-ubuntu-io-threads:
|
|
runs-on: ubuntu-latest
|
|
if: |
|
|
(github.event_name == 'workflow_dispatch' || (github.event_name != 'workflow_dispatch' && github.repository == 'redis/redis')) &&
|
|
!contains(github.event.inputs.skipjobs, 'iothreads')
|
|
timeout-minutes: 14400
|
|
steps:
|
|
- name: prep
|
|
if: github.event_name == 'workflow_dispatch'
|
|
run: |
|
|
echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV
|
|
echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV
|
|
- uses: actions/checkout@v3
|
|
with:
|
|
repository: ${{ env.GITHUB_REPOSITORY }}
|
|
ref: ${{ env.GITHUB_HEAD_REF }}
|
|
- name: make
|
|
run: |
|
|
make REDIS_CFLAGS='-Werror'
|
|
- name: testprep
|
|
run: sudo apt-get install tcl8.6 tclx
|
|
- name: test
|
|
if: true && !contains(github.event.inputs.skiptests, 'redis')
|
|
run: ./runtest --config io-threads 4 --config io-threads-do-reads yes --accurate --verbose --tags network --dump-logs ${{github.event.inputs.test_args}}
|
|
- name: cluster tests
|
|
if: true && !contains(github.event.inputs.skiptests, 'cluster')
|
|
run: ./runtest-cluster --config io-threads 4 --config io-threads-do-reads yes ${{github.event.inputs.cluster_test_args}}
|
|
|
|
test-ubuntu-reclaim-cache:
|
|
runs-on: ubuntu-latest
|
|
if: |
|
|
(github.event_name == 'workflow_dispatch' || (github.event_name != 'workflow_dispatch' && github.repository == 'redis/redis')) &&
|
|
!contains(github.event.inputs.skipjobs, 'specific')
|
|
timeout-minutes: 14400
|
|
steps:
|
|
- name: prep
|
|
if: github.event_name == 'workflow_dispatch'
|
|
run: |
|
|
echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV
|
|
echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV
|
|
- uses: actions/checkout@v3
|
|
with:
|
|
repository: ${{ env.GITHUB_REPOSITORY }}
|
|
ref: ${{ env.GITHUB_HEAD_REF }}
|
|
- name: make
|
|
run: |
|
|
make REDIS_CFLAGS='-Werror'
|
|
- name: testprep
|
|
run: |
|
|
sudo apt-get install vmtouch
|
|
mkdir /tmp/master
|
|
mkdir /tmp/slave
|
|
- name: warm up
|
|
run: |
|
|
./src/redis-server --daemonize yes --logfile /dev/null
|
|
./src/redis-benchmark -n 1 > /dev/null
|
|
./src/redis-cli save | grep OK > /dev/null
|
|
vmtouch -v ./dump.rdb > /dev/null
|
|
- name: test
|
|
run: |
|
|
echo "test SAVE doesn't increase cache"
|
|
CACHE0=$(grep -w file /sys/fs/cgroup/memory.stat | awk '{print $2}')
|
|
echo "$CACHE0"
|
|
./src/redis-server --daemonize yes --logfile /dev/null --dir /tmp/master --port 8080 --repl-diskless-sync no --pidfile /tmp/master/redis.pid --rdbcompression no --enable-debug-command yes
|
|
./src/redis-cli -p 8080 debug populate 10000 k 102400
|
|
./src/redis-server --daemonize yes --logfile /dev/null --dir /tmp/slave --port 8081 --repl-diskless-load disabled --rdbcompression no
|
|
./src/redis-cli -p 8080 save > /dev/null
|
|
VMOUT=$(vmtouch -v /tmp/master/dump.rdb)
|
|
echo $VMOUT
|
|
grep -q "0%" <<< $VMOUT
|
|
CACHE=$(grep -w file /sys/fs/cgroup/memory.stat | awk '{print $2}')
|
|
echo "$CACHE"
|
|
if [ "$(( $CACHE-$CACHE0 ))" -gt "500000" ]; then exit 1; fi
|
|
|
|
echo "test replication doesn't increase cache"
|
|
./src/redis-cli -p 8081 REPLICAOF 127.0.0.1 8080 > /dev/null
|
|
while [ $(./src/redis-cli -p 8081 info replication | grep "master_link_status:down") ]; do sleep 1; done;
|
|
sleep 1 # wait for the completion of cache reclaim bio
|
|
VMOUT=$(vmtouch -v /tmp/master/dump.rdb)
|
|
echo $VMOUT
|
|
grep -q "0%" <<< $VMOUT
|
|
VMOUT=$(vmtouch -v /tmp/slave/dump.rdb)
|
|
echo $VMOUT
|
|
grep -q "0%" <<< $VMOUT
|
|
CACHE=$(grep -w file /sys/fs/cgroup/memory.stat | awk '{print $2}')
|
|
echo "$CACHE"
|
|
if [ "$(( $CACHE-$CACHE0 ))" -gt "500000" ]; then exit 1; fi
|
|
|
|
echo "test reboot doesn't increase cache"
|
|
PID=$(cat /tmp/master/redis.pid)
|
|
kill -15 $PID
|
|
while [ -x /proc/${PID} ]; do sleep 1; done
|
|
./src/redis-server --daemonize yes --logfile /dev/null --dir /tmp/master --port 8080
|
|
while [ $(./src/redis-cli -p 8080 info persistence | grep "loading:1") ]; do sleep 1; done;
|
|
sleep 1 # wait for the completion of cache reclaim bio
|
|
VMOUT=$(vmtouch -v /tmp/master/dump.rdb)
|
|
echo $VMOUT
|
|
grep -q "0%" <<< $VMOUT
|
|
CACHE=$(grep -w file /sys/fs/cgroup/memory.stat | awk '{print $2}')
|
|
echo "$CACHE"
|
|
if [ "$(( $CACHE-$CACHE0 ))" -gt "500000" ]; then exit 1; fi
|
|
|
|
test-valgrind-test:
|
|
runs-on: ubuntu-latest
|
|
if: |
|
|
(github.event_name == 'workflow_dispatch' || (github.event_name != 'workflow_dispatch' && github.repository == 'redis/redis')) &&
|
|
!contains(github.event.inputs.skipjobs, 'valgrind') && !contains(github.event.inputs.skiptests, 'redis')
|
|
timeout-minutes: 14400
|
|
steps:
|
|
- name: prep
|
|
if: github.event_name == 'workflow_dispatch'
|
|
run: |
|
|
echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV
|
|
echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV
|
|
- uses: actions/checkout@v3
|
|
with:
|
|
repository: ${{ env.GITHUB_REPOSITORY }}
|
|
ref: ${{ env.GITHUB_HEAD_REF }}
|
|
- name: make
|
|
run: make valgrind REDIS_CFLAGS='-Werror -DREDIS_TEST'
|
|
- name: testprep
|
|
run: |
|
|
sudo apt-get update
|
|
sudo apt-get install tcl8.6 tclx valgrind -y
|
|
- name: test
|
|
if: true && !contains(github.event.inputs.skiptests, 'redis')
|
|
run: ./runtest --valgrind --no-latency --verbose --clients 1 --timeout 2400 --dump-logs ${{github.event.inputs.test_args}}
|
|
|
|
test-valgrind-misc:
|
|
runs-on: ubuntu-latest
|
|
if: |
|
|
(github.event_name == 'workflow_dispatch' || (github.event_name != 'workflow_dispatch' && github.repository == 'redis/redis')) &&
|
|
!contains(github.event.inputs.skipjobs, 'valgrind') && !(contains(github.event.inputs.skiptests, 'modules') && contains(github.event.inputs.skiptests, 'unittest'))
|
|
timeout-minutes: 14400
|
|
steps:
|
|
- name: prep
|
|
if: github.event_name == 'workflow_dispatch'
|
|
run: |
|
|
echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV
|
|
echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV
|
|
- uses: actions/checkout@v3
|
|
with:
|
|
repository: ${{ env.GITHUB_REPOSITORY }}
|
|
ref: ${{ env.GITHUB_HEAD_REF }}
|
|
- name: make
|
|
run: make valgrind REDIS_CFLAGS='-Werror -DREDIS_TEST'
|
|
- name: testprep
|
|
run: |
|
|
sudo apt-get update
|
|
sudo apt-get install tcl8.6 tclx valgrind -y
|
|
- name: module api test
|
|
if: true && !contains(github.event.inputs.skiptests, 'modules')
|
|
run: ./runtest-moduleapi --valgrind --no-latency --verbose --clients 1 --timeout 2400 --dump-logs ${{github.event.inputs.test_args}}
|
|
- name: unittest
|
|
if: true && !contains(github.event.inputs.skiptests, 'unittest')
|
|
run: |
|
|
valgrind --track-origins=yes --suppressions=./src/valgrind.sup --show-reachable=no --show-possibly-lost=no --leak-check=full --log-file=err.txt ./src/redis-server test all --valgrind
|
|
if grep -q 0x err.txt; then cat err.txt; exit 1; fi
|
|
|
|
test-valgrind-no-malloc-usable-size-test:
|
|
runs-on: ubuntu-latest
|
|
if: |
|
|
(github.event_name == 'workflow_dispatch' || (github.event_name != 'workflow_dispatch' && github.repository == 'redis/redis')) &&
|
|
!contains(github.event.inputs.skipjobs, 'valgrind') && !contains(github.event.inputs.skiptests, 'redis')
|
|
timeout-minutes: 14400
|
|
steps:
|
|
- name: prep
|
|
if: github.event_name == 'workflow_dispatch'
|
|
run: |
|
|
echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV
|
|
echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV
|
|
- uses: actions/checkout@v3
|
|
with:
|
|
repository: ${{ env.GITHUB_REPOSITORY }}
|
|
ref: ${{ env.GITHUB_HEAD_REF }}
|
|
- name: make
|
|
run: make valgrind CFLAGS="-DNO_MALLOC_USABLE_SIZE -DREDIS_TEST" REDIS_CFLAGS='-Werror'
|
|
- name: testprep
|
|
run: |
|
|
sudo apt-get update
|
|
sudo apt-get install tcl8.6 tclx valgrind -y
|
|
- name: test
|
|
if: true && !contains(github.event.inputs.skiptests, 'redis')
|
|
run: ./runtest --valgrind --no-latency --verbose --clients 1 --timeout 2400 --dump-logs ${{github.event.inputs.test_args}}
|
|
|
|
test-valgrind-no-malloc-usable-size-misc:
|
|
runs-on: ubuntu-latest
|
|
if: |
|
|
(github.event_name == 'workflow_dispatch' || (github.event_name != 'workflow_dispatch' && github.repository == 'redis/redis')) &&
|
|
!contains(github.event.inputs.skipjobs, 'valgrind') && !(contains(github.event.inputs.skiptests, 'modules') && contains(github.event.inputs.skiptests, 'unittest'))
|
|
timeout-minutes: 14400
|
|
steps:
|
|
- name: prep
|
|
if: github.event_name == 'workflow_dispatch'
|
|
run: |
|
|
echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV
|
|
echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV
|
|
- uses: actions/checkout@v3
|
|
with:
|
|
repository: ${{ env.GITHUB_REPOSITORY }}
|
|
ref: ${{ env.GITHUB_HEAD_REF }}
|
|
- name: make
|
|
run: make valgrind CFLAGS="-DNO_MALLOC_USABLE_SIZE -DREDIS_TEST" REDIS_CFLAGS='-Werror'
|
|
- name: testprep
|
|
run: |
|
|
sudo apt-get update
|
|
sudo apt-get install tcl8.6 tclx valgrind -y
|
|
- name: module api test
|
|
if: true && !contains(github.event.inputs.skiptests, 'modules')
|
|
run: ./runtest-moduleapi --valgrind --no-latency --verbose --clients 1 --timeout 2400 --dump-logs ${{github.event.inputs.test_args}}
|
|
- name: unittest
|
|
if: true && !contains(github.event.inputs.skiptests, 'unittest')
|
|
run: |
|
|
valgrind --track-origins=yes --suppressions=./src/valgrind.sup --show-reachable=no --show-possibly-lost=no --leak-check=full --log-file=err.txt ./src/redis-server test all --valgrind
|
|
if grep -q 0x err.txt; then cat err.txt; exit 1; fi
|
|
|
|
test-sanitizer-address:
|
|
runs-on: ubuntu-latest
|
|
if: |
|
|
(github.event_name == 'workflow_dispatch' || (github.event_name != 'workflow_dispatch' && github.repository == 'redis/redis')) &&
|
|
!contains(github.event.inputs.skipjobs, 'sanitizer')
|
|
timeout-minutes: 14400
|
|
strategy:
|
|
matrix:
|
|
compiler: [ gcc, clang ]
|
|
env:
|
|
CC: ${{ matrix.compiler }}
|
|
steps:
|
|
- name: prep
|
|
if: github.event_name == 'workflow_dispatch'
|
|
run: |
|
|
echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV
|
|
echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV
|
|
- uses: actions/checkout@v3
|
|
with:
|
|
repository: ${{ env.GITHUB_REPOSITORY }}
|
|
ref: ${{ env.GITHUB_HEAD_REF }}
|
|
- name: make
|
|
run: make SANITIZER=address REDIS_CFLAGS='-DREDIS_TEST -Werror'
|
|
- name: testprep
|
|
run: |
|
|
sudo apt-get update
|
|
sudo apt-get install tcl8.6 tclx -y
|
|
- name: test
|
|
if: true && !contains(github.event.inputs.skiptests, 'redis')
|
|
run: ./runtest --accurate --verbose --dump-logs ${{github.event.inputs.test_args}}
|
|
- name: module api test
|
|
if: true && !contains(github.event.inputs.skiptests, 'modules')
|
|
run: ./runtest-moduleapi --verbose --dump-logs ${{github.event.inputs.test_args}}
|
|
- name: sentinel tests
|
|
if: true && !contains(github.event.inputs.skiptests, 'sentinel')
|
|
run: ./runtest-sentinel ${{github.event.inputs.cluster_test_args}}
|
|
- name: cluster tests
|
|
if: true && !contains(github.event.inputs.skiptests, 'cluster')
|
|
run: ./runtest-cluster ${{github.event.inputs.cluster_test_args}}
|
|
- name: unittest
|
|
if: true && !contains(github.event.inputs.skiptests, 'unittest')
|
|
run: ./src/redis-server test all
|
|
|
|
test-sanitizer-undefined:
|
|
runs-on: ubuntu-latest
|
|
if: |
|
|
(github.event_name == 'workflow_dispatch' || (github.event_name != 'workflow_dispatch' && github.repository == 'redis/redis')) &&
|
|
!contains(github.event.inputs.skipjobs, 'sanitizer')
|
|
timeout-minutes: 14400
|
|
strategy:
|
|
matrix:
|
|
compiler: [ gcc, clang ]
|
|
env:
|
|
CC: ${{ matrix.compiler }}
|
|
steps:
|
|
- name: prep
|
|
if: github.event_name == 'workflow_dispatch'
|
|
run: |
|
|
echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV
|
|
echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV
|
|
- uses: actions/checkout@v3
|
|
with:
|
|
repository: ${{ env.GITHUB_REPOSITORY }}
|
|
ref: ${{ env.GITHUB_HEAD_REF }}
|
|
- name: make
|
|
run: make SANITIZER=undefined REDIS_CFLAGS='-DREDIS_TEST -Werror' LUA_DEBUG=yes # we (ab)use this flow to also check Lua C API violations
|
|
- name: testprep
|
|
run: |
|
|
sudo apt-get update
|
|
sudo apt-get install tcl8.6 tclx -y
|
|
- name: test
|
|
if: true && !contains(github.event.inputs.skiptests, 'redis')
|
|
run: ./runtest --accurate --verbose --dump-logs ${{github.event.inputs.test_args}}
|
|
- name: module api test
|
|
if: true && !contains(github.event.inputs.skiptests, 'modules')
|
|
run: ./runtest-moduleapi --verbose --dump-logs ${{github.event.inputs.test_args}}
|
|
- name: sentinel tests
|
|
if: true && !contains(github.event.inputs.skiptests, 'sentinel')
|
|
run: ./runtest-sentinel ${{github.event.inputs.cluster_test_args}}
|
|
- name: cluster tests
|
|
if: true && !contains(github.event.inputs.skiptests, 'cluster')
|
|
run: ./runtest-cluster ${{github.event.inputs.cluster_test_args}}
|
|
- name: unittest
|
|
if: true && !contains(github.event.inputs.skiptests, 'unittest')
|
|
run: ./src/redis-server test all --accurate
|
|
|
|
test-centos7-jemalloc:
|
|
runs-on: ubuntu-latest
|
|
if: |
|
|
(github.event_name == 'workflow_dispatch' || (github.event_name != 'workflow_dispatch' && github.repository == 'redis/redis')) &&
|
|
!contains(github.event.inputs.skipjobs, 'centos')
|
|
container: centos:7
|
|
timeout-minutes: 14400
|
|
steps:
|
|
- name: prep
|
|
if: github.event_name == 'workflow_dispatch'
|
|
run: |
|
|
echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV
|
|
echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV
|
|
- uses: actions/checkout@v3
|
|
with:
|
|
repository: ${{ env.GITHUB_REPOSITORY }}
|
|
ref: ${{ env.GITHUB_HEAD_REF }}
|
|
- name: make
|
|
run: |
|
|
yum -y install gcc make
|
|
make REDIS_CFLAGS='-Werror'
|
|
- name: testprep
|
|
run: yum -y install which tcl tclx
|
|
- name: test
|
|
if: true && !contains(github.event.inputs.skiptests, 'redis')
|
|
run: ./runtest --accurate --verbose --dump-logs ${{github.event.inputs.test_args}}
|
|
- name: module api test
|
|
if: true && !contains(github.event.inputs.skiptests, 'modules')
|
|
run: ./runtest-moduleapi --verbose --dump-logs ${{github.event.inputs.test_args}}
|
|
- name: sentinel tests
|
|
if: true && !contains(github.event.inputs.skiptests, 'sentinel')
|
|
run: ./runtest-sentinel ${{github.event.inputs.cluster_test_args}}
|
|
- name: cluster tests
|
|
if: true && !contains(github.event.inputs.skiptests, 'cluster')
|
|
run: ./runtest-cluster ${{github.event.inputs.cluster_test_args}}
|
|
|
|
test-centos7-tls-module:
|
|
runs-on: ubuntu-latest
|
|
if: |
|
|
(github.event_name == 'workflow_dispatch' || (github.event_name != 'workflow_dispatch' && github.repository == 'redis/redis')) &&
|
|
!contains(github.event.inputs.skipjobs, 'tls')
|
|
container: centos:7
|
|
timeout-minutes: 14400
|
|
steps:
|
|
- name: prep
|
|
if: github.event_name == 'workflow_dispatch'
|
|
run: |
|
|
echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV
|
|
echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV
|
|
- uses: actions/checkout@v3
|
|
with:
|
|
repository: ${{ env.GITHUB_REPOSITORY }}
|
|
ref: ${{ env.GITHUB_HEAD_REF }}
|
|
- name: make
|
|
run: |
|
|
yum -y install centos-release-scl epel-release
|
|
yum -y install devtoolset-7 openssl-devel openssl
|
|
scl enable devtoolset-7 "make BUILD_TLS=module REDIS_CFLAGS='-Werror'"
|
|
- name: testprep
|
|
run: |
|
|
yum -y install tcl tcltls tclx
|
|
./utils/gen-test-certs.sh
|
|
- name: test
|
|
if: true && !contains(github.event.inputs.skiptests, 'redis')
|
|
run: |
|
|
./runtest --accurate --verbose --dump-logs --tls-module --dump-logs ${{github.event.inputs.test_args}}
|
|
- name: module api test
|
|
if: true && !contains(github.event.inputs.skiptests, 'modules')
|
|
run: |
|
|
./runtest-moduleapi --verbose --dump-logs --tls-module --dump-logs ${{github.event.inputs.test_args}}
|
|
- name: sentinel tests
|
|
if: true && !contains(github.event.inputs.skiptests, 'sentinel')
|
|
run: |
|
|
./runtest-sentinel ${{github.event.inputs.cluster_test_args}}
|
|
- name: cluster tests
|
|
if: true && !contains(github.event.inputs.skiptests, 'cluster')
|
|
run: |
|
|
./runtest-cluster --tls-module ${{github.event.inputs.cluster_test_args}}
|
|
|
|
test-centos7-tls-module-no-tls:
|
|
runs-on: ubuntu-latest
|
|
if: |
|
|
(github.event_name == 'workflow_dispatch' || (github.event_name != 'workflow_dispatch' && github.repository == 'redis/redis')) &&
|
|
!contains(github.event.inputs.skipjobs, 'tls')
|
|
container: centos:7
|
|
timeout-minutes: 14400
|
|
steps:
|
|
- name: prep
|
|
if: github.event_name == 'workflow_dispatch'
|
|
run: |
|
|
echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV
|
|
echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV
|
|
- uses: actions/checkout@v3
|
|
with:
|
|
repository: ${{ env.GITHUB_REPOSITORY }}
|
|
ref: ${{ env.GITHUB_HEAD_REF }}
|
|
- name: make
|
|
run: |
|
|
yum -y install centos-release-scl epel-release
|
|
yum -y install devtoolset-7 openssl-devel openssl
|
|
scl enable devtoolset-7 "make BUILD_TLS=module REDIS_CFLAGS='-Werror'"
|
|
- name: testprep
|
|
run: |
|
|
yum -y install tcl tcltls tclx
|
|
./utils/gen-test-certs.sh
|
|
- name: test
|
|
if: true && !contains(github.event.inputs.skiptests, 'redis')
|
|
run: |
|
|
./runtest --accurate --verbose --dump-logs ${{github.event.inputs.test_args}}
|
|
- name: module api test
|
|
if: true && !contains(github.event.inputs.skiptests, 'modules')
|
|
run: |
|
|
./runtest-moduleapi --verbose --dump-logs ${{github.event.inputs.test_args}}
|
|
- name: sentinel tests
|
|
if: true && !contains(github.event.inputs.skiptests, 'sentinel')
|
|
run: |
|
|
./runtest-sentinel ${{github.event.inputs.cluster_test_args}}
|
|
- name: cluster tests
|
|
if: true && !contains(github.event.inputs.skiptests, 'cluster')
|
|
run: |
|
|
./runtest-cluster ${{github.event.inputs.cluster_test_args}}
|
|
|
|
test-macos-latest:
|
|
runs-on: macos-latest
|
|
if: |
|
|
(github.event_name == 'workflow_dispatch' || (github.event_name != 'workflow_dispatch' && github.repository == 'redis/redis')) &&
|
|
!contains(github.event.inputs.skipjobs, 'macos') && !(contains(github.event.inputs.skiptests, 'redis') && contains(github.event.inputs.skiptests, 'modules'))
|
|
timeout-minutes: 14400
|
|
steps:
|
|
- name: prep
|
|
if: github.event_name == 'workflow_dispatch'
|
|
run: |
|
|
echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV
|
|
echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV
|
|
- uses: actions/checkout@v3
|
|
with:
|
|
repository: ${{ env.GITHUB_REPOSITORY }}
|
|
ref: ${{ env.GITHUB_HEAD_REF }}
|
|
- name: make
|
|
run: make REDIS_CFLAGS='-Werror'
|
|
- name: test
|
|
if: true && !contains(github.event.inputs.skiptests, 'redis')
|
|
run: ./runtest --accurate --verbose --no-latency --dump-logs ${{github.event.inputs.test_args}}
|
|
- name: module api test
|
|
if: true && !contains(github.event.inputs.skiptests, 'modules')
|
|
run: ./runtest-moduleapi --verbose --no-latency --dump-logs ${{github.event.inputs.test_args}}
|
|
|
|
test-macos-latest-sentinel:
|
|
runs-on: macos-latest
|
|
if: |
|
|
(github.event_name == 'workflow_dispatch' || (github.event_name != 'workflow_dispatch' && github.repository == 'redis/redis')) &&
|
|
!contains(github.event.inputs.skipjobs, 'macos') && !contains(github.event.inputs.skiptests, 'sentinel')
|
|
timeout-minutes: 14400
|
|
steps:
|
|
- name: prep
|
|
if: github.event_name == 'workflow_dispatch'
|
|
run: |
|
|
echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV
|
|
echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV
|
|
- uses: actions/checkout@v3
|
|
with:
|
|
repository: ${{ env.GITHUB_REPOSITORY }}
|
|
ref: ${{ env.GITHUB_HEAD_REF }}
|
|
- name: make
|
|
run: make REDIS_CFLAGS='-Werror'
|
|
- name: sentinel tests
|
|
if: true && !contains(github.event.inputs.skiptests, 'sentinel')
|
|
run: ./runtest-sentinel ${{github.event.inputs.cluster_test_args}}
|
|
|
|
test-macos-latest-cluster:
|
|
runs-on: macos-latest
|
|
if: |
|
|
(github.event_name == 'workflow_dispatch' || (github.event_name != 'workflow_dispatch' && github.repository == 'redis/redis')) &&
|
|
!contains(github.event.inputs.skipjobs, 'macos') && !contains(github.event.inputs.skiptests, 'cluster')
|
|
timeout-minutes: 14400
|
|
steps:
|
|
- name: prep
|
|
if: github.event_name == 'workflow_dispatch'
|
|
run: |
|
|
echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV
|
|
echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV
|
|
- uses: actions/checkout@v3
|
|
with:
|
|
repository: ${{ env.GITHUB_REPOSITORY }}
|
|
ref: ${{ env.GITHUB_HEAD_REF }}
|
|
- name: make
|
|
run: make REDIS_CFLAGS='-Werror'
|
|
- name: cluster tests
|
|
if: true && !contains(github.event.inputs.skiptests, 'cluster')
|
|
run: ./runtest-cluster ${{github.event.inputs.cluster_test_args}}
|
|
|
|
test-freebsd:
|
|
runs-on: macos-12
|
|
if: |
|
|
(github.event_name == 'workflow_dispatch' || (github.event_name != 'workflow_dispatch' && github.repository == 'redis/redis')) &&
|
|
!contains(github.event.inputs.skipjobs, 'freebsd') && !(contains(github.event.inputs.skiptests, 'redis') && contains(github.event.inputs.skiptests, 'modules'))
|
|
timeout-minutes: 14400
|
|
steps:
|
|
- name: prep
|
|
if: github.event_name == 'workflow_dispatch'
|
|
run: |
|
|
echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV
|
|
echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV
|
|
- uses: actions/checkout@v3
|
|
with:
|
|
repository: ${{ env.GITHUB_REPOSITORY }}
|
|
ref: ${{ env.GITHUB_HEAD_REF }}
|
|
- name: test
|
|
uses: vmactions/freebsd-vm@v0.3.0
|
|
with:
|
|
usesh: true
|
|
sync: rsync
|
|
copyback: false
|
|
prepare: pkg install -y bash gmake lang/tcl86 lang/tclx
|
|
run: >
|
|
gmake || exit 1 ;
|
|
if echo "${{github.event.inputs.skiptests}}" | grep -vq redis ; then ./runtest --verbose --timeout 2400 --no-latency --dump-logs ${{github.event.inputs.test_args}} || exit 1 ; fi ;
|
|
if echo "${{github.event.inputs.skiptests}}" | grep -vq modules ; then MAKE=gmake ./runtest-moduleapi --verbose --timeout 2400 --no-latency --dump-logs ${{github.event.inputs.test_args}} || exit 1 ; fi ;
|
|
|
|
test-freebsd-sentinel:
|
|
runs-on: macos-12
|
|
if: |
|
|
(github.event_name == 'workflow_dispatch' || (github.event_name != 'workflow_dispatch' && github.repository == 'redis/redis')) &&
|
|
!contains(github.event.inputs.skipjobs, 'freebsd') && !contains(github.event.inputs.skiptests, 'sentinel')
|
|
timeout-minutes: 14400
|
|
steps:
|
|
- name: prep
|
|
if: github.event_name == 'workflow_dispatch'
|
|
run: |
|
|
echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV
|
|
echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV
|
|
- uses: actions/checkout@v3
|
|
with:
|
|
repository: ${{ env.GITHUB_REPOSITORY }}
|
|
ref: ${{ env.GITHUB_HEAD_REF }}
|
|
- name: test
|
|
uses: vmactions/freebsd-vm@v0.3.0
|
|
with:
|
|
usesh: true
|
|
sync: rsync
|
|
copyback: false
|
|
prepare: pkg install -y bash gmake lang/tcl86 lang/tclx
|
|
run: >
|
|
gmake || exit 1 ;
|
|
if echo "${{github.event.inputs.skiptests}}" | grep -vq sentinel ; then ./runtest-sentinel ${{github.event.inputs.cluster_test_args}} || exit 1 ; fi ;
|
|
|
|
test-freebsd-cluster:
|
|
runs-on: macos-12
|
|
if: |
|
|
(github.event_name == 'workflow_dispatch' || (github.event_name != 'workflow_dispatch' && github.repository == 'redis/redis')) &&
|
|
!contains(github.event.inputs.skipjobs, 'freebsd') && !contains(github.event.inputs.skiptests, 'cluster')
|
|
timeout-minutes: 14400
|
|
steps:
|
|
- name: prep
|
|
if: github.event_name == 'workflow_dispatch'
|
|
run: |
|
|
echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV
|
|
echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV
|
|
- uses: actions/checkout@v3
|
|
with:
|
|
repository: ${{ env.GITHUB_REPOSITORY }}
|
|
ref: ${{ env.GITHUB_HEAD_REF }}
|
|
- name: test
|
|
uses: vmactions/freebsd-vm@v0.3.0
|
|
with:
|
|
usesh: true
|
|
sync: rsync
|
|
copyback: false
|
|
prepare: pkg install -y bash gmake lang/tcl86 lang/tclx
|
|
run: >
|
|
gmake || exit 1 ;
|
|
if echo "${{github.event.inputs.skiptests}}" | grep -vq cluster ; then ./runtest-cluster ${{github.event.inputs.cluster_test_args}} || exit 1 ; fi ;
|
|
|
|
test-alpine-jemalloc:
|
|
runs-on: ubuntu-latest
|
|
if: |
|
|
(github.event_name == 'workflow_dispatch' || (github.event_name != 'workflow_dispatch' && github.repository == 'redis/redis')) &&
|
|
!contains(github.event.inputs.skipjobs, 'alpine')
|
|
container: alpine:latest
|
|
steps:
|
|
- name: prep
|
|
if: github.event_name == 'workflow_dispatch'
|
|
run: |
|
|
echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV
|
|
echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV
|
|
- uses: actions/checkout@v3
|
|
with:
|
|
repository: ${{ env.GITHUB_REPOSITORY }}
|
|
ref: ${{ env.GITHUB_HEAD_REF }}
|
|
- name: make
|
|
run: |
|
|
apk add build-base
|
|
make REDIS_CFLAGS='-Werror'
|
|
- name: testprep
|
|
run: apk add tcl procps tclx
|
|
- name: test
|
|
if: true && !contains(github.event.inputs.skiptests, 'redis')
|
|
run: ./runtest --accurate --verbose --dump-logs ${{github.event.inputs.test_args}}
|
|
- name: module api test
|
|
if: true && !contains(github.event.inputs.skiptests, 'modules')
|
|
run: ./runtest-moduleapi --verbose --dump-logs ${{github.event.inputs.test_args}}
|
|
- name: sentinel tests
|
|
if: true && !contains(github.event.inputs.skiptests, 'sentinel')
|
|
run: ./runtest-sentinel ${{github.event.inputs.cluster_test_args}}
|
|
- name: cluster tests
|
|
if: true && !contains(github.event.inputs.skiptests, 'cluster')
|
|
run: ./runtest-cluster ${{github.event.inputs.cluster_test_args}}
|
|
|
|
test-alpine-libc-malloc:
|
|
runs-on: ubuntu-latest
|
|
if: |
|
|
(github.event_name == 'workflow_dispatch' || (github.event_name != 'workflow_dispatch' && github.repository == 'redis/redis')) &&
|
|
!contains(github.event.inputs.skipjobs, 'alpine')
|
|
container: alpine:latest
|
|
steps:
|
|
- name: prep
|
|
if: github.event_name == 'workflow_dispatch'
|
|
run: |
|
|
echo "GITHUB_REPOSITORY=${{github.event.inputs.use_repo}}" >> $GITHUB_ENV
|
|
echo "GITHUB_HEAD_REF=${{github.event.inputs.use_git_ref}}" >> $GITHUB_ENV
|
|
- uses: actions/checkout@v3
|
|
with:
|
|
repository: ${{ env.GITHUB_REPOSITORY }}
|
|
ref: ${{ env.GITHUB_HEAD_REF }}
|
|
- name: make
|
|
run: |
|
|
apk add build-base
|
|
make REDIS_CFLAGS='-Werror' USE_JEMALLOC=no CFLAGS=-DUSE_MALLOC_USABLE_SIZE
|
|
- name: testprep
|
|
run: apk add tcl procps tclx
|
|
- name: test
|
|
if: true && !contains(github.event.inputs.skiptests, 'redis')
|
|
run: ./runtest --accurate --verbose --dump-logs ${{github.event.inputs.test_args}}
|
|
- name: module api test
|
|
if: true && !contains(github.event.inputs.skiptests, 'modules')
|
|
run: ./runtest-moduleapi --verbose --dump-logs ${{github.event.inputs.test_args}}
|
|
- name: sentinel tests
|
|
if: true && !contains(github.event.inputs.skiptests, 'sentinel')
|
|
run: ./runtest-sentinel ${{github.event.inputs.cluster_test_args}}
|
|
- name: cluster tests
|
|
if: true && !contains(github.event.inputs.skiptests, 'cluster')
|
|
run: ./runtest-cluster ${{github.event.inputs.cluster_test_args}}
|