Skip to content

Support: stream, v12, -fvisibility, CI 5.0 6.0 6.2, make debug. Fix json enc #139

Support: stream, v12, -fvisibility, CI 5.0 6.0 6.2, make debug. Fix json enc

Support: stream, v12, -fvisibility, CI 5.0 6.0 6.2, make debug. Fix json enc #139

Workflow file for this run

name: CI
on:
push:
pull_request:
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
with:
submodules: 'recursive'
- name: Install Prerequisites
run: |
sudo apt-get update
sudo apt-get install -y cmake libssl-dev valgrind git
git clone https://git.cryptomilk.org/projects/cmocka.git
cd cmocka
mkdir build
cd build
cmake .. -DCMAKE_INSTALL_PREFIX=/usr/local
make
ctest
sudo make install
# Install redis for tests against external Redis server
# Build Redis to run it against librdb tests
git clone https://github.com/redis/redis.git ~/redis
make -j 4 -C ~/redis
make -C ~/redis/tests/modules
shell: bash
- name: Build and run project
run: |
export LIBRDB_REDIS_FOLDER=~/redis/src
export LD_LIBRARY_PATH=/usr/local/lib/
make all example valgrind
working-directory: ${{github.workspace}}
build-clang:
runs-on: ubuntu-latest
env:
CC: clang
steps:
- name: Checkout
uses: actions/checkout@v3
with:
submodules: 'recursive'
- name: Install Prerequisites
run: |
sudo apt-get update
sudo apt-get install -y cmake libssl-dev git
git clone https://git.cryptomilk.org/projects/cmocka.git
cd cmocka
mkdir build
cd build
cmake .. -DCMAKE_INSTALL_PREFIX=/usr/local
make
sudo make install
# Install redis for tests against external Redis server
# Build Redis to run it against librdb tests
git clone https://github.com/redis/redis.git ~/redis
make -j 4 -C ~/redis
make -C ~/redis/tests/modules
shell: bash
- name: Build and run project
run: |
# clang is more strict to shared-obj versioning. Satisfy its needs.
(cd ./deps/hiredis ; ln -s ./libhiredis.so ./libhiredis.so.1.2.1-dev)
export LD_LIBRARY_PATH=/usr/local/lib/
export LIBRDB_REDIS_FOLDER=~/redis/src
# Verify that rule "noopt" being build and tested
make noopt
make test
# Verify that rule "example and "all" being build and tested
make distclean
make example
make test
working-directory: ${{github.workspace}}