From 1b80347513754e40c627173b21faff8e8b68e31c Mon Sep 17 00:00:00 2001 From: mj-xmr Date: Tue, 13 Jul 2021 15:04:50 +0200 Subject: [PATCH] CI: Ubuntu-Test reuses Ubuntu-Build cache and building static libs --- .github/workflows/build.yml | 22 +++++++++------------- 1 file changed, 9 insertions(+), 13 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 716b18590..7c28a71ce 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -5,6 +5,9 @@ on: [push, pull_request] # The below variables reduce repetitions across similar targets env: REMOVE_BUNDLED_BOOST : rm -rf /usr/local/share/boost + BUILD_DEFAULT_LINUX: | + ccache --max-size=150M + cmake -S . -B build -D ARCH="default" -D BUILD_TESTS=ON -D CMAKE_BUILD_TYPE=release && cmake --build build -j3 APT_INSTALL_LINUX: 'sudo apt -y install build-essential cmake libboost-all-dev miniupnpc libunbound-dev graphviz doxygen libunwind8-dev pkg-config libssl-dev libzmq3-dev libsodium-dev libhidapi-dev libnorm-dev libusb-1.0-0-dev libpgm-dev libprotobuf-dev protobuf-compiler ccache' APT_SET_CONF: | echo "Acquire::Retries \"3\";" | sudo tee -a /etc/apt/apt.conf.d/80-custom @@ -79,9 +82,7 @@ jobs: with: path: ~/.ccache key: ccache-ubuntu-build-${{ matrix.os }}-${{ github.sha }} - restore-keys: | - ccache-ubuntu-build-${{ matrix.os }} - ccache-ubuntu-build- + restore-keys: ccache-ubuntu-build-${{ matrix.os }} - name: remove bundled boost run: ${{env.REMOVE_BUNDLED_BOOST}} - name: set apt conf @@ -91,9 +92,7 @@ jobs: - name: install monero dependencies run: ${{env.APT_INSTALL_LINUX}} - name: build - run: | - ccache --max-size=150M - make -j3 + run: ${{env.BUILD_DEFAULT_LINUX}} libwallet-ubuntu: runs-on: ubuntu-latest @@ -137,8 +136,8 @@ jobs: uses: actions/cache@v2 with: path: ~/.ccache - key: test-ubuntu-ccache-${{ github.sha }} - restore-keys: test-ubuntu-ccache- + key: ccache-ubuntu-build-ubuntu-latest-${{ github.sha }} + restore-keys: ccache-ubuntu-build-ubuntu-latest - name: remove bundled boost run: ${{env.REMOVE_BUNDLED_BOOST}} - name: set apt conf @@ -153,11 +152,8 @@ jobs: env: CTEST_OUTPUT_ON_FAILURE: ON run: | - ccache --max-size=150M - DIR_BUILD="build/ci/release" - DIR_SRC="`pwd`" - mkdir -p "${DIR_BUILD}" && cd "${DIR_BUILD}" - cmake -S "${DIR_SRC}" -D ARCH="default" -D BUILD_SHARED_LIBS=ON -D BUILD_TESTS=ON -D CMAKE_BUILD_TYPE=release && make -j3 && make test + ${{env.BUILD_DEFAULT_LINUX}} + cmake --build build --target test # ARCH="default" (not "native") ensures, that a different execution host can execute binaries compiled elsewhere. # BUILD_SHARED_LIBS=ON speeds up the linkage part a bit, reduces size, and is the only place where the dynamic linkage is tested.