Let's see if the output from valgrind we're currently getting has to do with BDB or if it's to do with Heimdal (I can't reproduce locally with LDMB).
71 lines
2.9 KiB
YAML
71 lines
2.9 KiB
YAML
name: Linux Valgrind Tests Build
|
|
|
|
on:
|
|
push:
|
|
# Pushes to the valgrind branch get the valgrind treatment
|
|
branches:
|
|
- 'valgrind*'
|
|
|
|
pull_request:
|
|
# Changing this build also gets it to run
|
|
paths:
|
|
- '.github/workflows/valgrind.yml'
|
|
|
|
jobs:
|
|
unix:
|
|
runs-on: ${{ matrix.os }}
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
name: [linux-clang]
|
|
include:
|
|
- name: linux-clang
|
|
os: ubuntu-18.04
|
|
compiler: clang
|
|
steps:
|
|
- name: Clone repository
|
|
uses: actions/checkout@v1
|
|
- name: Install packages
|
|
if: startsWith(matrix.os, 'ubuntu')
|
|
run: |
|
|
sudo apt-get update -qq
|
|
sudo apt-get install -y bison comerr-dev flex libcap-ng-dev lmdb-utils liblmdb-dev libdb-dev libedit-dev libjson-perl libldap2-dev libncurses5-dev libperl4-corelibs-perl libsqlite3-dev libkeyutils-dev pkg-config python ss-dev texinfo unzip netbase keyutils ldap-utils gdb apport curl libmicrohttpd-dev jq valgrind
|
|
# Temporary workaround for:
|
|
# https://github.com/actions/virtual-environments/issues/3185
|
|
sudo hostname localhost
|
|
- name: Build
|
|
env:
|
|
CC: ${{ matrix.compiler }}
|
|
MAKEVARS: ${{ matrix.makevars }}
|
|
CONFIGURE_OPTS: ${{ matrix.configureopts }}
|
|
run: |
|
|
/bin/sh ./autogen.sh
|
|
mkdir build
|
|
cd build
|
|
../configure --srcdir=`dirname "$PWD"` --enable-maintainer-mode --enable-developer --with-ldap $CONFIGURE_OPTS --prefix=$HOME/inst CFLAGS="-g -ggdb3 -O0 -Wno-error=shadow -Wno-error=bad-function-cast -Wno-error=unused-function -Wno-error=unused-result -Wno-error=deprecated-declarations"
|
|
make -j4
|
|
- name: Test
|
|
env:
|
|
CC: ${{ matrix.compiler }}
|
|
MAKEVARS: ${{ matrix.makevars }}
|
|
run: |
|
|
cd build
|
|
ulimit -c unlimited
|
|
make check-valgrind
|
|
- name: Valgrind output
|
|
run: |
|
|
find . -name \*.log -print0|xargs -0 grep '^==[0-9]*== ' || true
|
|
- name: Test logs
|
|
run: |
|
|
find build -depth -name \*.log | sed -e 's/trs$/log/' | tar -czf $HOME/logs-linux-valgrind.tgz --verbatim-files-from --files-from -
|
|
find build -name \*.trs|xargs grep -lw FAIL | sed -e 's/trs$/log/' | xargs cat
|
|
- name: Failed Test logs
|
|
if: ${{ failure() }}
|
|
run: |
|
|
find build -name \*.trs|xargs grep -lw FAIL | sed -e 's/trs$/log/' | xargs cat
|
|
- name: Upload Artifacts
|
|
uses: actions/upload-artifact@v2
|
|
with:
|
|
name: Test Logs
|
|
path: '~/logs-linux-valgrind.tgz'
|