Travis/artifacts to s3 (#2204)

* split artifacts between beta and live
build mac live always to catch new errors
deploy live on tags not RC or DB
build and deploy beta on tags RC or DB
bundle QtDBus framework as required for plugin libqcocoa.dylib
hardcode default DragNDrop and TBZ2
update deploy-docker script to hand travis tags and new stage name

* if CI_BUILD true environment $TRAVIS_TAG(via travis and tagged commits) will be set, and will use $TRAVIS_TAG instead of CPACK_PACKAGE_VERSION strings
simplify version string to be based on tag when available otherwise use version string

* formatting

* Travis capitalizes BUILD_STAGE_NAME

* add TRAVIS_TAG and CI_BUILD to docker builds
pass TRAVIS_TAG from travis through to docker build env

* on tag build relwithdebinfo unit tests as well
This commit is contained in:
Russel Waters 2019-08-11 13:08:15 -04:00 committed by GitHub
commit 8e2bb49051
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
20 changed files with 238 additions and 98 deletions

View file

@ -3,24 +3,63 @@ language: cpp
stages:
- build_base
- build_env
- tag_test
- test
- deploy
- artifacts_beta
- artifacts_live
jobs:
include:
- stage: build_base
name: "base"
if: branch=master AND type=push
script:
- if [ "$TRAVIS_PULL_REQUEST" = "false" ]; then if [ -n "$DOCKER_PASSWORD" ]; then ci/deploy-docker.sh; fi; fi
- if [ -n "$DOCKER_PASSWORD" ]; then ci/deploy-docker.sh; fi;
- stage: build_env
name: "clang"
if: branch=master AND type=push
script:
- if [ "$TRAVIS_PULL_REQUEST" = "false" ]; then if [ -n "$DOCKER_PASSWORD" ]; then ci/deploy-docker.sh; fi; fi
- if [ -n "$DOCKER_PASSWORD" ]; then ci/deploy-docker.sh; fi;
- name: "gcc"
if: branch=master AND type=push
script:
- if [ "$TRAVIS_PULL_REQUEST" = "false" ]; then if [ -n "$DOCKER_PASSWORD" ]; then ci/deploy-docker.sh; fi; fi
- if [ -n "$DOCKER_PASSWORD" ]; then ci/deploy-docker.sh; fi;
- stage: tag_test
name: "gcc"
if: tag is present
os: linux
compiler: gcc
env:
- RELEASE=1
before_install:
- sudo mkdir -p /etc/docker && echo '{"ipv6":true,"fixed-cidr-v6":"2001:db8:1::/64"}' | sudo tee /etc/docker/daemon.json && sudo service docker restart;
- ci/build-docker-image.sh docker/ci/Dockerfile-gcc nanocurrency/nano-env:gcc;
- name: "clang"
if: tag is present
os: linux
compiler: clang
env:
- RELEASE=1
before_install:
- sudo mkdir -p /etc/docker && echo '{"ipv6":true,"fixed-cidr-v6":"2001:db8:1::/64"}' | sudo tee /etc/docker/daemon.json && sudo service docker restart;
- ci/build-docker-image.sh docker/ci/Dockerfile-clang nanocurrency/nano-env:clang;
- name: "osx clang"
if: tag is present
os: osx
compiler: clang
env:
- RELEASE=1
before_install:
- brew update;
- brew install qt5;
- brew cask install xquartz;
- brew upgrade cmake;
- brew install rocksdb;
install:
- brew install ccache;
- export PATH="/usr/local/opt/ccache/libexec:$PATH";
- stage: test
name: "GCC + ONE_TIME_TESTS"
os: linux
@ -48,30 +87,107 @@ jobs:
os: osx
compiler: clang
before_install:
- brew update && brew install qt5 && brew cask install xquartz && brew upgrade cmake && brew install rocksdb;
- brew update;
- brew install qt5;
- brew cask install xquartz;
- brew upgrade cmake;
- brew install rocksdb;
install:
- brew install ccache;
- export PATH="/usr/local/opt/ccache/libexec:$PATH";
- stage: deploy
name: "live"
if: branch=~/^(master|releases\/v*)$/ AND !tag=~RC AND type=push
- stage: artifacts_live
name: "live docker"
if: tag IS present AND !tag=~RC|DB
script:
- if [ "$TRAVIS_PULL_REQUEST" = "false" ]; then if [ -n "$DOCKER_PASSWORD" ]; then ci/deploy-docker.sh; fi; fi
- name: "beta"
if: branch=~/^(master|releases\/v*)$/ AND type=push
if [ -n "$DOCKER_PASSWORD" ]; then TRAVIS_TAG="${TRAVIS_TAG}" ci/deploy-docker.sh; fi;
- name: "live linux"
os: linux
compiler: gcc
dist: trusty
if: tag IS present AND !tag=~RC|DB
before_install:
- sudo apt-get update -y && sudo apt-get install -y python-pip
- pip install --user awscli
- aws --version
- sudo mkdir -p /etc/docker && echo '{"ipv6":true,"fixed-cidr-v6":"2001:db8:1::/64"}' | sudo tee /etc/docker/daemon.json && sudo service docker restart;
- ci/build-docker-image.sh docker/ci/Dockerfile-gcc nanocurrency/nano-env:gcc;
script:
- docker run -v $TRAVIS_BUILD_DIR:/workspace -v $HOME/.ccache:/ccache nanocurrency/nano-env:$TRAVIS_COMPILER /bin/bash -c "apt install ccache; cd /workspace && TRAVIS_TAG=${TRAVIS_TAG} CCACHE_DIR=/ccache ci/build-deploy.sh /usr/lib/x86_64-linux-gnu/cmake/Qt5 ${PWD}";
- ci/deploy-travis.sh;
- name: "live osx"
os: osx
compiler: clang
before_install:
- brew update;
- brew cask install xquartz;
- brew upgrade cmake;
- brew install rocksdb;
- git clone https://github.com/benlau/qtci.git;
- source qtci/path.env;
- install-qt-online qt.qt5.5130.clang_64 ~/
install:
- pip install --user awscli
- brew install ccache;
- export PATH="$HOME/Library/Python/2.7/bin:/usr/local/opt/ccache/libexec:$PATH";
- aws --version
script:
- ci/build-deploy.sh "~/qt/5.13.0/clang_64/lib/cmake/Qt5";
- if [[ -n "$TRAVIS_TAG" ]]; then if [[ ! "${TRAVIS_TAG-0}" =~ ("RC"|"DB") ]]; then ci/deploy-travis.sh; fi; fi;
- stage: artifacts_beta
name: "beta docker"
if: tag =~RC|DB
script:
- if [ "$TRAVIS_PULL_REQUEST" = "false" ]; then if [ -n "$DOCKER_PASSWORD" ]; then ci/deploy-docker.sh; fi; fi
- if [ -n "$DOCKER_PASSWORD" ]; then TRAVIS_TAG="${TRAVIS_TAG}" ci/deploy-docker.sh; fi;
- name: "beta linux"
os: linux
env:
- BETA=1
compiler: gcc
dist: trusty
if: tag =~RC|DB
before_install:
- sudo apt-get update -y && sudo apt-get install -y python-pip
- pip install --user awscli
- aws --version
- sudo mkdir -p /etc/docker && echo '{"ipv6":true,"fixed-cidr-v6":"2001:db8:1::/64"}' | sudo tee /etc/docker/daemon.json && sudo service docker restart;
- ci/build-docker-image.sh docker/ci/Dockerfile-gcc nanocurrency/nano-env:gcc;
script:
- docker run -v $TRAVIS_BUILD_DIR:/workspace -v $HOME/.ccache:/ccache nanocurrency/nano-env:$TRAVIS_COMPILER /bin/bash -c "apt install ccache; cd /workspace && TRAVIS_TAG=${TRAVIS_TAG} BETA=1 CCACHE_DIR=/ccache ci/build-deploy.sh /usr/lib/x86_64-linux-gnu/cmake/Qt5 ${PWD}"
- ci/deploy-travis.sh;
- name: "beta osx"
os: osx
compiler: clang
env:
- BETA=1
if: tag =~RC|DB
before_install:
- brew update;
- brew cask install xquartz;
- brew upgrade cmake;
- brew install rocksdb;
- git clone https://github.com/benlau/qtci.git;
- source qtci/path.env;
- install-qt-online qt.qt5.5130.clang_64 ~/
install:
- pip install --user awscli
- brew install ccache;
- export PATH="$HOME/Library/Python/2.7/bin:/usr/local/opt/ccache/libexec:$PATH";
- aws --version
script:
- ci/build-deploy.sh "~/qt/5.13.0/clang_64/lib/cmake/Qt5";
- ci/deploy-travis.sh;
cache:
- ccache: true
- directories:
- $HOME/.local
- $HOME/Library/Caches/Homebrew
- $TRAVIS_BUILD_DIR/load-tester/target
script:
- if [ -n "$ONE_TIME_TESTS" ]; then ci/check-commit-format.sh; fi
- if [ -n "$ONE_TIME_TESTS" ]; then doxygen doxygen.config; fi # TODO also deploy the built HTML
- if [ "$TRAVIS_OS_NAME" = "osx" ]; then ci/build-travis.sh "/usr/local/opt/qt5/lib/cmake/Qt5"; fi
- if [ "$TRAVIS_OS_NAME" = "linux" ]; then docker run -v $TRAVIS_BUILD_DIR:/workspace -v $HOME/.ccache:/ccache nanocurrency/nano-env:$TRAVIS_COMPILER /bin/bash -c "apt install ccache; cd /workspace && ASAN=${ASAN} TSAN=${TSAN} CCACHE_DIR=/ccache ./ci/build-travis.sh /usr/lib/x86_64-linux-gnu/cmake/Qt5 ${PWD}"; fi
env:
- secure: "k8kmpD+xRS57ukdvlvaXT0WN4H0rr/aHSjV+l5IUUFpKx5N+DEsb+7ElIepKzqQrGG6qE71cFwDyn6rDwW/Objb9aiEITnvJBzk1XrOVgbc5AnlqDm8LKvqToD/VnQiojyXhBQe2wa//nEZ3PC9dv7hE5zb/K/U5z+LaE9T1cPPk1jHQMCUAFT7QGCK0YeX/gAZqPbLZdHHQChEi+Gu/XY0gc5Bl8Idbp8W7Aky9Ps06lKXPORkE1G2xQfJFrNPB3CKjxev/eoXGBJmNYzxkJlUHmyenjwgdDh9TWiOK2uKH1K6olLIx/qFuIgFRVJFv0QFzCjqqjOJJF1EN9i1M21Lm4wi1iJxYShAP86ZKkC/WmtRn1xNTEMHZJeZ3TXX+B3ybLEWTamHS1Ia8HOif18nrQE3O0aRC/NNfH1kewX+94UNxmSfHtL5Waa41shxeG5waemyQg+HR5zCEtrb5l1btgbfGrR8BMbHYLLe4ywJqMx3n8Iy6ZzC6Xx8+X1zTZZ3zDYPBHUalA+ZoYu2rrFG2+SARP0W/VKqCIKaB+lQKYpbv7ojXGrrDJe7MA/raTLL2pTfSkcx0qxJvcsbPLGI1MdG3mD7M8HncrZbw+sKI1LZ04gyWt3til6d3vSlbIkd6kCxxZh69nd1/KJy8rYrMYjqxxNSTctkGyVb2DtY="
- if [ "$TRAVIS_OS_NAME" = "osx" ]; then RELEASE=${RELEASE} ci/build-travis.sh "/usr/local/opt/qt5/lib/cmake/Qt5"; fi
- if [ "$TRAVIS_OS_NAME" = "linux" ]; then docker run -v $TRAVIS_BUILD_DIR:/workspace -v $HOME/.ccache:/ccache nanocurrency/nano-env:$TRAVIS_COMPILER /bin/bash -c "apt install ccache; cd /workspace && RELEASE=${RELEASE} ASAN=${ASAN} TSAN=${TSAN} CCACHE_DIR=/ccache ./ci/build-travis.sh /usr/lib/x86_64-linux-gnu/cmake/Qt5 ${PWD}"; fi
env:
global:
- secure: "k8kmpD+xRS57ukdvlvaXT0WN4H0rr/aHSjV+l5IUUFpKx5N+DEsb+7ElIepKzqQrGG6qE71cFwDyn6rDwW/Objb9aiEITnvJBzk1XrOVgbc5AnlqDm8LKvqToD/VnQiojyXhBQe2wa//nEZ3PC9dv7hE5zb/K/U5z+LaE9T1cPPk1jHQMCUAFT7QGCK0YeX/gAZqPbLZdHHQChEi+Gu/XY0gc5Bl8Idbp8W7Aky9Ps06lKXPORkE1G2xQfJFrNPB3CKjxev/eoXGBJmNYzxkJlUHmyenjwgdDh9TWiOK2uKH1K6olLIx/qFuIgFRVJFv0QFzCjqqjOJJF1EN9i1M21Lm4wi1iJxYShAP86ZKkC/WmtRn1xNTEMHZJeZ3TXX+B3ybLEWTamHS1Ia8HOif18nrQE3O0aRC/NNfH1kewX+94UNxmSfHtL5Waa41shxeG5waemyQg+HR5zCEtrb5l1btgbfGrR8BMbHYLLe4ywJqMx3n8Iy6ZzC6Xx8+X1zTZZ3zDYPBHUalA+ZoYu2rrFG2+SARP0W/VKqCIKaB+lQKYpbv7ojXGrrDJe7MA/raTLL2pTfSkcx0qxJvcsbPLGI1MdG3mD7M8HncrZbw+sKI1LZ04gyWt3til6d3vSlbIkd6kCxxZh69nd1/KJy8rYrMYjqxxNSTctkGyVb2DtY="
- RELEASE=0

View file

@ -9,12 +9,20 @@ execute_process(
OUTPUT_STRIP_TRAILING_WHITESPACE
)
option (CI_BUILD false)
set (CPACK_PACKAGE_VERSION_MAJOR "20")
set (CPACK_PACKAGE_VERSION_MINOR "0")
set (CPACK_PACKAGE_VERSION_PATCH "0")
set (CPACK_PACKAGE_VENDOR "Nano Currency")
set(CMAKE_INSTALL_RPATH "@executable_path/../Frameworks")
if (CI_BUILD)
set (TAG_VERSION_STRING "$ENV{TRAVIS_TAG}")
else()
set (TAG_VERSION_STRING "V${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}")
endif()
set (CMAKE_INSTALL_RPATH "@executable_path/../Frameworks")
# Create all libraries and executables in the root binary dir
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR})
@ -360,9 +368,7 @@ if (NANO_GUI OR RAIBLOCKS_GUI)
target_compile_definitions(qt
PRIVATE
-DNANO_VERSION_MAJOR=${CPACK_PACKAGE_VERSION_MAJOR}
-DNANO_VERSION_MINOR=${CPACK_PACKAGE_VERSION_MINOR}
-DNANO_VERSION_PATCH=${CPACK_PACKAGE_VERSION_PATCH}
-DTAG_VERSION_STRING=${TAG_VERSION_STRING}
-DGIT_COMMIT_HASH=${GIT_COMMIT_HASH})
if (WIN32)
@ -428,6 +434,7 @@ if (NANO_GUI OR RAIBLOCKS_GUI)
endif ()
if (APPLE)
set (CPACK_GENERATOR "DragNDrop")
CONFIGURE_FILE(${CMAKE_SOURCE_DIR}/Info.plist.in ${CMAKE_SOURCE_DIR}/Info.plist @ONLY)
install (TARGETS nano_wallet DESTINATION Nano.app/Contents/MacOS)
install (TARGETS nano_node DESTINATION Nano.app/Contents/MacOS)
@ -435,6 +442,7 @@ if (NANO_GUI OR RAIBLOCKS_GUI)
install (FILES Info.plist DESTINATION Nano.app/Contents)
install (FILES qt.conf DESTINATION Nano.app/Contents/Resources)
install (DIRECTORY ${Qt5_DIR}/../../QtCore.framework DESTINATION Nano.app/Contents/Frameworks)
install (DIRECTORY ${Qt5_DIR}/../../QtDBus.framework DESTINATION Nano.app/Contents/Frameworks)
install (DIRECTORY ${Qt5_DIR}/../../QtGui.framework DESTINATION Nano.app/Contents/Frameworks)
install (DIRECTORY ${Qt5_DIR}/../../QtPrintSupport.framework DESTINATION Nano.app/Contents/Frameworks)
install (DIRECTORY ${Qt5_DIR}/../../QtTest.framework DESTINATION Nano.app/Contents/Frameworks)
@ -472,6 +480,7 @@ if (NANO_GUI OR RAIBLOCKS_GUI)
install (FILES ${Qt5_bin_DIR}/Qt5WinExtras.dll DESTINATION .)
install (FILES ${Qt5WindowsPlugin} DESTINATION platforms)
else ()
set(CPACK_GENERATOR "TBZ2")
install(TARGETS nano_wallet
RUNTIME DESTINATION .
)

40
ci/build-deploy.sh Executable file
View file

@ -0,0 +1,40 @@
#!/bin/bash
qt_dir=${1}
src_dir=${2}
set -o errexit
set -o nounset
set -o xtrace
OS=`uname`
mkdir build
pushd build
if [[ "${BETA:-0}" -eq 1 ]]; then
NETWORK_CFG="beta"
CONFIGURATION="RelWithDebInfo"
else
NETWORK_CFG="live"
CONFIGURATION="Release"
fi
cmake \
-G'Unix Makefiles' \
-DACTIVE_NETWORK=nano_${NETWORK_CFG}_network \
-DNANO_GUI=ON \
-DCMAKE_BUILD_TYPE=${CONFIGURATION} \
-DCMAKE_VERBOSE_MAKEFILE=ON \
-DBOOST_ROOT=/usr/local \
-DQt5_DIR=${qt_dir} \
-DCMAKE_CXX_COMPILER_LAUNCHER=ccache \
-DCI_BUILD=true \
..
if [[ "$OS" == 'Linux' ]]; then
cmake --build ${PWD} --target package --config ${CONFIGURATION} -- -j$(nproc)
else
sudo cmake --build ${PWD} --target package --config ${CONFIGURATION} -- -j2
fi
popd

View file

@ -11,6 +11,12 @@ OS=`uname`
mkdir build
pushd build
if [[ ${RELEASE-0} -eq 1 ]]; then
BUILD_TYPE="RelWithDebInfo"
else
BUILD_TYPE="Debug"
fi
if [[ ${ASAN_INT-0} -eq 1 ]]; then
SANITIZERS="-DNANO_ASAN_INT=ON"
elif [[ ${ASAN-0} -eq 1 ]]; then
@ -28,7 +34,7 @@ cmake \
-DNANO_GUI=ON \
-DNANO_ROCKSDB=ON \
-DNANO_WARN_TO_ERR=ON \
-DCMAKE_BUILD_TYPE=Debug \
-DCMAKE_BUILD_TYPE=${BUILD_TYPE} \
-DCMAKE_VERBOSE_MAKEFILE=ON \
-DBOOST_ROOT=/usr/local \
-DQt5_DIR=${qt_dir} \

View file

@ -13,9 +13,9 @@ if [ -n "$DOCKER_PASSWORD" ]; then
"$scripts"/custom-timeout.sh 30 docker push "$ci_image_name"
fi
if [[ "$TRAVIS_BUILD_STAGE_NAME" == "Deploy" ]]; then
if [[ "$TRAVIS_BUILD_STAGE_NAME" =~ "Artifacts" ]]; then
tags=()
if [[ "${TRAVIS_TAG}" =~ 'RC' ]]; then
if [[ "${TRAVIS_TAG}" =~ ("RC"|"DB") ]]; then
tags+=("$TRAVIS_TAG" latest-including-rc)
elif [ -n "$TRAVIS_TAG" ]; then
tags+=("$TRAVIS_TAG" latest latest-including-rc)
@ -23,14 +23,16 @@ if [ -n "$DOCKER_PASSWORD" ]; then
tags+=("$TRAVIS_BRANCH")
fi
if [[ "$TRAVIS_JOB_NAME" == "live" ]]; then
if [[ "$TRAVIS_JOB_NAME" =~ "live" ]]; then
network_tag_suffix=''
network="live"
else
network_tag_suffix="-$TRAVIS_JOB_NAME"
network_tag_suffix="-beta"
network="beta"
fi
docker_image_name="nanocurrency/nano${network_tag_suffix}"
"$scripts"/custom-timeout.sh 30 docker build --build-arg NETWORK="$TRAVIS_JOB_NAME" -f docker/node/Dockerfile -t "$docker_image_name" .
"$scripts"/custom-timeout.sh 30 docker build --build-arg NETWORK="$network" --build-arg CI_BUILD=true --build-arg TRAVIS_TAG="$TRAVIS_TAG" -f docker/node/Dockerfile -t "$docker_image_name" .
for tag in "${tags[@]}"; do
# Sanitize docker tag
# https://docs.docker.com/engine/reference/commandline/tag/

18
ci/deploy-travis.sh Executable file
View file

@ -0,0 +1,18 @@
#!/bin/bash
set -o errexit
set -o nounset
set -o xtrace
OS=`uname`
if [[ "${BETA-0}" -eq 1 ]]; then
BUILD="beta"
else
BUILD="live"
fi
if [[ "$OS" == 'Linux' ]]; then
aws s3 cp $TRAVIS_BUILD_DIR/build/nano-node-*-Linux.tar.bz2 s3://$AWS_BUCKET/$BUILD/binaries/nano-node-$TRAVIS_TAG-Linux.tar.bz2 --grants read=uri=http://acs.amazonaws.com/groups/global/AllUsers
else
aws s3 cp $TRAVIS_BUILD_DIR/build/nano-node-*-Darwin.dmg s3://$AWS_BUCKET/$BUILD/binaries/nano-node-$TRAVIS_TAG-Darwin.dmg --grants read=uri=http://acs.amazonaws.com/groups/global/AllUsers
fi

View file

@ -1,11 +1,13 @@
FROM nanocurrency/nano-env:gcc
ARG NETWORK=live
ARG TRAVIS_TAG=DEV_BUILD
ARG CI_BUILD=OFF
ADD ./ /tmp/src
RUN mkdir /tmp/build && \
cd /tmp/build && \
cmake /tmp/src -DBOOST_ROOT=${BOOST_ROOT} -DACTIVE_NETWORK=nano_${NETWORK}_network && \
cmake /tmp/src -DCI_BUILD=${CI_BUILD} -DBOOST_ROOT=${BOOST_ROOT} -DACTIVE_NETWORK=nano_${NETWORK}_network && \
make nano_node -j $(nproc) && \
make nano_rpc -j $(nproc) && \
cd .. && \

View file

@ -36,9 +36,7 @@ add_executable (core_test
target_compile_definitions(core_test
PRIVATE
-DNANO_VERSION_MAJOR=${CPACK_PACKAGE_VERSION_MAJOR}
-DNANO_VERSION_MINOR=${CPACK_PACKAGE_VERSION_MINOR}
-DNANO_VERSION_PATCH=${CPACK_PACKAGE_VERSION_PATCH}
-DTAG_VERSION_STRING=${TAG_VERSION_STRING}
-DGIT_COMMIT_HASH=${GIT_COMMIT_HASH}
-DBOOST_PROCESS_SUPPORTED=${BOOST_PROCESS_SUPPORTED})
target_link_libraries (core_test node secure gtest libminiupnpc-static Boost::boost ${rocksdb_libs})

View file

@ -15,8 +15,7 @@
/**
* Returns build version information
*/
static const char * NANO_MAJOR_MINOR_VERSION = xstr (NANO_VERSION_MAJOR) "." xstr (NANO_VERSION_MINOR);
static const char * NANO_MAJOR_MINOR_RC_VERSION = xstr (NANO_VERSION_MAJOR) "." xstr (NANO_VERSION_MINOR) "RC" xstr (NANO_VERSION_PATCH);
static const char * NANO_VERSION_STRING = xstr (TAG_VERSION_STRING);
static const char * BUILD_INFO = xstr (GIT_COMMIT_HASH BOOST_COMPILER) " \"BOOST " xstr (BOOST_VERSION) "\" BUILT " xstr (__DATE__);

View file

@ -14,9 +14,7 @@ target_link_libraries (nano_node
target_compile_definitions(nano_node
PRIVATE
-DNANO_VERSION_MAJOR=${CPACK_PACKAGE_VERSION_MAJOR}
-DNANO_VERSION_MINOR=${CPACK_PACKAGE_VERSION_MINOR}
-DNANO_VERSION_PATCH=${CPACK_PACKAGE_VERSION_PATCH}
-DTAG_VERSION_STRING=${TAG_VERSION_STRING}
-DGIT_COMMIT_HASH=${GIT_COMMIT_HASH}
-DBOOST_PROCESS_SUPPORTED=${BOOST_PROCESS_SUPPORTED})

View file

@ -61,8 +61,7 @@ void nano_daemon::daemon::run (boost::filesystem::path const & data_path, nano::
if (!init.error ())
{
auto network_label = node->network_params.network.get_current_network_as_string ();
auto version = (NANO_VERSION_PATCH == 0) ? NANO_MAJOR_MINOR_VERSION : NANO_MAJOR_MINOR_RC_VERSION;
std::cout << "Network: " << network_label << ", version: " << version << "\n"
std::cout << "Network: " << network_label << ", version: " << NANO_VERSION_STRING << "\n"
<< "Path: " << node->application_path.string () << "\n"
<< "Build Info: " << BUILD_INFO << std::endl;

View file

@ -1058,15 +1058,8 @@ int main (int argc, char * const * argv)
}
else if (vm.count ("version"))
{
if (NANO_VERSION_PATCH == 0)
{
std::cout << "Version " << NANO_MAJOR_MINOR_VERSION << std::endl;
}
else
{
std::cout << "Version " << NANO_MAJOR_MINOR_RC_VERSION << std::endl;
}
std::cout << "Build Info " << BUILD_INFO << std::endl;
std::cout << "Version " << NANO_VERSION_STRING << "\n"
<< "Build Info " << BUILD_INFO << std::endl;
}
else
{

View file

@ -16,9 +16,7 @@ target_compile_definitions(nano_rpc
PUBLIC
-DACTIVE_NETWORK=${ACTIVE_NETWORK}
PRIVATE
-DNANO_VERSION_MAJOR=${CPACK_PACKAGE_VERSION_MAJOR}
-DNANO_VERSION_MINOR=${CPACK_PACKAGE_VERSION_MINOR}
-DNANO_VERSION_PATCH=${CPACK_PACKAGE_VERSION_PATCH}
-DTAG_VERSION_STRING=${TAG_VERSION_STRING}
-DGIT_COMMIT_HASH=${GIT_COMMIT_HASH})
if ((NANO_GUI OR RAIBLOCKS_GUI) AND NOT APPLE)

View file

@ -140,15 +140,8 @@ int main (int argc, char * const * argv)
}
else if (vm.count ("version"))
{
if (NANO_VERSION_PATCH == 0)
{
std::cout << "Version " << NANO_MAJOR_MINOR_VERSION << std::endl;
}
else
{
std::cout << "Version " << NANO_MAJOR_MINOR_RC_VERSION << std::endl;
}
std::cout << "Build Info " << BUILD_INFO << std::endl;
std::cout << "Version " << NANO_VERSION_STRING << "\n"
<< "Build Info " << BUILD_INFO << std::endl;
}
else
{

View file

@ -129,7 +129,5 @@ target_link_libraries (node
target_compile_definitions(node
PRIVATE
-DNANO_VERSION_MAJOR=${CPACK_PACKAGE_VERSION_MAJOR}
-DNANO_VERSION_MINOR=${CPACK_PACKAGE_VERSION_MINOR}
-DNANO_VERSION_PATCH=${CPACK_PACKAGE_VERSION_PATCH}
-DTAG_VERSION_STRING=${TAG_VERSION_STRING}
-DGIT_COMMIT_HASH=${GIT_COMMIT_HASH})

View file

@ -3792,14 +3792,7 @@ void nano::json_handler::version ()
response_l.put ("rpc_version", "1");
response_l.put ("store_version", std::to_string (node.store_version ()));
response_l.put ("protocol_version", std::to_string (nano::protocol_version));
if (NANO_VERSION_PATCH == 0)
{
response_l.put ("node_vendor", boost::str (boost::format ("Nano %1%") % NANO_MAJOR_MINOR_VERSION));
}
else
{
response_l.put ("node_vendor", boost::str (boost::format ("Nano %1%") % NANO_MAJOR_MINOR_RC_VERSION));
}
response_l.put ("node_vendor", boost::str (boost::format ("Nano %1%") % NANO_VERSION_STRING));
response_l.put ("network", node.network_params.network.get_current_network_as_string ());
response_l.put ("network_identifier", nano::genesis ().hash ().to_string ());
response_l.put ("build_info", BUILD_INFO);

View file

@ -359,14 +359,7 @@ startup_time (std::chrono::steady_clock::now ())
});
}
if (NANO_VERSION_PATCH == 0)
{
logger.always_log ("Node starting, version: ", NANO_MAJOR_MINOR_VERSION);
}
else
{
logger.always_log ("Node starting, version: ", NANO_MAJOR_MINOR_RC_VERSION);
}
logger.always_log ("Node starting, version: ", NANO_VERSION_STRING);
logger.always_log ("Build information: ", BUILD_INFO);
auto network_label = network_params.network.get_current_network_as_string ();

View file

@ -79,14 +79,8 @@ wallet (wallet_a)
{
network[0] = std::toupper (network[0]);
}
if (NANO_VERSION_PATCH == 0)
{
version = new QLabel (boost::str (boost::format ("Version %1% %2% network") % NANO_MAJOR_MINOR_VERSION % network).c_str ());
}
else
{
version = new QLabel (boost::str (boost::format ("Version %1% %2% network") % NANO_MAJOR_MINOR_RC_VERSION % network).c_str ());
}
version = new QLabel (boost::str (boost::format ("%1% %2% network") % NANO_VERSION_STRING % network).c_str ());
self_layout->addWidget (your_account_label);
self_layout->addStretch ();
self_layout->addWidget (version);

View file

@ -8,7 +8,5 @@ target_compile_definitions(rpc_test
PUBLIC
-DACTIVE_NETWORK=${ACTIVE_NETWORK}
PRIVATE
-DNANO_VERSION_MAJOR=${CPACK_PACKAGE_VERSION_MAJOR}
-DNANO_VERSION_MINOR=${CPACK_PACKAGE_VERSION_MINOR}
-DNANO_VERSION_PATCH=${CPACK_PACKAGE_VERSION_PATCH}
-DTAG_VERSION_STRING=${TAG_VERSION_STRING}
-DGIT_COMMIT_HASH=${GIT_COMMIT_HASH})

View file

@ -2470,14 +2470,7 @@ TEST (rpc, version)
ASSERT_EQ (std::to_string (node1->store.version_get (transaction)), response1.json.get<std::string> ("store_version"));
}
ASSERT_EQ (std::to_string (nano::protocol_version), response1.json.get<std::string> ("protocol_version"));
if (NANO_VERSION_PATCH == 0)
{
ASSERT_EQ (boost::str (boost::format ("Nano %1%") % NANO_MAJOR_MINOR_VERSION), response1.json.get<std::string> ("node_vendor"));
}
else
{
ASSERT_EQ (boost::str (boost::format ("Nano %1%") % NANO_MAJOR_MINOR_RC_VERSION), response1.json.get<std::string> ("node_vendor"));
}
ASSERT_EQ (boost::str (boost::format ("Nano %1%") % NANO_VERSION_STRING), response1.json.get<std::string> ("node_vendor"));
auto network_label (node1->network_params.network.get_current_network_as_string ());
ASSERT_EQ (network_label, response1.json.get<std::string> ("network"));
auto genesis_open (node1->latest (nano::test_genesis_key.pub));