You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
thehub/.gitlab-ci.yml

112 lines
2.1 KiB
YAML

image: flowee/buildenv:debian
stages:
- build
- test
- deploy
variables:
PACKAGE_NAME: flowee-${CI_COMMIT_REF_NAME}-${CI_COMMIT_SHORT_SHA}
##### Debian stable
build-debian-stable:
stage: build
script:
- mkdir build
- cd build
- cmake -Dbuild_tests=true -DCMAKE_BUILD_TYPE=ReleaseWithDebugInfo -DCMAKE_INSTALL_PREFIX=.. ..
- echo nproc=`nproc`
- make -j0`nproc` install
artifacts:
paths:
- bin
- build/testing/*/test_*
expire_in: 100 hrs
test_utxo:
stage: test
script:
- build/testing/utxo/test_utxo
dependencies:
- build-debian-stable
test_prevector:
stage: test
script: build/testing/prevector/test_prevector
dependencies:
- build-debian-stable
test_doublespend:
stage: test
script: build/testing/doublespend/test_doublespend
dependencies:
- build-debian-stable
test_streaming:
stage: test
script: build/testing/streaming/test_streaming
dependencies:
- build-debian-stable
test_protocol:
stage: test
script: build/testing/bitcoin-protocol/test_protocol
dependencies:
- build-debian-stable
test_networkmanager:
stage: test
script: build/testing/networkmanager/test_networkmanager
dependencies:
- build-debian-stable
test_hashstorage:
stage: test
script: build/testing/hashstorage/test_hashstorage
dependencies:
- build-debian-stable
test_blockvalidation:
stage: test
script: build/testing/blockvalidation/test_blockvalidation
dependencies:
- build-debian-stable
##### Static build (Linux)
build-static:
image: flowee/buildenv:static
stage: build
script: build_static
artifacts:
paths:
- bin
- etc/flowee
- systemd
expire_in: 100 hrs
flowee-linux.zip:
stage: deploy
script:
- for i in bin/*; do strip $i; done
- mkdir -p ${PACKAGE_NAME}
- mv bin etc systemd ${PACKAGE_NAME}
artifacts:
name: ${PACKAGE_NAME}
paths:
- ${PACKAGE_NAME}
dependencies:
- build-static
##### Build as standard as it gets.
build-debian:
stage: build
script:
- mkdir build
- cd build
- cmake -Denable_gui=false ..
- make -j0`nproc` all