Merge pull request #7928

e7e28bc CI: ccache common settings variable and apt settings tidying (mj-xmr)
This commit is contained in:
luigi1111 2021-09-23 22:18:06 -05:00
commit 9b5268a27d
No known key found for this signature in database
GPG key ID: F4ACA0183641E010
2 changed files with 23 additions and 18 deletions

View file

@ -6,19 +6,20 @@ on: [push, pull_request]
env: env:
REMOVE_BUNDLED_BOOST : rm -rf /usr/local/share/boost REMOVE_BUNDLED_BOOST : rm -rf /usr/local/share/boost
BUILD_DEFAULT_LINUX: | 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 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
echo "Acquire::http::Timeout \"120\";" | sudo tee -a /etc/apt/apt.conf.d/80-custom echo "Acquire::http::Timeout \"120\";" | sudo tee -a /etc/apt/apt.conf.d/80-custom
echo "Acquire::ftp::Timeout \"120\";" | sudo tee -a /etc/apt/apt.conf.d/80-custom echo "Acquire::ftp::Timeout \"120\";" | sudo tee -a /etc/apt/apt.conf.d/80-custom
CCACHE_SETTINGS: |
ccache --max-size=150M
ccache --set-config=compression=true
jobs: jobs:
build-macos: build-macos:
runs-on: macOS-latest runs-on: macOS-latest
env: env:
CCACHE_COMPRESS: 1
CCACHE_TEMPDIR: /tmp/.ccache-temp CCACHE_TEMPDIR: /tmp/.ccache-temp
steps: steps:
- uses: actions/checkout@v1 - uses: actions/checkout@v1
@ -33,13 +34,12 @@ jobs:
run: HOMEBREW_NO_AUTO_UPDATE=1 brew install boost hidapi zmq libpgm miniupnpc ldns expat libunwind-headers protobuf ccache run: HOMEBREW_NO_AUTO_UPDATE=1 brew install boost hidapi zmq libpgm miniupnpc ldns expat libunwind-headers protobuf ccache
- name: build - name: build
run: | run: |
ccache --max-size=150M ${{env.CCACHE_SETTINGS}}
make -j3 make -j3
build-windows: build-windows:
runs-on: windows-latest runs-on: windows-latest
env: env:
CCACHE_COMPRESS: 1
CCACHE_TEMPDIR: C:\Users\runneradmin\.ccache-temp CCACHE_TEMPDIR: C:\Users\runneradmin\.ccache-temp
CCACHE_DIR: C:\Users\runneradmin\.ccache CCACHE_DIR: C:\Users\runneradmin\.ccache
defaults: defaults:
@ -60,7 +60,7 @@ jobs:
install: mingw-w64-x86_64-toolchain make mingw-w64-x86_64-cmake mingw-w64-x86_64-ccache mingw-w64-x86_64-boost mingw-w64-x86_64-openssl mingw-w64-x86_64-zeromq mingw-w64-x86_64-libsodium mingw-w64-x86_64-hidapi mingw-w64-x86_64-protobuf-c mingw-w64-x86_64-libusb mingw-w64-x86_64-unbound git install: mingw-w64-x86_64-toolchain make mingw-w64-x86_64-cmake mingw-w64-x86_64-ccache mingw-w64-x86_64-boost mingw-w64-x86_64-openssl mingw-w64-x86_64-zeromq mingw-w64-x86_64-libsodium mingw-w64-x86_64-hidapi mingw-w64-x86_64-protobuf-c mingw-w64-x86_64-libusb mingw-w64-x86_64-unbound git
- name: build - name: build
run: | run: |
ccache --max-size=150M ${{env.CCACHE_SETTINGS}}
make release-static-win64 -j2 make release-static-win64 -j2
# See the OS labels and monitor deprecations here: # See the OS labels and monitor deprecations here:
@ -69,7 +69,6 @@ jobs:
build-ubuntu: build-ubuntu:
runs-on: ${{ matrix.os }} runs-on: ${{ matrix.os }}
env: env:
CCACHE_COMPRESS: 1
CCACHE_TEMPDIR: /tmp/.ccache-temp CCACHE_TEMPDIR: /tmp/.ccache-temp
strategy: strategy:
matrix: matrix:
@ -92,12 +91,13 @@ jobs:
- name: install monero dependencies - name: install monero dependencies
run: ${{env.APT_INSTALL_LINUX}} run: ${{env.APT_INSTALL_LINUX}}
- name: build - name: build
run: ${{env.BUILD_DEFAULT_LINUX}} run: |
${{env.CCACHE_SETTINGS}}
${{env.BUILD_DEFAULT_LINUX}}
libwallet-ubuntu: libwallet-ubuntu:
runs-on: ubuntu-latest runs-on: ubuntu-latest
env: env:
CCACHE_COMPRESS: 1
CCACHE_TEMPDIR: /tmp/.ccache-temp CCACHE_TEMPDIR: /tmp/.ccache-temp
steps: steps:
- uses: actions/checkout@v1 - uses: actions/checkout@v1
@ -118,7 +118,7 @@ jobs:
run: ${{env.APT_INSTALL_LINUX}} run: ${{env.APT_INSTALL_LINUX}}
- name: build - name: build
run: | run: |
ccache --max-size=150M ${{env.CCACHE_SETTINGS}}
cmake . cmake .
make wallet_api -j3 make wallet_api -j3
@ -126,7 +126,6 @@ jobs:
needs: build-ubuntu needs: build-ubuntu
runs-on: ubuntu-latest runs-on: ubuntu-latest
env: env:
CCACHE_COMPRESS: 1
CCACHE_TEMPDIR: /tmp/.ccache-temp CCACHE_TEMPDIR: /tmp/.ccache-temp
steps: steps:
- uses: actions/checkout@v1 - uses: actions/checkout@v1
@ -152,6 +151,7 @@ jobs:
env: env:
CTEST_OUTPUT_ON_FAILURE: ON CTEST_OUTPUT_ON_FAILURE: ON
run: | run: |
${{env.CCACHE_SETTINGS}}
${{env.BUILD_DEFAULT_LINUX}} ${{env.BUILD_DEFAULT_LINUX}}
cmake --build build --target test cmake --build build --target test

View file

@ -2,11 +2,19 @@ name: ci/gh-actions/depends
on: [push, pull_request] on: [push, pull_request]
env:
APT_SET_CONF: |
echo "Acquire::Retries \"3\";" | sudo tee -a /etc/apt/apt.conf.d/80-custom
echo "Acquire::http::Timeout \"120\";" | sudo tee -a /etc/apt/apt.conf.d/80-custom
echo "Acquire::ftp::Timeout \"120\";" | sudo tee -a /etc/apt/apt.conf.d/80-custom
CCACHE_SETTINGS: |
ccache --max-size=150M
ccache --set-config=compression=true
jobs: jobs:
build-macos: build-macos:
runs-on: ubuntu-18.04 runs-on: ubuntu-18.04
env: env:
CCACHE_COMPRESS: 1
CCACHE_TEMPDIR: /tmp/.ccache-temp CCACHE_TEMPDIR: /tmp/.ccache-temp
strategy: strategy:
fail-fast: false fail-fast: false
@ -69,10 +77,7 @@ jobs:
key: sdk-${{ matrix.toolchain.host }}-${{ matrix.toolchain.osx_sdk }} key: sdk-${{ matrix.toolchain.host }}-${{ matrix.toolchain.osx_sdk }}
restore-keys: sdk-${{ matrix.toolchain.host }}-${{ matrix.toolchain.osx_sdk }} restore-keys: sdk-${{ matrix.toolchain.host }}-${{ matrix.toolchain.osx_sdk }}
- name: set apt conf - name: set apt conf
run: | run: ${{env.APT_SET_CONF}}
echo "Acquire::Retries \"3\";" | sudo tee -a /etc/apt/apt.conf.d/80-custom
echo "Acquire::http::Timeout \"120\";" | sudo tee -a /etc/apt/apt.conf.d/80-custom
echo "Acquire::ftp::Timeout \"120\";" | sudo tee -a /etc/apt/apt.conf.d/80-custom
- name: install dependencies - name: install dependencies
run: sudo apt update; sudo apt -y install build-essential libtool cmake autotools-dev automake pkg-config bsdmainutils curl git ca-certificates ccache ${{ matrix.toolchain.packages }} run: sudo apt update; sudo apt -y install build-essential libtool cmake autotools-dev automake pkg-config bsdmainutils curl git ca-certificates ccache ${{ matrix.toolchain.packages }}
- name: prepare apple-darwin11 - name: prepare apple-darwin11
@ -88,7 +93,7 @@ jobs:
sudo update-alternatives --set ${{ matrix.toolchain.host }}-gcc $(which ${{ matrix.toolchain.host }}-gcc-posix) sudo update-alternatives --set ${{ matrix.toolchain.host }}-gcc $(which ${{ matrix.toolchain.host }}-gcc-posix)
- name: build - name: build
run: | run: |
ccache --max-size=150M ${{env.CCACHE_SETTINGS}}
make depends target=${{ matrix.toolchain.host }} -j2 make depends target=${{ matrix.toolchain.host }} -j2
- uses: actions/upload-artifact@v2 - uses: actions/upload-artifact@v2
if: ${{ matrix.toolchain.host == 'x86_64-w64-mingw32' || matrix.toolchain.host == 'x86_64-apple-darwin11' || matrix.toolchain.host == 'x86_64-unknown-linux-gnu' }} if: ${{ matrix.toolchain.host == 'x86_64-w64-mingw32' || matrix.toolchain.host == 'x86_64-apple-darwin11' || matrix.toolchain.host == 'x86_64-unknown-linux-gnu' }}