forked from valkey-io/valkey
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
78a9a24
commit 3f7295e
Showing
12 changed files
with
1,369 additions
and
130 deletions.
There are no files selected for viewing
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
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
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
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
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,90 @@ | ||
name: CI | ||
|
||
on: [push, pull_request] | ||
|
||
jobs: | ||
|
||
test-ubuntu-latest: | ||
runs-on: ubuntu-latest | ||
steps: | ||
- uses: actions/checkout@v4 | ||
- name: make | ||
# Fail build if there are warnings | ||
# build with TLS just for compilation coverage | ||
run: make SERVER_CFLAGS='-Werror' BUILD_TLS=yes | ||
- name: test | ||
run: | | ||
sudo apt-get install tcl8.6 tclx | ||
./runtest --verbose --tags -slow --dump-logs | ||
- name: module api test | ||
run: CFLAGS='-Werror' ./runtest-moduleapi --verbose --dump-logs | ||
- name: validate commands.def up to date | ||
run: | | ||
touch src/commands/ping.json | ||
make commands.def | ||
dirty=$(git diff) | ||
if [[ ! -z $dirty ]]; then echo $dirty; exit 1; fi | ||
test-sanitizer-address: | ||
runs-on: ubuntu-latest | ||
steps: | ||
- uses: actions/checkout@v4 | ||
- name: make | ||
# build with TLS module just for compilation coverage | ||
run: make SANITIZER=address SERVER_CFLAGS='-Werror -DDEBUG_ASSERTIONS' BUILD_TLS=module | ||
- name: testprep | ||
# Work around ASAN issue, see https://github.com/google/sanitizers/issues/1716 | ||
run: | | ||
sudo apt-get install tcl8.6 tclx -y | ||
sudo sysctl vm.mmap_rnd_bits=28 | ||
- name: test | ||
run: ./runtest --verbose --tags -slow --dump-logs | ||
- name: module api test | ||
run: CFLAGS='-Werror' ./runtest-moduleapi --verbose --dump-logs | ||
|
||
build-debian-old: | ||
runs-on: ubuntu-latest | ||
container: debian:buster | ||
steps: | ||
- uses: actions/checkout@v4 | ||
- name: make | ||
run: | | ||
apt-get update && apt-get install -y build-essential | ||
make SERVER_CFLAGS='-Werror' | ||
build-macos-latest: | ||
runs-on: macos-latest | ||
steps: | ||
- uses: actions/checkout@v4 | ||
- name: make | ||
run: make SERVER_CFLAGS='-Werror' | ||
|
||
build-32bit: | ||
runs-on: ubuntu-latest | ||
steps: | ||
- uses: actions/checkout@v4 | ||
- name: make | ||
run: | | ||
sudo apt-get update && sudo apt-get install libc6-dev-i386 | ||
make SERVER_CFLAGS='-Werror' 32bit | ||
build-libc-malloc: | ||
runs-on: ubuntu-latest | ||
steps: | ||
- uses: actions/checkout@v4 | ||
- name: make | ||
run: make SERVER_CFLAGS='-Werror' MALLOC=libc | ||
|
||
build-centos7-jemalloc: | ||
runs-on: ubuntu-latest | ||
container: centos:7 | ||
steps: | ||
# on centos7, actions/checkout@v4 does not work, so we use v3 | ||
# ref. https://github.com/actions/checkout/issues/1487 | ||
- uses: actions/checkout@v3 | ||
|
||
- name: make | ||
run: | | ||
yum -y install gcc make | ||
make SERVER_CFLAGS='-Werror' | ||
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,33 @@ | ||
name: "CodeQL" | ||
|
||
on: | ||
pull_request: | ||
schedule: | ||
# run weekly new vulnerability was added to the database | ||
- cron: '0 0 * * 0' | ||
|
||
jobs: | ||
analyze: | ||
name: Analyze | ||
runs-on: ubuntu-latest | ||
if: github.event_name != 'schedule' || github.repository == 'valkey-io/valkey' | ||
|
||
strategy: | ||
fail-fast: false | ||
matrix: | ||
language: [ 'cpp' ] | ||
|
||
steps: | ||
- name: Checkout repository | ||
uses: actions/checkout@v4 | ||
|
||
- name: Initialize CodeQL | ||
uses: github/codeql-action/init@v3 | ||
with: | ||
languages: ${{ matrix.language }} | ||
|
||
- name: Autobuild | ||
uses: github/codeql-action/autobuild@v3 | ||
|
||
- name: Perform CodeQL Analysis | ||
uses: github/codeql-action/analyze@v3 |
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,31 @@ | ||
# Creates and uploads a Coverity build on a schedule | ||
name: Coverity Scan | ||
on: | ||
schedule: | ||
# Run once daily, since below 500k LOC can have 21 builds per week, per https://scan.coverity.com/faq#frequency | ||
- cron: '0 0 * * *' | ||
# Support manual execution | ||
workflow_dispatch: | ||
jobs: | ||
coverity: | ||
if: github.repository == 'valkey-io/valkey' | ||
runs-on: ubuntu-latest | ||
steps: | ||
- uses: actions/checkout@main | ||
- name: Download and extract the Coverity Build Tool | ||
run: | | ||
wget -q https://scan.coverity.com/download/cxx/linux64 --post-data "token=${{ secrets.COVERITY_SCAN_TOKEN }}&project=valkey-io%2Fvalkey" -O cov-analysis-linux64.tar.gz | ||
mkdir cov-analysis-linux64 | ||
tar xzf cov-analysis-linux64.tar.gz --strip 1 -C cov-analysis-linux64 | ||
- name: Install Valkey dependencies | ||
run: sudo apt install -y gcc procps libssl-dev | ||
- name: Build with cov-build | ||
run: cov-analysis-linux64/bin/cov-build --dir cov-int make | ||
- name: Upload the result | ||
run: | | ||
tar czvf cov-int.tgz cov-int | ||
curl \ | ||
--form email=${{ secrets.COVERITY_SCAN_EMAIL }} \ | ||
--form token=${{ secrets.COVERITY_SCAN_TOKEN }} \ | ||
--form [email protected] \ | ||
https://scan.coverity.com/builds?project=valkey-io%2Fvalkey |
Oops, something went wrong.