Skip to content

Reduce numbers.hpp includes with out-of-line definitions #3772

Reduce numbers.hpp includes with out-of-line definitions

Reduce numbers.hpp includes with out-of-line definitions #3772

Workflow file for this run

name: Unit Tests
on: [push, pull_request]
jobs:
macos_test:
name: macOS [${{ matrix.BACKEND }}]
strategy:
fail-fast: false
matrix:
BACKEND: [lmdb, rocksdb]
RELEASE:
- ${{ startsWith(github.ref, 'refs/tags/') }}
env:
NANO_BACKEND: ${{ matrix.BACKEND }}
BUILD_TYPE: ${{ matrix.RELEASE && 'RelWithDebInfo' || 'Debug' }}
TEST_USE_ROCKSDB: ${{ matrix.BACKEND == 'rocksdb' && '1' || '0' }}
DEADLINE_SCALE_FACTOR: ${{ matrix.BACKEND == 'rocksdb' && '2' || '1' }}
runs-on: macos-14
if: github.event_name == 'push' || github.event.pull_request.head.repo.full_name != github.repository
steps:
- name: Checkout
uses: actions/checkout@v4
with:
submodules: "recursive"
- name: Prepare
run: ci/prepare/macos/prepare.sh
- name: Build Tests
id: build
run: ci/build-tests.sh
- name: Setup Core Dumps
if: steps.build.outcome == 'success' && (success() || failure())
run: ci/tests/setup-core-dumps.sh
- name: Core Tests
if: steps.build.outcome == 'success' && (success() || failure())
run: ../ci/tests/run-core-tests.sh
working-directory: build
- name: RPC Tests
if: steps.build.outcome == 'success' && (success() || failure())
run: ../ci/tests/run-rpc-tests.sh
working-directory: build
- name: System Tests
if: steps.build.outcome == 'success' && (success() || failure())
run: ../ci/tests/run-system-tests.sh
working-directory: build
linux_test:
name: Linux [${{ matrix.BACKEND }} | ${{ matrix.COMPILER }}]
timeout-minutes: 90
strategy:
fail-fast: false
matrix:
BACKEND: [lmdb, rocksdb]
COMPILER: [gcc, clang]
RELEASE:
- ${{ startsWith(github.ref, 'refs/tags/') }}
runs-on: ubuntu-24.04
env:
COMPILER: ${{ matrix.COMPILER }}
NANO_BACKEND: ${{ matrix.BACKEND }}
BUILD_TYPE: ${{ matrix.RELEASE && 'RelWithDebInfo' || 'Debug' }}
TEST_USE_ROCKSDB: ${{ matrix.BACKEND == 'rocksdb' && '1' || '0' }}
DEADLINE_SCALE_FACTOR: ${{ matrix.BACKEND == 'rocksdb' && '2' || '1' }}
if: github.event_name == 'push' || github.event.pull_request.head.repo.full_name != github.repository
steps:
- name: Checkout
uses: actions/checkout@v4
with:
submodules: "recursive"
- name: Prepare
run: sudo -E ci/prepare/linux/prepare.sh
- name: Build Tests
id: build
run: ci/build-tests.sh
- name: Setup Core Dumps
if: steps.build.outcome == 'success' && (success() || failure())
run: ci/tests/setup-core-dumps.sh
- name: Core Tests
if: steps.build.outcome == 'success' && (success() || failure())
run: ../ci/tests/run-core-tests.sh
working-directory: build
- name: RPC Tests
if: steps.build.outcome == 'success' && (success() || failure())
run: ../ci/tests/run-rpc-tests.sh
working-directory: build
- name: System Tests
if: steps.build.outcome == 'success' && (success() || failure())
run: ../ci/tests/run-system-tests.sh
working-directory: build
- name: QT Tests
if: steps.build.outcome == 'success' && (success() || failure())
run: ../ci/tests/run-qt-tests.sh
working-directory: build
windows_test:
name: Windows [${{ matrix.BACKEND }}]
timeout-minutes: 150
strategy:
fail-fast: false
matrix:
BACKEND: [lmdb, rocksdb]
RELEASE:
- ${{ startsWith(github.ref, 'refs/tags/') }}
runs-on: windows-latest
env:
NANO_BACKEND: ${{ matrix.BACKEND }}
BUILD_TYPE: ${{ matrix.RELEASE && 'RelWithDebInfo' || 'Debug' }}
TEST_USE_ROCKSDB: ${{ matrix.BACKEND == 'rocksdb' && '1' || '0' }}
DEADLINE_SCALE_FACTOR: ${{ matrix.BACKEND == 'rocksdb' && '2' || '1' }}
if: github.event_name == 'push' || github.event.pull_request.head.repo.full_name != github.repository
steps:
- name: Checkout
uses: actions/checkout@v4
with:
submodules: "recursive"
- name: Prepare
run: ci/prepare/windows/prepare.ps1
- name: Build Tests
id: build
run: ci/build-tests.sh
shell: bash
- name: Setup Core Dumps
if: steps.build.outcome == 'success' && (success() || failure())
run: ci/tests/setup-core-dumps.sh
shell: bash
- name: Core Tests
if: steps.build.outcome == 'success' && (success() || failure())
run: ../ci/tests/run-core-tests.sh
working-directory: build
shell: bash
- name: RPC Tests
if: steps.build.outcome == 'success' && (success() || failure())
run: ../ci/tests/run-rpc-tests.sh
working-directory: build
shell: bash
- name: System Tests
if: steps.build.outcome == 'success' && (success() || failure())
run: ../ci/tests/run-system-tests.sh
working-directory: build
shell: bash
continue-on-error: true # FIXME: Investigate why this fails on Windows
docker_build:
name: Docker [build]
timeout-minutes: 120
runs-on: ubuntu-24.04
if: github.event_name == 'push' || github.event.pull_request.head.repo.full_name != github.repository
steps:
- name: Checkout
uses: actions/checkout@v4
with:
submodules: "recursive"
- name: Free Disk Space
uses: ./.github/actions/free-disk-space
- name: Build Production Docker Image
run: |
docker build \
-f docker/node/Dockerfile \
-t nano-node:latest \
.
docker_test:
name: Docker [${{ matrix.BACKEND }}]
timeout-minutes: 120
strategy:
fail-fast: false
matrix:
BACKEND: [lmdb, rocksdb]
runs-on: ubuntu-24.04
env:
NANO_BACKEND: ${{ matrix.BACKEND }}
TEST_USE_ROCKSDB: ${{ matrix.BACKEND == 'rocksdb' && '1' || '0' }}
DEADLINE_SCALE_FACTOR: ${{ matrix.BACKEND == 'rocksdb' && '2' || '1' }}
if: github.event_name == 'push' || github.event.pull_request.head.repo.full_name != github.repository
steps:
- name: Checkout
uses: actions/checkout@v4
with:
submodules: "recursive"
- name: Free Disk Space
uses: ./.github/actions/free-disk-space
- name: Build Docker Test Image
id: build
run: ci/build-docker-tests.sh
- name: Core Tests
if: steps.build.outcome == 'success' && (success() || failure())
run: ci/tests/run-docker-tests.sh core
- name: RPC Tests
if: steps.build.outcome == 'success' && (success() || failure())
run: ci/tests/run-docker-tests.sh rpc
- name: System Tests
if: steps.build.outcome == 'success' && (success() || failure())
run: ci/tests/run-docker-tests.sh system