CI: Ubuntu-Test reuses Ubuntu-Build cache and building static libs
This commit is contained in:
parent
56f7609643
commit
1b80347513
22
.github/workflows/build.yml
vendored
22
.github/workflows/build.yml
vendored
@ -5,6 +5,9 @@ on: [push, pull_request]
|
|||||||
# The below variables reduce repetitions across similar targets
|
# The below variables reduce repetitions across similar targets
|
||||||
env:
|
env:
|
||||||
REMOVE_BUNDLED_BOOST : rm -rf /usr/local/share/boost
|
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_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: |
|
APT_SET_CONF: |
|
||||||
echo "Acquire::Retries \"3\";" | sudo tee -a /etc/apt/apt.conf.d/80-custom
|
echo "Acquire::Retries \"3\";" | sudo tee -a /etc/apt/apt.conf.d/80-custom
|
||||||
@ -79,9 +82,7 @@ jobs:
|
|||||||
with:
|
with:
|
||||||
path: ~/.ccache
|
path: ~/.ccache
|
||||||
key: ccache-ubuntu-build-${{ matrix.os }}-${{ github.sha }}
|
key: ccache-ubuntu-build-${{ matrix.os }}-${{ github.sha }}
|
||||||
restore-keys: |
|
restore-keys: ccache-ubuntu-build-${{ matrix.os }}
|
||||||
ccache-ubuntu-build-${{ matrix.os }}
|
|
||||||
ccache-ubuntu-build-
|
|
||||||
- name: remove bundled boost
|
- name: remove bundled boost
|
||||||
run: ${{env.REMOVE_BUNDLED_BOOST}}
|
run: ${{env.REMOVE_BUNDLED_BOOST}}
|
||||||
- name: set apt conf
|
- name: set apt conf
|
||||||
@ -91,9 +92,7 @@ jobs:
|
|||||||
- name: install monero dependencies
|
- name: install monero dependencies
|
||||||
run: ${{env.APT_INSTALL_LINUX}}
|
run: ${{env.APT_INSTALL_LINUX}}
|
||||||
- name: build
|
- name: build
|
||||||
run: |
|
run: ${{env.BUILD_DEFAULT_LINUX}}
|
||||||
ccache --max-size=150M
|
|
||||||
make -j3
|
|
||||||
|
|
||||||
libwallet-ubuntu:
|
libwallet-ubuntu:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
@ -137,8 +136,8 @@ jobs:
|
|||||||
uses: actions/cache@v2
|
uses: actions/cache@v2
|
||||||
with:
|
with:
|
||||||
path: ~/.ccache
|
path: ~/.ccache
|
||||||
key: test-ubuntu-ccache-${{ github.sha }}
|
key: ccache-ubuntu-build-ubuntu-latest-${{ github.sha }}
|
||||||
restore-keys: test-ubuntu-ccache-
|
restore-keys: ccache-ubuntu-build-ubuntu-latest
|
||||||
- name: remove bundled boost
|
- name: remove bundled boost
|
||||||
run: ${{env.REMOVE_BUNDLED_BOOST}}
|
run: ${{env.REMOVE_BUNDLED_BOOST}}
|
||||||
- name: set apt conf
|
- name: set apt conf
|
||||||
@ -153,11 +152,8 @@ jobs:
|
|||||||
env:
|
env:
|
||||||
CTEST_OUTPUT_ON_FAILURE: ON
|
CTEST_OUTPUT_ON_FAILURE: ON
|
||||||
run: |
|
run: |
|
||||||
ccache --max-size=150M
|
${{env.BUILD_DEFAULT_LINUX}}
|
||||||
DIR_BUILD="build/ci/release"
|
cmake --build build --target test
|
||||||
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
|
|
||||||
|
|
||||||
# ARCH="default" (not "native") ensures, that a different execution host can execute binaries compiled elsewhere.
|
# 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.
|
# BUILD_SHARED_LIBS=ON speeds up the linkage part a bit, reduces size, and is the only place where the dynamic linkage is tested.
|
||||||
|
Loading…
Reference in New Issue
Block a user