8fed1957fc
The black-box testing in a single-core docker setup seems to just get odd timeouts and issues that no other test environment has. Giving up on running it on the CI. Please note that the Flowee private CI will keep running this test on every commit.
130 lines
2.5 KiB
YAML
130 lines
2.5 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 -Denable_wallet=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-deb:
|
|
stage: deploy
|
|
image: debian:stable
|
|
script:
|
|
- umask 022
|
|
- mkdir -p $PACKAGE_NAME/usr/lib
|
|
- mv bin $PACKAGE_NAME/usr
|
|
- mv etc $PACKAGE_NAME/
|
|
- mv systemd $PACKAGE_NAME/usr/lib/
|
|
- mv support/debian $PACKAGE_NAME/DEBIAN
|
|
- chmod 755 $PACKAGE_NAME/DEBIAN/post* $PACKAGE_NAME/DEBIAN/
|
|
- dpkg-deb --build $PACKAGE_NAME
|
|
dependencies:
|
|
- build-static
|
|
artifacts:
|
|
paths:
|
|
- ${PACKAGE_NAME}.deb
|
|
|
|
flowee-linux.zip:
|
|
stage: deploy
|
|
script:
|
|
- for i in bin/*; do strip $i; done
|
|
- mkdir ${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-nowallet:
|
|
stage: build
|
|
script:
|
|
- mkdir build
|
|
- cd build
|
|
- cmake -Denable_gui=false ..
|
|
- make -j0`nproc` all
|
|
|