Update ut-image workflow #266
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Linux x86_64 | |
on: | |
push: | |
branches: [ "main", "release/*" ] | |
pull_request: | |
branches: [ "main", "release/*" ] | |
jobs: | |
gcc850: | |
runs-on: ubuntu-latest | |
container: | |
image: ghcr.io/coldwings/photon-ut-base:latest | |
options: --cpus 4 --privileged | |
steps: | |
- uses: szenius/set-timezone@v2.0 | |
with: | |
timezoneLinux: "Asia/Shanghai" | |
timezoneMacos: "Asia/Shanghai" | |
timezoneWindows: "China Standard Time" | |
- uses: actions/checkout@v4 | |
- name: Build | |
run: | | |
cmake -B build -D CMAKE_BUILD_TYPE=MinSizeRel \ | |
-D PHOTON_ENABLE_ECOSYSTEM=ON \ | |
-D PHOTON_BUILD_TESTING=ON \ | |
-D PHOTON_ENABLE_SASL=ON \ | |
-D PHOTON_ENABLE_FUSE=ON \ | |
-D PHOTON_ENABLE_URING=ON \ | |
-D PHOTON_ENABLE_EXTFS=ON | |
cmake --build build -j $(nproc) -- VERBOSE=1 | |
- name: Test epoll | |
run: | | |
nohup redis-server & | |
cd build && ctest -E test-lockfree --timeout 3600 -V | |
pkill redis-server | |
- name: Test io_uring | |
run: | | |
nohup redis-server & | |
export PHOTON_CI_EV_ENGINE=io_uring | |
cd build && ctest -E test-lockfree --timeout 3600 -V | |
pkill redis-server | |
- name: Test epoll_ng | |
run: | | |
nohup redis-server & | |
export PHOTON_CI_EV_ENGINE=epoll_ng | |
cd build && ctest -E test-lockfree --timeout 3600 -V | |
pkill redis-server | |
gcc921: | |
runs-on: ubuntu-latest | |
container: | |
image: ghcr.io/coldwings/photon-ut-base:latest | |
options: --cpus 4 --privileged | |
steps: | |
- uses: szenius/set-timezone@v2.0 | |
with: | |
timezoneLinux: "Asia/Shanghai" | |
timezoneMacos: "Asia/Shanghai" | |
timezoneWindows: "China Standard Time" | |
- uses: actions/checkout@v4 | |
- name: Build | |
run: | | |
source /opt/rh/gcc-toolset-9/enable | |
cmake -B build -D CMAKE_BUILD_TYPE=MinSizeRel \ | |
-D PHOTON_ENABLE_ECOSYSTEM=ON \ | |
-D PHOTON_BUILD_TESTING=ON \ | |
-D PHOTON_ENABLE_SASL=ON \ | |
-D PHOTON_ENABLE_FUSE=ON \ | |
-D PHOTON_ENABLE_URING=ON \ | |
-D PHOTON_ENABLE_EXTFS=ON | |
cmake --build build -j $(nproc) -- VERBOSE=1 | |
- name: Test epoll | |
run: | | |
nohup redis-server & | |
cd build && ctest -E test-lockfree --timeout 3600 -V | |
pkill redis-server | |
- name: Test io_uring | |
run: | | |
nohup redis-server & | |
export PHOTON_CI_EV_ENGINE=io_uring | |
cd build && ctest -E test-lockfree --timeout 3600 -V | |
pkill redis-server | |
- name: Test epoll_ng | |
run: | | |
nohup redis-server & | |
export PHOTON_CI_EV_ENGINE=epoll_ng | |
cd build && ctest -E test-lockfree --timeout 3600 -V | |
pkill redis-server | |
gcc1031: | |
runs-on: ubuntu-latest | |
container: | |
image: ghcr.io/coldwings/photon-ut-base:latest | |
options: --cpus 4 --privileged | |
steps: | |
- uses: szenius/set-timezone@v2.0 | |
with: | |
timezoneLinux: "Asia/Shanghai" | |
timezoneMacos: "Asia/Shanghai" | |
timezoneWindows: "China Standard Time" | |
- uses: actions/checkout@v4 | |
- name: Build | |
run: | | |
source /opt/rh/gcc-toolset-10/enable | |
cmake -B build -D CMAKE_BUILD_TYPE=MinSizeRel \ | |
-D PHOTON_ENABLE_ECOSYSTEM=ON \ | |
-D PHOTON_BUILD_TESTING=ON \ | |
-D PHOTON_ENABLE_SASL=ON \ | |
-D PHOTON_ENABLE_FUSE=ON \ | |
-D PHOTON_ENABLE_URING=ON \ | |
-D PHOTON_ENABLE_EXTFS=ON | |
cmake --build build -j $(nproc) -- VERBOSE=1 | |
- name: Test epoll | |
run: | | |
nohup redis-server & | |
cd build && ctest -E test-lockfree --timeout 3600 -V | |
pkill redis-server | |
- name: Test io_uring | |
run: | | |
nohup redis-server & | |
export PHOTON_CI_EV_ENGINE=io_uring | |
cd build && ctest -E test-lockfree --timeout 3600 -V | |
pkill redis-server | |
- name: Test epoll_ng | |
run: | | |
nohup redis-server & | |
export PHOTON_CI_EV_ENGINE=epoll_ng | |
cd build && ctest -E test-lockfree --timeout 3600 -V | |
pkill redis-server | |
gcc1121: | |
runs-on: ubuntu-latest | |
container: | |
image: ghcr.io/coldwings/photon-ut-base:latest | |
options: --cpus 4 --privileged | |
steps: | |
- uses: szenius/set-timezone@v2.0 | |
with: | |
timezoneLinux: "Asia/Shanghai" | |
timezoneMacos: "Asia/Shanghai" | |
timezoneWindows: "China Standard Time" | |
- uses: actions/checkout@v4 | |
- name: Build | |
run: | | |
source /opt/rh/gcc-toolset-11/enable | |
cmake -B build -D CMAKE_BUILD_TYPE=MinSizeRel \ | |
-D PHOTON_ENABLE_ECOSYSTEM=ON \ | |
-D PHOTON_BUILD_TESTING=ON \ | |
-D PHOTON_ENABLE_SASL=ON \ | |
-D PHOTON_ENABLE_FUSE=ON \ | |
-D PHOTON_ENABLE_URING=ON \ | |
-D PHOTON_ENABLE_EXTFS=ON | |
cmake --build build -j $(nproc) -- VERBOSE=1 | |
- name: Test epoll | |
run: | | |
nohup redis-server & | |
cd build && ctest -E test-lockfree --timeout 3600 -V | |
pkill redis-server | |
- name: Test io_uring | |
run: | | |
nohup redis-server & | |
export PHOTON_CI_EV_ENGINE=io_uring | |
cd build && ctest -E test-lockfree --timeout 3600 -V | |
pkill redis-server | |
- name: Test epoll_ng | |
run: | | |
nohup redis-server & | |
export PHOTON_CI_EV_ENGINE=epoll_ng | |
cd build && ctest -E test-lockfree --timeout 3600 -V | |
pkill redis-server | |
gcc1211: | |
runs-on: ubuntu-latest | |
container: | |
image: ghcr.io/coldwings/photon-ut-base:latest | |
options: --cpus 4 --privileged | |
steps: | |
- uses: szenius/set-timezone@v2.0 | |
with: | |
timezoneLinux: "Asia/Shanghai" | |
timezoneMacos: "Asia/Shanghai" | |
timezoneWindows: "China Standard Time" | |
- uses: actions/checkout@v4 | |
- name: Build | |
run: | | |
source /opt/rh/gcc-toolset-12/enable | |
cmake -B build -D CMAKE_BUILD_TYPE=MinSizeRel \ | |
-D PHOTON_ENABLE_ECOSYSTEM=ON \ | |
-D PHOTON_BUILD_TESTING=ON \ | |
-D PHOTON_ENABLE_SASL=ON \ | |
-D PHOTON_ENABLE_FUSE=ON \ | |
-D PHOTON_ENABLE_URING=ON \ | |
-D PHOTON_ENABLE_EXTFS=ON | |
cmake --build build -j $(nproc) -- VERBOSE=1 | |
- name: Test epoll | |
run: | | |
nohup redis-server & | |
cd build && ctest -E test-lockfree --timeout 3600 -V | |
pkill redis-server | |
- name: Test io_uring | |
run: | | |
nohup redis-server & | |
export PHOTON_CI_EV_ENGINE=io_uring | |
cd build && ctest -E test-lockfree --timeout 3600 -V | |
pkill redis-server | |
- name: Test epoll_ng | |
run: | | |
nohup redis-server & | |
export PHOTON_CI_EV_ENGINE=epoll_ng | |
cd build && ctest -E test-lockfree --timeout 3600 -V | |
pkill redis-server | |
fstack: | |
runs-on: ubuntu-latest | |
container: | |
image: ghcr.io/beef9999/photon-ut-fstack:latest | |
options: --cpus 4 --privileged | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Build | |
run: | | |
cmake -B build -D CMAKE_BUILD_TYPE=MinSizeRel \ | |
-D PHOTON_BUILD_TESTING=ON \ | |
-D PHOTON_ENABLE_FSTACK_DPDK=ON | |
cmake --build build -j $(nproc) -t fstack-dpdk-demo | |
RocksDB: | |
runs-on: ubuntu-latest | |
container: | |
image: almalinux:8 | |
options: --cpus 4 --privileged | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Build | |
run: | | |
dnf install -q -y git gcc-c++ cmake openssl-devel libcurl-devel libaio-devel zlib-devel epel-release | |
dnf config-manager --set-enabled powertools | |
dnf install -q -y gflags-devel snappy-devel zlib-devel bzip2-devel lz4-devel libzstd-devel | |
git clone -b photon-on-6.1.2 https://github.com/data-accelerator/rocksdb.git | |
cd rocksdb | |
./photon-auto-convert.sh | |
cmake -B build -D WITH_TESTS=on -D INIT_PHOTON_IN_ENV=on -D WITH_LZ4=on -D WITH_SNAPPY=on \ | |
-D CMAKE_BUILD_TYPE=Debug | |
cmake --build build -j `nproc` |