CI updates (#1139)
* Build CMake generated makefiles * Simplify and update checkout * Update CI workflow 'C/C++ CI' * Some corrections of spelling and naming. * Remove running on branch dev since not officially available.
This commit is contained in:
parent
8ad4985e9d
commit
a36686f84f
42
.github/workflows/build.yml
vendored
42
.github/workflows/build.yml
vendored
@ -6,11 +6,7 @@ jobs:
|
|||||||
name: Ubuntu
|
name: Ubuntu
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout code
|
- uses: actions/checkout@v3
|
||||||
uses: actions/checkout@v3
|
|
||||||
with:
|
|
||||||
repository: ${{ env.GITHUB_REPOSITORY }}
|
|
||||||
ref: ${{ env.GITHUB_HEAD_REF }}
|
|
||||||
|
|
||||||
- name: Install dependencies
|
- name: Install dependencies
|
||||||
run: |
|
run: |
|
||||||
@ -24,7 +20,7 @@ jobs:
|
|||||||
EXTRA_CMAKE_OPTS: -DENABLE_EXAMPLES:BOOL=ON -DENABLE_SSL:BOOL=ON -DENABLE_SSL_TESTS:BOOL=ON -DENABLE_ASYNC_TESTS:BOOL=ON
|
EXTRA_CMAKE_OPTS: -DENABLE_EXAMPLES:BOOL=ON -DENABLE_SSL:BOOL=ON -DENABLE_SSL_TESTS:BOOL=ON -DENABLE_ASYNC_TESTS:BOOL=ON
|
||||||
CFLAGS: -Werror
|
CFLAGS: -Werror
|
||||||
CXXFLAGS: -Werror
|
CXXFLAGS: -Werror
|
||||||
run: mkdir build-ubuntu && cd build-ubuntu && cmake ..
|
run: mkdir build && cd build && cmake .. && make
|
||||||
|
|
||||||
- name: Build using makefile
|
- name: Build using makefile
|
||||||
run: USE_SSL=1 TEST_ASYNC=1 make
|
run: USE_SSL=1 TEST_ASYNC=1 make
|
||||||
@ -46,11 +42,7 @@ jobs:
|
|||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
container: centos:7
|
container: centos:7
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout code
|
- uses: actions/checkout@v3
|
||||||
uses: actions/checkout@v3
|
|
||||||
with:
|
|
||||||
repository: ${{ env.GITHUB_REPOSITORY }}
|
|
||||||
ref: ${{ env.GITHUB_HEAD_REF }}
|
|
||||||
|
|
||||||
- name: Install dependencies
|
- name: Install dependencies
|
||||||
run: |
|
run: |
|
||||||
@ -63,7 +55,7 @@ jobs:
|
|||||||
EXTRA_CMAKE_OPTS: -DENABLE_EXAMPLES:BOOL=ON -DENABLE_SSL:BOOL=ON -DENABLE_SSL_TESTS:BOOL=ON -DENABLE_ASYNC_TESTS:BOOL=ON
|
EXTRA_CMAKE_OPTS: -DENABLE_EXAMPLES:BOOL=ON -DENABLE_SSL:BOOL=ON -DENABLE_SSL_TESTS:BOOL=ON -DENABLE_ASYNC_TESTS:BOOL=ON
|
||||||
CFLAGS: -Werror
|
CFLAGS: -Werror
|
||||||
CXXFLAGS: -Werror
|
CXXFLAGS: -Werror
|
||||||
run: mkdir build-centos7 && cd build-centos7 && cmake3 ..
|
run: mkdir build && cd build && cmake3 .. && make
|
||||||
|
|
||||||
- name: Build using Makefile
|
- name: Build using Makefile
|
||||||
run: USE_SSL=1 TEST_ASYNC=1 make
|
run: USE_SSL=1 TEST_ASYNC=1 make
|
||||||
@ -86,11 +78,7 @@ jobs:
|
|||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
container: rockylinux:8
|
container: rockylinux:8
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout code
|
- uses: actions/checkout@v3
|
||||||
uses: actions/checkout@v3
|
|
||||||
with:
|
|
||||||
repository: ${{ env.GITHUB_REPOSITORY }}
|
|
||||||
ref: ${{ env.GITHUB_HEAD_REF }}
|
|
||||||
|
|
||||||
- name: Install dependencies
|
- name: Install dependencies
|
||||||
run: |
|
run: |
|
||||||
@ -105,7 +93,7 @@ jobs:
|
|||||||
EXTRA_CMAKE_OPTS: -DENABLE_EXAMPLES:BOOL=ON -DENABLE_SSL:BOOL=ON -DENABLE_SSL_TESTS:BOOL=ON -DENABLE_ASYNC_TESTS:BOOL=ON
|
EXTRA_CMAKE_OPTS: -DENABLE_EXAMPLES:BOOL=ON -DENABLE_SSL:BOOL=ON -DENABLE_SSL_TESTS:BOOL=ON -DENABLE_ASYNC_TESTS:BOOL=ON
|
||||||
CFLAGS: -Werror
|
CFLAGS: -Werror
|
||||||
CXXFLAGS: -Werror
|
CXXFLAGS: -Werror
|
||||||
run: mkdir build-centos8 && cd build-centos8 && cmake ..
|
run: mkdir build && cd build && cmake .. && make
|
||||||
|
|
||||||
- name: Build using Makefile
|
- name: Build using Makefile
|
||||||
run: USE_SSL=1 TEST_ASYNC=1 make
|
run: USE_SSL=1 TEST_ASYNC=1 make
|
||||||
@ -127,11 +115,7 @@ jobs:
|
|||||||
runs-on: macos-12
|
runs-on: macos-12
|
||||||
name: FreeBSD
|
name: FreeBSD
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout code
|
- uses: actions/checkout@v3
|
||||||
uses: actions/checkout@v3
|
|
||||||
with:
|
|
||||||
repository: ${{ env.GITHUB_REPOSITORY }}
|
|
||||||
ref: ${{ env.GITHUB_HEAD_REF }}
|
|
||||||
|
|
||||||
- name: Build in FreeBSD
|
- name: Build in FreeBSD
|
||||||
uses: vmactions/freebsd-vm@v0
|
uses: vmactions/freebsd-vm@v0
|
||||||
@ -145,11 +129,7 @@ jobs:
|
|||||||
name: macOS
|
name: macOS
|
||||||
runs-on: macos-latest
|
runs-on: macos-latest
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout code
|
- uses: actions/checkout@v3
|
||||||
uses: actions/checkout@v3
|
|
||||||
with:
|
|
||||||
repository: ${{ env.GITHUB_REPOSITORY }}
|
|
||||||
ref: ${{ env.GITHUB_HEAD_REF }}
|
|
||||||
|
|
||||||
- name: Install dependencies
|
- name: Install dependencies
|
||||||
run: |
|
run: |
|
||||||
@ -168,11 +148,7 @@ jobs:
|
|||||||
name: Windows
|
name: Windows
|
||||||
runs-on: windows-latest
|
runs-on: windows-latest
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout code
|
- uses: actions/checkout@v3
|
||||||
uses: actions/checkout@v3
|
|
||||||
with:
|
|
||||||
repository: ${{ env.GITHUB_REPOSITORY }}
|
|
||||||
ref: ${{ env.GITHUB_HEAD_REF }}
|
|
||||||
|
|
||||||
- name: Install dependencies
|
- name: Install dependencies
|
||||||
run: |
|
run: |
|
||||||
|
|||||||
40
.github/workflows/test.yml
vendored
40
.github/workflows/test.yml
vendored
@ -2,25 +2,23 @@ name: C/C++ CI
|
|||||||
|
|
||||||
on:
|
on:
|
||||||
push:
|
push:
|
||||||
branches: [ master, dev ]
|
branches: [ master ]
|
||||||
pull_request:
|
pull_request:
|
||||||
branches: [ master ]
|
branches: [ master ]
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
full-build:
|
full-build:
|
||||||
name: Build all, plus default examples, run tests against redis
|
name: Build all, plus default examples, run tests against redis
|
||||||
|
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
env:
|
env:
|
||||||
# the docker image used by the test.sh
|
# the docker image used by the test.sh
|
||||||
REDIS_DOCKER: redis:alpine
|
REDIS_DOCKER: redis:alpine
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
|
- name: Install prerequisites
|
||||||
- name: install prerequisites
|
|
||||||
run: sudo apt-get update && sudo apt-get install -y libev-dev libevent-dev libglib2.0-dev libssl-dev valgrind
|
run: sudo apt-get update && sudo apt-get install -y libev-dev libevent-dev libglib2.0-dev libssl-dev valgrind
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v3
|
||||||
- name: run make
|
- name: Run make
|
||||||
run: make all examples
|
run: make all examples
|
||||||
- name: Run unittests
|
- name: Run unittests
|
||||||
run: make check
|
run: make check
|
||||||
@ -34,10 +32,10 @@ jobs:
|
|||||||
name: Build and test minimal 32 bit linux
|
name: Build and test minimal 32 bit linux
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- name: install prerequisites
|
- name: Install prerequisites
|
||||||
run: sudo apt-get update && sudo apt-get install gcc-multilib
|
run: sudo apt-get update && sudo apt-get install gcc-multilib
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v3
|
||||||
- name: run make
|
- name: Run make
|
||||||
run: make all
|
run: make all
|
||||||
env:
|
env:
|
||||||
PLATFORM_FLAGS: -m32
|
PLATFORM_FLAGS: -m32
|
||||||
@ -60,14 +58,14 @@ jobs:
|
|||||||
emulator: qemu-aarch64
|
emulator: qemu-aarch64
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: install qemu
|
- name: Install qemu
|
||||||
if: matrix.emulator
|
if: matrix.emulator
|
||||||
run: sudo apt-get install -y qemu-user
|
run: sudo apt-get install -y qemu-user
|
||||||
- name: install ploatform toolset
|
- name: Install platform toolset
|
||||||
if: matrix.toolset
|
if: matrix.toolset
|
||||||
run: sudo apt-get install -y gcc-${{matrix.toolset}}
|
run: sudo apt-get install -y gcc-${{matrix.toolset}}
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v3
|
||||||
- name: run make
|
- name: Run make
|
||||||
run: make all
|
run: make all
|
||||||
env:
|
env:
|
||||||
CC: ${{matrix.toolset}}-gcc
|
CC: ${{matrix.toolset}}-gcc
|
||||||
@ -83,20 +81,18 @@ jobs:
|
|||||||
runs-on: windows-latest
|
runs-on: windows-latest
|
||||||
steps:
|
steps:
|
||||||
- uses: microsoft/setup-msbuild@v1.0.2
|
- uses: microsoft/setup-msbuild@v1.0.2
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v3
|
||||||
- name: Cmake
|
- name: Run CMake
|
||||||
run: cmake -Wno-dev CmakeLists.txt
|
run: cmake -Wno-dev CmakeLists.txt
|
||||||
- name: build redis
|
- name: Build hiredis
|
||||||
run: MSBuild hiredis.vcxproj /p:Configuration=Debug
|
run: MSBuild hiredis.vcxproj /p:Configuration=Debug
|
||||||
- name: build redis_static
|
- name: Build hiredis_static
|
||||||
run: MSBuild hiredis_static.vcxproj /p:Configuration=Debug
|
run: MSBuild hiredis_static.vcxproj /p:Configuration=Debug
|
||||||
- name: build redis-test
|
- name: Build hiredis-test
|
||||||
run: MSBuild hiredis-test.vcxproj /p:Configuration=Debug
|
run: MSBuild hiredis-test.vcxproj /p:Configuration=Debug
|
||||||
# use memurai, redis compatible server, since it is easy to install. Can't
|
# use memurai, redis compatible server, since it is easy to install. Can't
|
||||||
# install official redis containers on the windows runner
|
# install official redis containers on the windows runner
|
||||||
- name: install Memurai redis server
|
- name: Install Memurai redis server
|
||||||
run: choco install -y memurai-developer.install
|
run: choco install -y memurai-developer.install
|
||||||
- name: run tests
|
- name: Run tests
|
||||||
run: Debug\hiredis-test.exe
|
run: Debug\hiredis-test.exe
|
||||||
|
|
||||||
|
|
||||||
Loading…
Reference in New Issue
Block a user