mirror of https://github.com/redis/redis.git
				
				
				
			update release scripts for new hosts, and CI to run more tests (#7480)
* update daily CI to include cluster and sentinel tests * update daily CI to run when creating a new release * update release scripts to work on the new redis.io hosts
This commit is contained in:
		
							parent
							
								
									67660881ed
								
							
						
					
					
						commit
						7f19a04f0f
					
				| 
						 | 
					@ -1,14 +1,16 @@
 | 
				
			||||||
name: Daily
 | 
					name: Daily
 | 
				
			||||||
 | 
					
 | 
				
			||||||
on:
 | 
					on:
 | 
				
			||||||
 | 
					  release:
 | 
				
			||||||
 | 
					    types: [created]
 | 
				
			||||||
  schedule:
 | 
					  schedule:
 | 
				
			||||||
    - cron: '0 7 * * *'
 | 
					    - cron: '0 0 * * *'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
jobs:
 | 
					jobs:
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  test-jemalloc:
 | 
					  test-jemalloc:
 | 
				
			||||||
    runs-on: ubuntu-latest
 | 
					    runs-on: ubuntu-latest
 | 
				
			||||||
    timeout-minutes: 1200
 | 
					    timeout-minutes: 14400
 | 
				
			||||||
    steps:
 | 
					    steps:
 | 
				
			||||||
    - uses: actions/checkout@v1
 | 
					    - uses: actions/checkout@v1
 | 
				
			||||||
    - name: make
 | 
					    - name: make
 | 
				
			||||||
| 
						 | 
					@ -19,10 +21,14 @@ jobs:
 | 
				
			||||||
        ./runtest --accurate --verbose
 | 
					        ./runtest --accurate --verbose
 | 
				
			||||||
    - name: module api test
 | 
					    - name: module api test
 | 
				
			||||||
      run: ./runtest-moduleapi --verbose
 | 
					      run: ./runtest-moduleapi --verbose
 | 
				
			||||||
 | 
					    - name: sentinel tests
 | 
				
			||||||
 | 
					      run: ./runtest-sentinel
 | 
				
			||||||
 | 
					    - name: cluster tests
 | 
				
			||||||
 | 
					      run: ./runtest-cluster
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  test-libc-malloc:
 | 
					  test-libc-malloc:
 | 
				
			||||||
    runs-on: ubuntu-latest
 | 
					    runs-on: ubuntu-latest
 | 
				
			||||||
    timeout-minutes: 1200
 | 
					    timeout-minutes: 14400
 | 
				
			||||||
    steps:
 | 
					    steps:
 | 
				
			||||||
    - uses: actions/checkout@v1
 | 
					    - uses: actions/checkout@v1
 | 
				
			||||||
    - name: make
 | 
					    - name: make
 | 
				
			||||||
| 
						 | 
					@ -33,9 +39,14 @@ jobs:
 | 
				
			||||||
        ./runtest --accurate --verbose
 | 
					        ./runtest --accurate --verbose
 | 
				
			||||||
    - name: module api test
 | 
					    - name: module api test
 | 
				
			||||||
      run: ./runtest-moduleapi --verbose
 | 
					      run: ./runtest-moduleapi --verbose
 | 
				
			||||||
 | 
					    - name: sentinel tests
 | 
				
			||||||
 | 
					      run: ./runtest-sentinel
 | 
				
			||||||
 | 
					    - name: cluster tests
 | 
				
			||||||
 | 
					      run: ./runtest-cluster
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  test-32bit:
 | 
					  test-32bit:
 | 
				
			||||||
    runs-on: ubuntu-latest
 | 
					    runs-on: ubuntu-latest
 | 
				
			||||||
 | 
					    timeout-minutes: 14400
 | 
				
			||||||
    steps:
 | 
					    steps:
 | 
				
			||||||
    - uses: actions/checkout@v1
 | 
					    - uses: actions/checkout@v1
 | 
				
			||||||
    - name: make
 | 
					    - name: make
 | 
				
			||||||
| 
						 | 
					@ -50,9 +61,14 @@ jobs:
 | 
				
			||||||
      run: |
 | 
					      run: |
 | 
				
			||||||
        make -C tests/modules 32bit # the script below doesn't have an argument, we must build manually ahead of time
 | 
					        make -C tests/modules 32bit # the script below doesn't have an argument, we must build manually ahead of time
 | 
				
			||||||
        ./runtest-moduleapi --verbose
 | 
					        ./runtest-moduleapi --verbose
 | 
				
			||||||
 | 
					    - name: sentinel tests
 | 
				
			||||||
 | 
					      run: ./runtest-sentinel
 | 
				
			||||||
 | 
					    - name: cluster tests
 | 
				
			||||||
 | 
					      run: ./runtest-cluster
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  test-tls:
 | 
					  test-tls:
 | 
				
			||||||
    runs-on: ubuntu-latest
 | 
					    runs-on: ubuntu-latest
 | 
				
			||||||
 | 
					    timeout-minutes: 14400
 | 
				
			||||||
    steps:
 | 
					    steps:
 | 
				
			||||||
    - uses: actions/checkout@v1
 | 
					    - uses: actions/checkout@v1
 | 
				
			||||||
    - name: make
 | 
					    - name: make
 | 
				
			||||||
| 
						 | 
					@ -65,6 +81,10 @@ jobs:
 | 
				
			||||||
        ./runtest --accurate --verbose --tls
 | 
					        ./runtest --accurate --verbose --tls
 | 
				
			||||||
    - name: module api test
 | 
					    - name: module api test
 | 
				
			||||||
      run: ./runtest-moduleapi --verbose --tls
 | 
					      run: ./runtest-moduleapi --verbose --tls
 | 
				
			||||||
 | 
					    - name: sentinel tests
 | 
				
			||||||
 | 
					      run: ./runtest-sentinel
 | 
				
			||||||
 | 
					    - name: cluster tests
 | 
				
			||||||
 | 
					      run: ./runtest-cluster
 | 
				
			||||||
 | 
					
 | 
				
			||||||
  test-valgrind:
 | 
					  test-valgrind:
 | 
				
			||||||
    runs-on: ubuntu-latest
 | 
					    runs-on: ubuntu-latest
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,14 +1,13 @@
 | 
				
			||||||
#!/bin/sh
 | 
					#!/bin/sh
 | 
				
			||||||
if [ $# != "1" ]
 | 
					if [ $# != "1" ]
 | 
				
			||||||
then
 | 
					then
 | 
				
			||||||
    echo "Usage: ./mkrelease.sh <git-ref>"
 | 
					    echo "Usage: ./utils/releasetools/01_create_tarball.sh <version_tag>"
 | 
				
			||||||
    exit 1
 | 
					    exit 1
 | 
				
			||||||
fi
 | 
					fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
TAG=$1
 | 
					TAG=$1
 | 
				
			||||||
TARNAME="redis-${TAG}.tar"
 | 
					TARNAME="redis-${TAG}.tar"
 | 
				
			||||||
echo "Generating /tmp/${TARNAME}"
 | 
					echo "Generating /tmp/${TARNAME}"
 | 
				
			||||||
cd ~/hack/redis
 | 
					 | 
				
			||||||
git archive $TAG --prefix redis-${TAG}/ > /tmp/$TARNAME || exit 1
 | 
					git archive $TAG --prefix redis-${TAG}/ > /tmp/$TARNAME || exit 1
 | 
				
			||||||
echo "Gizipping the archive"
 | 
					echo "Gizipping the archive"
 | 
				
			||||||
rm -f /tmp/$TARNAME.gz
 | 
					rm -f /tmp/$TARNAME.gz
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,6 +1,22 @@
 | 
				
			||||||
#!/bin/bash
 | 
					#!/bin/bash
 | 
				
			||||||
 | 
					if [ $# != "1" ]
 | 
				
			||||||
 | 
					then
 | 
				
			||||||
 | 
					    echo "Usage: ./utils/releasetools/02_upload_tarball.sh <version_tag>"
 | 
				
			||||||
 | 
					    exit 1
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
echo "Uploading..."
 | 
					echo "Uploading..."
 | 
				
			||||||
scp /tmp/redis-${1}.tar.gz antirez@antirez.com:/var/virtual/download.redis.io/httpdocs/releases/
 | 
					scp /tmp/redis-${1}.tar.gz ubuntu@host.redis.io:/var/www/download/releases/
 | 
				
			||||||
echo "Updating web site... (press any key if it is a stable release, or Ctrl+C)"
 | 
					echo "Updating web site... "
 | 
				
			||||||
 | 
					echo "Please check the github action tests for the release."
 | 
				
			||||||
 | 
					echo "Press any key if it is a stable release, or Ctrl+C to abort"
 | 
				
			||||||
read x
 | 
					read x
 | 
				
			||||||
ssh antirez@antirez.com "cd /var/virtual/download.redis.io/httpdocs; ./update.sh ${1}"
 | 
					ssh ubuntu@host.redis.io "cd /var/www/download;
 | 
				
			||||||
 | 
					                          rm -rf redis-${1}.tar.gz;
 | 
				
			||||||
 | 
					                          wget http://download.redis.io/releases/redis-${1}.tar.gz;
 | 
				
			||||||
 | 
					                          tar xvzf redis-${1}.tar.gz;
 | 
				
			||||||
 | 
					                          rm -rf redis-stable;
 | 
				
			||||||
 | 
					                          mv redis-${1} redis-stable;
 | 
				
			||||||
 | 
					                          tar cvzf redis-stable.tar.gz redis-stable;
 | 
				
			||||||
 | 
					                          rm -rf redis-${1}.tar.gz;
 | 
				
			||||||
 | 
					                          "
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,7 +1,8 @@
 | 
				
			||||||
#!/bin/sh
 | 
					#!/bin/sh
 | 
				
			||||||
 | 
					set -e
 | 
				
			||||||
if [ $# != "1" ]
 | 
					if [ $# != "1" ]
 | 
				
			||||||
then
 | 
					then
 | 
				
			||||||
    echo "Usage: ${0} <git-ref>"
 | 
					    echo "Usage: ./utils/releasetools/03_test_release.sh <version_tag>"
 | 
				
			||||||
    exit 1
 | 
					    exit 1
 | 
				
			||||||
fi
 | 
					fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -9,18 +10,18 @@ TAG=$1
 | 
				
			||||||
TARNAME="redis-${TAG}.tar.gz"
 | 
					TARNAME="redis-${TAG}.tar.gz"
 | 
				
			||||||
DOWNLOADURL="http://download.redis.io/releases/${TARNAME}"
 | 
					DOWNLOADURL="http://download.redis.io/releases/${TARNAME}"
 | 
				
			||||||
 | 
					
 | 
				
			||||||
ssh antirez@metal "export TERM=xterm;
 | 
					echo "Doing sanity test on the actual tarball"
 | 
				
			||||||
                   cd /tmp;
 | 
					
 | 
				
			||||||
                   rm -rf test_release_tmp_dir;
 | 
					cd /tmp
 | 
				
			||||||
                   cd test_release_tmp_dir;
 | 
					rm -rf test_release_tmp_dir
 | 
				
			||||||
                   rm -f $TARNAME;
 | 
					cd test_release_tmp_dir
 | 
				
			||||||
                   rm -rf redis-${TAG};
 | 
					rm -f $TARNAME
 | 
				
			||||||
                   wget $DOWNLOADURL;
 | 
					rm -rf redis-${TAG}
 | 
				
			||||||
                   tar xvzf $TARNAME;
 | 
					wget $DOWNLOADURL
 | 
				
			||||||
                   cd redis-${TAG};
 | 
					tar xvzf $TARNAME
 | 
				
			||||||
                   make;
 | 
					cd redis-${TAG}
 | 
				
			||||||
                   ./runtest;
 | 
					make
 | 
				
			||||||
                   ./runtest-sentinel;
 | 
					./runtest
 | 
				
			||||||
                   if [ -x runtest-cluster ]; then
 | 
					./runtest-sentinel
 | 
				
			||||||
                       ./runtest-cluster;
 | 
					./runtest-cluster
 | 
				
			||||||
                   fi"
 | 
					./runtest-moduleapi
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,8 +1,14 @@
 | 
				
			||||||
#!/bin/bash
 | 
					#!/bin/bash
 | 
				
			||||||
 | 
					if [ $# != "1" ]
 | 
				
			||||||
 | 
					then
 | 
				
			||||||
 | 
					    echo "Usage: ./utils/releasetools/04_release_hash.sh <version_tag>"
 | 
				
			||||||
 | 
					    exit 1
 | 
				
			||||||
 | 
					fi
 | 
				
			||||||
 | 
					
 | 
				
			||||||
SHA=$(curl -s http://download.redis.io/releases/redis-${1}.tar.gz | shasum -a 256 | cut -f 1 -d' ')
 | 
					SHA=$(curl -s http://download.redis.io/releases/redis-${1}.tar.gz | shasum -a 256 | cut -f 1 -d' ')
 | 
				
			||||||
ENTRY="hash redis-${1}.tar.gz sha256 $SHA http://download.redis.io/releases/redis-${1}.tar.gz"
 | 
					ENTRY="hash redis-${1}.tar.gz sha256 $SHA http://download.redis.io/releases/redis-${1}.tar.gz"
 | 
				
			||||||
echo $ENTRY >> ~/hack/redis-hashes/README
 | 
					echo $ENTRY >> ~/hack/redis-hashes/README
 | 
				
			||||||
vi ~/hack/redis-hashes/README
 | 
					vi ../redis-hashes/README
 | 
				
			||||||
echo "Press any key to commit, Ctrl-C to abort)."
 | 
					echo "Press any key to commit, Ctrl-C to abort)."
 | 
				
			||||||
read yes
 | 
					read yes
 | 
				
			||||||
(cd ~/hack/redis-hashes; git commit -a -m "${1} hash."; git push)
 | 
					(cd ../redis-hashes; git commit -a -m "${1} hash."; git push)
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue