CI: Actions' build.yaml uses variables instead of repetitions

This commit is contained in:
mj-xmr 2021-04-15 18:48:45 +02:00
parent f6279a633d
commit 8953f19489

View File

@ -2,6 +2,15 @@ name: ci/gh-actions/cli
on: [push, pull_request] on: [push, pull_request]
# The below variables reduce repetitions across similar targets
env:
REMOVE_BUNDLED_BOOST : rm -rf /usr/local/share/boost
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
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
jobs: jobs:
build-macos: build-macos:
runs-on: macOS-latest runs-on: macOS-latest
@ -66,16 +75,13 @@ jobs:
key: ccache-ubuntu-build-${{ github.sha }} key: ccache-ubuntu-build-${{ github.sha }}
restore-keys: ccache-ubuntu-build- restore-keys: ccache-ubuntu-build-
- name: remove bundled boost - name: remove bundled boost
run: sudo rm -rf /usr/local/share/boost run: ${{env.REMOVE_BUNDLED_BOOST}}
- 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: update apt - name: update apt
run: sudo apt update run: sudo apt update
- name: install monero dependencies - name: install monero dependencies
run: 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 run: ${{env.APT_INSTALL_LINUX}}
- name: build - name: build
run: | run: |
ccache --max-size=150M ccache --max-size=150M
@ -96,16 +102,13 @@ jobs:
key: ccache-ubuntu-libwallet-${{ github.sha }} key: ccache-ubuntu-libwallet-${{ github.sha }}
restore-keys: ccache-ubuntu-libwallet- restore-keys: ccache-ubuntu-libwallet-
- name: remove bundled boost - name: remove bundled boost
run: sudo rm -rf /usr/local/share/boost run: ${{env.REMOVE_BUNDLED_BOOST}}
- 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: update apt - name: update apt
run: sudo apt update run: sudo apt update
- name: install monero dependencies - name: install monero dependencies
run: 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 run: ${{env.APT_INSTALL_LINUX}}
- name: build - name: build
run: | run: |
ccache --max-size=150M ccache --max-size=150M
@ -129,16 +132,13 @@ jobs:
key: test-ubuntu-ccache-${{ github.sha }} key: test-ubuntu-ccache-${{ github.sha }}
restore-keys: test-ubuntu-ccache- restore-keys: test-ubuntu-ccache-
- name: remove bundled boost - name: remove bundled boost
run: sudo rm -rf /usr/local/share/boost run: ${{env.REMOVE_BUNDLED_BOOST}}
- 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: update apt - name: update apt
run: sudo apt update run: sudo apt update
- name: install monero dependencies - name: install monero dependencies
run: 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 run: ${{env.APT_INSTALL_LINUX}}
- name: install Python dependencies - name: install Python dependencies
run: pip install requests psutil monotonic run: pip install requests psutil monotonic
- name: tests - name: tests