Skip to content

Commit

Permalink
Merge tag 'v8.2208.0' into dev
Browse files Browse the repository at this point in the history
scheduled stable release 8.2208.0
  • Loading branch information
frikilax committed Aug 30, 2022
2 parents eba398b + e8d1288 commit 601ff29
Show file tree
Hide file tree
Showing 213 changed files with 5,005 additions and 2,454 deletions.
26 changes: 12 additions & 14 deletions .github/workflows/ci_compile.yml
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,10 @@ jobs:
# When set to true, cancel all in-progress jobs if any matrix job fails.
fail-fast: false
matrix:
config: [clang8, clang9, clang10, gcc10, gcc9, gcc8]
# note: we compile only with oldest and newest support compiler to
# save ressources. Other important ones are used during the rest of
# the check runs (most importantly the distro-default ones).
config: [clang9, clang-14, gcc-11, gcc8]

steps:
- name: git checkout project
Expand All @@ -45,28 +48,23 @@ jobs:
run: |
chmod -R go+rw .
export RSYSLOG_CONTAINER_UID="" # use default
export RSYSLOG_DEV_CONTAINER='rsyslog/rsyslog_dev_base_ubuntu:20.04'
export CFLAGS='-g'
case "${{ matrix.config }}" in
'clang8')
export CC='clang-8'
export RSYSLOG_DEV_CONTAINER='rsyslog/rsyslog_dev_base_ubuntu:18.04'
;;
'clang9')
export RSYSLOG_DEV_CONTAINER='rsyslog/rsyslog_dev_base_ubuntu:20.04'
export CC='clang-9'
;;
'clang10')
export CC='clang-10'
'clang14')
export RSYSLOG_DEV_CONTAINER='rsyslog/rsyslog_dev_base_ubuntu:22.04'
export CC='clang-14'
;;
'gcc8')
export CC='gcc-8'
export RSYSLOG_DEV_CONTAINER='rsyslog/rsyslog_dev_base_ubuntu:18.04'
export CC='gcc-8'
;;
'gcc9')
export CC='gcc-9'
;;
'gcc10')
export CC='gcc-10'
'gcc11')
export RSYSLOG_DEV_CONTAINER='rsyslog/rsyslog_dev_base_ubuntu:22.04'
export CC='gcc-11'
;;
esac
devtools/devcontainer.sh --rm devtools/run-configure.sh
Expand Down
File renamed without changes.
File renamed without changes.
193 changes: 193 additions & 0 deletions .github/workflows/run_checks.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,193 @@
# Copyright 2022 Rainer Gerhards and Others
#
# https://github.com/rsyslog/rsyslog-pkg-ubuntu
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# https://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

# References:
#
# https://help.github.com/en/github/managing-subscriptions-and-notifications-on-github/configuring-notifications#github-actions-notification-options
# https://github.com/settings/notifications
# https://software.opensuse.org//download.html?project=home%3Argerhards&package=rsyslog


---
name: check

on:
pull_request:

jobs:
CI:
runs-on: ubuntu-20.04
timeout-minutes: 50
strategy:
# When set to true, cancel all in-progress jobs if any matrix job fails.
fail-fast: false
matrix:
config: [centos_7, centos_8, debian_10, debian_11, tumbleweed
fedora_35, fedora_36,
ubuntu_18, ubuntu_20, ubuntu_22,
ubuntu_22_san, ubuntu_22_tsan, ubuntu_22_codecov,
kafka_codecov, elasticsearch]

steps:
- name: git checkout project
uses: actions/checkout@v1

- name: run container CI pipeline
run: |
chmod -R go+rw .
export RSYSLOG_CONTAINER_UID="" # use default
export RSYSLOG_STATSURL='http://build.rsyslog.com/testbench-failedtest.php'
export CFLAGS='-g'
export CC='gcc'
export USE_AUTO_DEBUG='off'
export CI_MAKE_OPT='-j20'
export CI_MAKE_CHECK_OPT='-j6'
export CI_CHECK_CMD='check'
case "${{ matrix.config }}" in
'centos_7')
export RSYSLOG_DEV_CONTAINER='rsyslog/rsyslog_dev_base_centos:7'
export RSYSLOG_CONFIGURE_OPTIONS_EXTRA='--disable-elasticsearch-tests --disable-kafka-tests --disable-snmp-tests'
export CI_VALGRIND_SUPPRESSIONS='centos7.supp'
;;
'centos_8')
export RSYSLOG_DEV_CONTAINER='rsyslog/rsyslog_dev_base_centos:8'
export RSYSLOG_CONFIGURE_OPTIONS_EXTRA='--disable-elasticsearch-tests --disable-kafka-tests --disable-snmp-tests'
;;
'debian_10')
export RSYSLOG_DEV_CONTAINER='rsyslog/rsyslog_dev_base_debian:10'
export CI_VALGRIND_SUPPRESSIONS='centos7.supp'
export RSYSLOG_CONFIGURE_OPTIONS_EXTRA="--disable-elasticsearch-tests --disable-kafka-tests \
--without-valgrind-testbench"
;;
'debian_11')
export RSYSLOG_DEV_CONTAINER='rsyslog/rsyslog_dev_base_debian:11'
export CI_VALGRIND_SUPPRESSIONS='centos7.supp'
export RSYSLOG_CONFIGURE_OPTIONS_EXTRA="--disable-elasticsearch-tests --disable-kafka-tests \
--without-valgrind-testbench"
;;
'fedora_35')
export RSYSLOG_DEV_CONTAINER='rsyslog/rsyslog_dev_base_fedora:35'
export RSYSLOG_CONFIGURE_OPTIONS_EXTRA="--disable-elasticsearch-tests \
--disable-kafka-tests --enable-debug"
;;
'fedora_36')
export RSYSLOG_DEV_CONTAINER='rsyslog/rsyslog_dev_base_fedora:36'
export RSYSLOG_CONFIGURE_OPTIONS_EXTRA="--disable-elasticsearch-tests \
--disable-kafka-tests --enable-debug"
;;
'ubuntu_18')
export RSYSLOG_DEV_CONTAINER='rsyslog/rsyslog_dev_base_ubuntu:18.04'
;;
'ubuntu_20')
export RSYSLOG_DEV_CONTAINER='rsyslog/rsyslog_dev_base_ubuntu:20.04'
export CI_VALGRIND_SUPPRESSIONS="ubuntu20.04.supp"
;;
'tumbleweed')
export RSYSLOG_DEV_CONTAINER='rsyslog/rsyslog_dev_base_suse:tumbleweed'
export RSYSLOG_CONFIGURE_OPTIONS_EXTRA="--disable-elasticsearch-tests --disable-kafka-tests"
;;
'ubuntu_22')
export RSYSLOG_DEV_CONTAINER='rsyslog/rsyslog_dev_base_ubuntu:22.04'
export CI_VALGRIND_SUPPRESSIONS="ubuntu22.04.supp"
;;
'ubuntu_22_distcheck')
export RSYSLOG_DEV_CONTAINER='rsyslog/rsyslog_dev_base_ubuntu:22.04'
export CI_VALGRIND_SUPPRESSIONS="ubuntu22.04.supp"
export CI_CHECK_CMD='distcheck'
export ABORT_ALL_ON_TEST_FAIL='YES'
# DO WE NEED THIS? export RSYSLOG_CONFIGURE_OPTIONS_EXTRA="--disable-omkafka --disable-imkafka --disable-kafka-tests"
;;
'ubuntu_22_san')
export CI_SANITIZE_BLACKLIST='tests/asan.supp'
export RSYSLOG_DEV_CONTAINER='rsyslog/rsyslog_dev_base_ubuntu:22.04'
export CC='clang'
export RSYSLOG_CONFIGURE_OPTIONS_EXTRA="--disable-elasticsearch-tests \
--disable-libfaketime --without-valgrind-testbench --disable-valgrind \
--disable-kafka-tests"
export CFLAGS="-fstack-protector -D_FORTIFY_SOURCE=2 \
-fsanitize=address,undefined,nullability,unsigned-integer-overflow \
-fno-sanitize-recover=undefined,nullability,unsigned-integer-overflow \
-g -O3 -fno-omit-frame-pointer -fno-color-diagnostics"
export LSAN_OPTIONS='detect_leaks=0'
export UBSAN_OPTIONS='print_stacktrace=1'
;;
'ubuntu_22_tsan')
export RSYSLOG_DEV_CONTAINER='rsyslog/rsyslog_dev_base_ubuntu:22.04'
export CI_VALGRIND_SUPPRESSIONS="ubuntu22.04.supp"
export CI_SANITIZE_BLACKLIST='tests/tsan.supp'
export CC='clang'
# impstats has known and OK races
# mmpstrucdata TEMPORARILY disabled because of a threading hang on shutdown
export RSYSLOG_CONFIGURE_OPTIONS_EXTRA="--disable-elasticsearch-tests --enable-imfile-tests \
--disable-impstats --disable-kafka-tests --disable-mmpstrucdata \
--disable-clickhouse --disable-clickhouse-tests --disable-kafka-tests \
--disable-libfaketime --without-valgrind-testbench --disable-valgrind"
export CFLAGS="-g -fstack-protector -D_FORTIFY_SOURCE=2 -fsanitize=thread \
-O0 -fno-omit-frame-pointer -fno-color-diagnostics"
# note: we need pathes in container, thus /rsyslog vs. $(pwd) in TSAN_OPTIONS
export TSAN_OPTIONS="halt_on_error=1 suppressions=/rsyslog/tests/tsan-rt.supp"
export ABORT_ALL_ON_TEST_FAIL='YES'
;;
'ubuntu_22_codecov')
export RSYSLOG_DEV_CONTAINER='rsyslog/rsyslog_dev_base_ubuntu:22.04'
export CI_VALGRIND_SUPPRESSIONS="ubuntu22.04.supp"
export CFLAGS='-g -O0 -coverage'
export LDFLAGS='-lgcov'
export USE_AUTO_DEBUG='off'
export CI_CODECOV_TOKEN='9958eda4-50ae-4f2c-b6b6-567d3e6a2e81'
export ABORT_ALL_ON_TEST_FAIL='NO'
export RSYSLOG_CONFIGURE_OPTIONS_EXTRA="--disable-kafka-tests --disable-imkafka \
--disable-omkafka --enable-debug --disable-elasticsearch \
--disable-elasticsearch-tests"
;;
'kafka_codecov')
export RSYSLOG_DEV_CONTAINER='rsyslog/rsyslog_dev_base_ubuntu:22.04'
export CI_VALGRIND_SUPPRESSIONS="ubuntu22.04.supp"
export CFLAGS='-g -O0 -coverage'
export LDFLAGS='-lgcov'
export CI_CODECOV_TOKEN='9958eda4-50ae-4f2c-b6b6-567d3e6a2e81'
export ABORT_ALL_ON_TEST_FAIL='NO'
# Note: we completely override the container configure options here!
export RSYSLOG_CONFIGURE_OPTIONS_OVERRIDE="--enable-testbench --enable-omstdout \
--enable-imdiag --disable-impstats --enable-imfile --disable-imfile-tests \
--disable-fmhttp --enable-valgrind --enable-valgrind-testbench \
--disable-helgrind --disable-default-tests --enable-kafka-tests \
--enable-omkafka --enable-gnutls --disable-gnutls-tests --enable-imkafka"
;;
'elasticsearch')
export RSYSLOG_DEV_CONTAINER='rsyslog/rsyslog_dev_base_ubuntu:22.04'
export CI_VALGRIND_SUPPRESSIONS="ubuntu22.04.supp"
export CI_CODECOV_TOKEN='9958eda4-50ae-4f2c-b6b6-567d3e6a2e81'
export CI_MAKE_CHECK_OPT='-j1'
export ABORT_ALL_ON_TEST_FAIL='NO'
export RSYSLOG_CONFIGURE_OPTIONS_OVERRIDE="--enable-testbench --enable-omstdout \
--enable-imdiag --enable-impstats --enable-imfile --disable-imfile-tests \
--disable-fmhttp --enable-valgrind --disable-default-tests \
--enable-elasticsearch-tests --enable-elasticsearch"
export CI_MAKE_OPT='-j20'
export CI_MAKE_CHECK_OPT='-j8'
export CI_CHECK_CMD='check'
export CI_VALGRIND_SUPPRESSIONS="ubuntu22.04.supp" # they are still valid
devtools/devcontainer.sh --rm devtools/run-ci.sh
;;
esac
devtools/devcontainer.sh --rm devtools/run-ci.sh
- name: show error logs (if we errored)
if: ${{ failure() || cancelled() }}
run: |
devtools/gather-check-logs.sh
cat failed-tests.log
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@


---
name: check fedora 31
name: check fedora 35

on:
pull_request:
Expand All @@ -47,7 +47,7 @@ jobs:
export CI_MAKE_OPT='-j20'
export CI_MAKE_CHECK_OPT='-j8'
export CI_CHECK_CMD='check'
export RSYSLOG_DEV_CONTAINER='rsyslog/rsyslog_dev_base_fedora:31'
export RSYSLOG_DEV_CONTAINER='rsyslog/rsyslog_dev_base_fedora:35'
export RSYSLOG_CONFIGURE_OPTIONS_EXTRA="--disable-elasticsearch-tests \
--disable-kafka-tests --enable-debug"
devtools/devcontainer.sh --rm devtools/run-ci.sh
Expand Down
27 changes: 5 additions & 22 deletions .github/workflows/run_journal.yml
Original file line number Diff line number Diff line change
Expand Up @@ -33,9 +33,6 @@ jobs:
timeout-minutes: 30

steps:
- name: git checkout project
uses: actions/checkout@v1

- name: add extra dependencies
run: |
echo 'deb http://download.opensuse.org/repositories/home:/rgerhards/xUbuntu_20.04/ /' \
Expand All @@ -44,45 +41,31 @@ jobs:
| gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/home:rgerhards.gpg > /dev/null
sudo apt-get update
sudo apt-get install -y \
libcurl4-gnutls-dev \
libdbi-dev \
libestr-dev \
libgcrypt20-dev \
libglib2.0-dev \
libgnutls28-dev \
libgrok1 libgrok-dev \
libhiredis-dev \
libkrb5-dev \
liblognorm-dev \
liblz4-dev \
libmongoc-dev \
libmysqlclient-dev \
libnet1-dev \
libpcap-dev \
librelp-dev \
libsasl2-dev \
libsnmp-dev \
libssl-dev \
libsystemd-dev \
libtool \
libtool-bin \
logrotate \
libzstd-dev \
lsof \
make \
mysql-server \
net-tools \
pkg-config \
postgresql-client libpq-dev \
python3-pip \
python3-pysnmp4 \
python-docutils \
software-properties-common \
uuid-dev \
valgrind \
vim \
wget \
librdkafka-dev \
zlib1g-dev
zstd

- name: git checkout project
uses: actions/checkout@v1

- name: build dependencies which require that
run: |
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -52,7 +52,7 @@ jobs:
export CI_MAKE_CHECK_OPT='-j8'
export CI_CHECK_CMD='check'
export CI_CODECOV_TOKEN='9958eda4-50ae-4f2c-b6b6-567d3e6a2e81'
export RSYSLOG_DEV_CONTAINER='rsyslog/rsyslog_dev_base_fedora:30'
export RSYSLOG_DEV_CONTAINER='rsyslog/rsyslog_dev_base_fedora:35'
export ABORT_ALL_ON_TEST_FAIL='NO'
# Note: we completely override the container configure options here!
export RSYSLOG_CONFIGURE_OPTIONS_OVERRIDE="--enable-testbench --enable-omstdout \
Expand Down
File renamed without changes.
Loading

0 comments on commit 601ff29

Please sign in to comment.