Avoid potential corruption during unpack of static_variant #230
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: Ubuntu Release | |
on: [ push, pull_request ] | |
env: | |
CCACHE_COMPRESS: exists means true | |
CCACHE_SLOPPINESS: include_file_ctime,include_file_mtime,time_macros | |
jobs: | |
test-release: | |
name: Build and run tests in Release mode | |
strategy: | |
matrix: | |
os: [ ubuntu-20.04 ] | |
runs-on: ${{ matrix.os }} | |
steps: | |
- name: Install dependencies | |
run: | | |
sudo apt-get update | |
openssl_ver=`sudo apt-cache madison openssl | grep xenial-updates | awk '{print $3}'` | |
libssl_ver=`sudo apt-cache madison libssl-dev | grep xenial-updates | awk '{print $3}'` | |
[ -n "${openssl_ver}" ] && [ -n "${libssl_ver}" ] && \ | |
sudo apt-get install -y --allow-downgrades openssl=${openssl_ver} libssl-dev=${libssl_ver} | |
sudo apt-get install -y \ | |
ccache \ | |
parallel \ | |
libboost-thread-dev \ | |
libboost-iostreams-dev \ | |
libboost-date-time-dev \ | |
libboost-system-dev \ | |
libboost-filesystem-dev \ | |
libboost-program-options-dev \ | |
libboost-chrono-dev \ | |
libboost-test-dev \ | |
libboost-context-dev \ | |
libboost-regex-dev \ | |
libboost-coroutine-dev | |
- uses: actions/checkout@v3 | |
with: | |
submodules: recursive | |
- name: Configure | |
run: | | |
mkdir -p _build | |
pushd _build | |
export -n BOOST_ROOT BOOST_INCLUDEDIR BOOST_LIBRARYDIR | |
cmake -D CMAKE_BUILD_TYPE=Release \ | |
-D CMAKE_CXX_OUTPUT_EXTENSION_REPLACE=ON \ | |
-D CMAKE_C_COMPILER=gcc \ | |
-D CMAKE_C_COMPILER_LAUNCHER=ccache \ | |
-D CMAKE_CXX_COMPILER=g++ \ | |
-D CMAKE_CXX_COMPILER_LAUNCHER=ccache \ | |
.. | |
popd | |
- name: Load Cache | |
uses: actions/cache@v3 | |
with: | |
path: ccache | |
key: ccache-release-${{ matrix.os }}-${{ github.ref }}-${{ github.sha }} | |
restore-keys: | | |
ccache-release-${{ matrix.os }}-${{ github.ref }}- | |
ccache-release-${{ matrix.os }}- | |
- name: Build | |
run: | | |
export CCACHE_DIR="$GITHUB_WORKSPACE/ccache" | |
mkdir -p "$CCACHE_DIR" | |
make -j 2 -C _build | |
- name: Test | |
run: | | |
parallel echo Running {}\; sh -c "./{}" <<_EOT_ | |
tests/run-parallel-tests.sh _build/tests/all_tests -l test_suite | |
_build/tests/bloom_test -- README.md | |
_build/tests/ecc_test README.md | |
_build/tests/hmac_test | |
_build/tests/task_cancel_test | |
_EOT_ |