Merge pull request #95 from VerusCoin/master

Syncing CI configurations
This commit is contained in:
miketout
2018-07-20 23:37:00 -07:00
committed by GitHub
15 changed files with 222 additions and 99 deletions

View File

@@ -4,14 +4,15 @@ stages:
- deploy - deploy
variables: variables:
VERSION: "0.3.9" VERSION: 0.3.10
AGAMA_ARTIFACTS_LINUX: "linux64.tar.gz" AGAMA_ARTIFACTS_LINUX: linux64.tar.gz
AGAMA_ARTIFACTS_MACOS: "osx.tar.gz" AGAMA_ARTIFACTS_MACOS: osx.tar.gz
AGAMA_ARTIFACTS_WINDOWS: "win64.zip" AGAMA_ARTIFACTS_WINDOWS: win64.zip
VERUS_CLI_DEBIAN: "verus-cli-v${VERSION}-beta-amd64.deb" VERUS_CLI_DEBIAN: verus-cli-v${VERSION}-beta-amd64.deb
VERUS_CLI_LINUX_PORTABLE: "verus-cli-linux-v$VERSION-beta.tar.gz" VERUS_CLI_LINUX_PORTABLE: verus-cli-linux-v$VERSION-beta.tar.gz
VERUS_CLI_WINDOWS_PORTABLE: "verus-cli-windows-v$VERSION-beta.zip" VERUS_CLI_WINDOWS_PORTABLE: verus-cli-windows-v$VERSION-beta.zip
VERUS_CLI_MACOS_PORTABLE: "verus-cli-mac-v$VERSION-beta.tar.gz" VERUS_CLI_MACOS_PORTABLE: verus-cli-mac-v$VERSION-beta.tar.gz
build:linux: build:linux:
image: asherd/veruscoin-cross-compiler:linux image: asherd/veruscoin-cross-compiler:linux
@@ -23,23 +24,26 @@ build:linux:
paths: paths:
- depends/built - depends/built
- .ccache - .ccache
before_script: before_script: # Setup Cache
- mkdir .ccache || echo ccache exists - rm -rf /root/.ccache || true
- ln -s $PWD/.ccache /root/.ccache - mv .ccache /root/ || true
script: script:
- "./zcutil/build.sh" - zcutil/build.sh -j4
##- "./zcutil/build-debian-package.sh" - ./makeReleaseLinux.sh
- "./makeReleaseLinux.sh" - dos2unix kmd/linux/verus-cli/README.txt
- "cd kmd/linux" - tar -C kmd/linux/ -czvf $VERUS_CLI_LINUX_PORTABLE verus-cli ./
- "tar -czvf $VERUS_CLI_LINUX_PORTABLE verus-cli" - mv kmd/linux/verus-cli kmd/linux/linux64
- "mv $VERUS_CLI_LINUX_PORTABLE ../.." - tar -C kmd/linux/ -czvf $AGAMA_ARTIFACTS_LINUX linux64 ./
- "mv verus-cli linux64" after_script:
- "tar -czvf $AGAMA_ARTIFACTS_LINUX linux64" - mv /root/.ccache ./ || true
- "mv $AGAMA_ARTIFACTS_LINUX ../.." cache:
key: ${CI_JOB_NAME}
paths:
- depends/built
- .ccache
artifacts: artifacts:
paths: paths:
- $VERUS_CLI_LINUX_PORTABLE - $VERUS_CLI_LINUX_PORTABLE
## - $VERUS_CLI_DEBIAN
- $AGAMA_ARTIFACTS_LINUX - $AGAMA_ARTIFACTS_LINUX
expire_in: 1 week expire_in: 1 week
@@ -59,19 +63,17 @@ build:windows:
- mkdir .ccache || echo ccache exists - mkdir .ccache || echo ccache exists
- ln -s $PWD/.ccache /root/.ccache - ln -s $PWD/.ccache /root/.ccache
- mkdir .zcash-params || echo zcash-params exists - mkdir .zcash-params || echo zcash-params exists
- ln -s $PWD/.zcash-params /root/.zcash-params
- mkdir .cargo || echo .cargo exists - mkdir .cargo || echo .cargo exists
- ln -s $PWD/.cargo /root/.cargo - ln -s $PWD/.cargo /root/.cargo
script: script:
## add dos2unix - zcutil/build-win.sh
- "./zcutil/build-win.sh" - ./makeReleaseWindows.sh
- "./makeReleaseWindows.sh" - cd kmd/windows/
- "cd kmd/windows/" - zip -r $VERUS_CLI_WINDOWS_PORTABLE verus-cli
- "zip -r $VERUS_CLI_WINDOWS_PORTABLE verus-cli" - mv $VERUS_CLI_WINDOWS_PORTABLE ../..
- "mv $VERUS_CLI_WINDOWS_PORTABLE ../.." - mv verus-cli win64
- "mv verus-cli win64" - zip -r $AGAMA_ARTIFACTS_WINDOWS win64
- "zip -r $AGAMA_ARTIFACTS_WINDOWS win64" - mv $AGAMA_ARTIFACTS_WINDOWS ../..
- "mv $AGAMA_ARTIFACTS_WINDOWS ../.."
artifacts: artifacts:
paths: paths:
- $VERUS_CLI_WINDOWS_PORTABLE - $VERUS_CLI_WINDOWS_PORTABLE
@@ -81,20 +83,18 @@ build:windows:
build:mac: build:mac:
stage: build stage: build
tags: ["osx"] tags: ["High Sierra"]
cache: cache:
key: ${CI_JOB_NAME} key: ${CI_JOB_NAME}
paths: paths:
- depends/built - depends/built
script: script:
- "./zcutil/build-mac.sh | xcpretty" - zcutil/build-mac.sh | xcpretty
- "./makeReleaseMac.sh" - ./makeReleaseMac.sh
- "cd kmd/mac/" - dos2unix kmd/mac/verus-cli/README.txt
- "tar -czvf $VERUS_CLI_MACOS_PORTABLE verus-cli" - tar -C kmd/mac/ -czvf $VERUS_CLI_MACOS_PORTABLE verus-cli ./
- "mv verus-cli-mac-v$VERSION-beta.tar.gz ../.." - mv kmd/mac/verus-cli kmd/mac/osx
- "mv verus-cli osx" - tar -C kmd/mac/ -czvf $AGAMA_ARTIFACTS_MACOS osx ./
- "tar -czvf $AGAMA_ARTIFACTS_MACOS osx"
- "mv $AGAMA_ARTIFACTS_MACOS ../.."
artifacts: artifacts:
paths: paths:
- $VERUS_CLI_MACOS_PORTABLE - $VERUS_CLI_MACOS_PORTABLE
@@ -138,24 +138,118 @@ sast:
paths: [gl-sast-report.json] paths: [gl-sast-report.json]
license_management:
image: docker:stable
variables:
DOCKER_DRIVER: overlay2
allow_failure: true
services:
- docker:stable-dind
script:
- export LICENSE_MANAGEMENT_VERSION=$(echo "$CI_SERVER_VERSION" | sed 's/^\([0-9]*\)\.\([0-9]*\).*/\1-\2-stable/')
- docker run
--volume "$PWD:/code"
"registry.gitlab.com/gitlab-org/security-products/license-management:$LICENSE_MANAGEMENT_VERSION" analyze /code
artifacts:
paths: [gl-license-management-report.json]
ubuntu:xenial:
image: ubuntu:xenial
variables:
DOCKER_DRIVER: overlay2
stage: test
before_script:
- apt update && apt install -y wget g++-multilib libcurl3 python
script:
- tar -xzvf $VERUS_CLI_LINUX_PORTABLE
- export PATH=$PATH:$CI_PROJECT_DIR/verus-cli
- python qa/verus-cli-tests/verus-cli-tester.py
artifacts:
paths: [log.txt]
expire_in: 1 week
dependencies:
- build:linux
ubuntu:bionic:
image: ubuntu:bionic
variables:
DOCKER_DRIVER: overlay2
stage: test
before_script:
- apt update && apt install -y wget g++-multilib libcurl3 python
script:
- tar -xzvf $VERUS_CLI_LINUX_PORTABLE
- export PATH=$PATH:$CI_PROJECT_DIR/verus-cli
- python qa/verus-cli-tests/verus-cli-tester.py
artifacts:
paths: [log.txt]
expire_in: 1 week
dependencies:
- build:linux
.osx:sierra: # fetch-params.sh needs to be fixed for MacOS
stage: test
tags: ["Sierra"]
script:
- tar -xzvf $VERUS_CLI_MACOS_PORTABLE
- export PATH=$PATH:$CI_PROJECT_DIR/verus-cli
- python qa/verus-cli-tests/verus-cli-tester.py
artifacts:
paths: [log.txt]
expire_in: 1 week
dependencies:
- build:mac
.osx:high-sierra: # fetch-params.sh needs to be fixed for MacOS
stage: test
tags: ["High Sierra"]
script:
- tar -xzvf $VERUS_CLI_MACOS_PORTABLE
- export PATH=$PATH:$CI_PROJECT_DIR/verus-cli
- python qa/verus-cli-tests/verus-cli-tester.py
artifacts:
paths: [log.txt]
expire_in: 1 week
dependencies:
- build:mac
windows:10:
stage: test
tags: ["Windows 10"]
script:
- PowerShell Expand-Archive -Path %VERUS_CLI_WINDOWS_PORTABLE% -DestinationPath %CI_PROJECT_DIR%
- set PATH=%PATH%;%CI_PROJECT_DIR%\verus-cli
- qa\verus-cli-tests\verus-cli-tester.py
artifacts:
paths: [log.txt]
expire_in: 1 week
dependencies:
- build:windows
deploy: deploy:
stage: deploy stage: deploy
image: google/cloud-sdk:alpine image: google/cloud-sdk:alpine
variables: variables:
DOCKER_DRIVER: overlay2 DOCKER_DRIVER: overlay2
dependencies: dependencies:
- build:linux - build:linux
- build:windows - build:windows
- build:mac - build:mac
script: script:
- "mkdir $CI_COMMIT_REF_NAME" - mkdir -p $CI_COMMIT_REF_NAME/Windows
- "cd $CI_COMMIT_REF_NAME" - mkdir -p $CI_COMMIT_REF_NAME/Linux
- "mkdir Windows && mkdir Linux @&& mkdir MacOS" - mkdir -p $CI_COMMIT_REF_NAME/MacOS
- "cd .." - mv $VERUS_CLI_WINDOWS_PORTABLE $AGAMA_ARTIFACTS_WINDOWS $CI_COMMIT_REF_NAME/Windows
- "mv $VERUS_CLI_WINDOWS_PORTABLE $AGAMA_ARTIFACTS_WINDOWS $CI_COMMIT_REF_NAME/Windows" - mv $VERUS_CLI_LINUX_PORTABLE $AGAMA_ARTIFACTS_LINUX $CI_COMMIT_REF_NAME/Linux
- "mv $VERUS_CLI_LINUX_PORTABLE $AGAMA_ARTIFACTS_LINUX $CI_COMMIT_REF_NAME/Linux" - mv $VERUS_CLI_MACOS_PORTABLE $AGAMA_ARTIFACTS_MACOS $CI_COMMIT_REF_NAME/MacOS
- "mv $AGAMA_ARTIFACTS_MACOS $VERUS_CLI_MACOS_PORTABLE $CI_COMMIT_REF_NAME/MacOS" - echo "$AUTH_KEY" > AUTH_KEY.json
- 'echo "$AUTH_KEY" > AUTH_KEY.json' - gcloud auth activate-service-account --key-file AUTH_KEY.json
- "gcloud auth activate-service-account --key-file AUTH_KEY.json" - gsutil rsync -r $CI_COMMIT_REF_NAME/ $STAGING/VerusCoin/$CI_COMMIT_REF_NAME/
- "gsutil rsync -r $CI_COMMIT_REF_NAME/ $STAGING/VerusCoin/$CI_COMMIT_REF_NAME/"

17
Brewfile Normal file
View File

@@ -0,0 +1,17 @@
tap "discoteq/discoteq"
tap "homebrew/bundle"
tap "homebrew/cask"
tap "homebrew/cask-versions"
tap "homebrew/core"
brew "autoconf"
brew "autogen"
brew "automake"
brew "binutils"
brew "cmake"
brew "coreutils"
brew "gcc@5"
brew "leveldb"
brew "nanomsg"
brew "protobuf"
brew "wget"
brew "discoteq/discoteq/flock"

View File

@@ -1,4 +1,4 @@
## VerusCoin version 0.3.9-beta ## VerusCoin version 0.3.10-beta
VerusCoin is a new, mineable and stakeable cryptocurrency. It is a live fork of Komodo that retains its Zcash lineage and improves it. VerusCoin will leverage the Komodo platform and dPoW notarization for enhanced security and cross-chain interoperability. We have added a variation of a zawy12, lwma difficulty algorithm, a new CPU-optimized hash algorithm and a new algorithm for fair proof of stake. We describe these changes and vision going forward in a [our Phase I white paper](http://185.25.51.16/papers/VerusPhaseI.pdf) and [our Vision](http://185.25.51.16/papers/VerusVision.pdf). VerusCoin is a new, mineable and stakeable cryptocurrency. It is a live fork of Komodo that retains its Zcash lineage and improves it. VerusCoin will leverage the Komodo platform and dPoW notarization for enhanced security and cross-chain interoperability. We have added a variation of a zawy12, lwma difficulty algorithm, a new CPU-optimized hash algorithm and a new algorithm for fair proof of stake. We describe these changes and vision going forward in a [our Phase I white paper](http://185.25.51.16/papers/VerusPhaseI.pdf) and [our Vision](http://185.25.51.16/papers/VerusVision.pdf).
- [VerusCoin web site https://veruscoin.io/ Wallets and CLI tools](https://veruscoin.io/) - [VerusCoin web site https://veruscoin.io/ Wallets and CLI tools](https://veruscoin.io/)
- [VerusCoin Explorer](https://explorer.veruscoin.io/) - [VerusCoin Explorer](https://explorer.veruscoin.io/)
@@ -71,7 +71,6 @@ Building for Windows:
``` ```
./zcutil/build-win.sh ./zcutil/build-win.sh
``` ```
VerusCoin VerusCoin
------ ------
We develop on dev and some other branches and produce releases of of the master branch, using pull requests to manage what goes into master. We develop on dev and some other branches and produce releases of of the master branch, using pull requests to manage what goes into master.

View File

@@ -1,4 +1,6 @@
#!/usr/bin/env python #!/usr/bin/env python
from __future__ import print_function
''' '''
Run this script inside of src/ and it will look for all the files Run this script inside of src/ and it will look for all the files
that were changed this year that still have the last year in the that were changed this year that still have the last year in the
@@ -46,7 +48,7 @@ for extension in extensions:
filePath = os.getcwd() + filePath filePath = os.getcwd() + filePath
modifiedTime = getLastGitModifiedDate(filePath) modifiedTime = getLastGitModifiedDate(filePath)
if len(modifiedTime) > 0 and str(year) in modifiedTime: if len(modifiedTime) > 0 and str(year) in modifiedTime:
print n,"Last Git Modified: ", modifiedTime, " - ", filePath print(n, "Last Git Modified: ", modifiedTime, " - ", filePath)
os.popen(command % (last_year,year,filePath)) os.popen(command % (last_year,year,filePath))
n = n + 1 n = n + 1

View File

@@ -1,11 +1,11 @@
VerusCoin Command Line Tools v0.3.9-beta VerusCoin Command Line Tools v0.3.10-beta
Contents: Contents:
komodod - VerusCoin's enhanced Komodo daemon komodod - VerusCoin's enhanced Komodo daemon
komodo-cli - VerusCoin's Komodo command line utility komodo-cli - VerusCoin's Komodo command line utility
verus - wrapper for komodo-cli that applies the command to the VRSC coin verus - wrapper for komodo-cli that applies the command to the VRSC coin
verusd - wrapper for komodod that sets the VerusCoin parameters to defaults properly verusd - wrapper for komodod that sets the VerusCoin parameters to defaults properly
The first time on a new system you will need to run ./fetch-params.sh before using komodod or verusd. The first time on a new system you will need to run ./fetch-params before using komodod or verusd.
Run ./verusd to launch komodod, and use verus to run commands such as: Run ./verusd to launch komodod, and use verus to run commands such as:
./verus stop ./verus stop

View File

@@ -2,4 +2,4 @@
DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
cd $DIR cd $DIR
komodo-cli -ac_name=VRSC "$@" ./komodo-cli -ac_name=VRSC "$@"

View File

@@ -1,4 +1,4 @@
#!/bin/bash #!/bin/bash
DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
cd $DIR cd $DIR
komodod -ac_name=VRSC -ac_algo=verushash -ac_cc=1 -ac_supply=0 -ac_eras=3 -ac_reward=0,38400000000,2400000000 -ac_halving=1,43200,1051920 -ac_decay=100000000,0,0 -ac_end=10080,226080,0 -addnode=185.25.48.236 -addnode=185.64.105.111 -ac_timelockgte=19200000000 -ac_timeunlockfrom=129600 -ac_timeunlockto=1180800 -ac_veruspos=50 -gen -genproclimit=0 "$@" ./komodod -ac_name=VRSC -ac_algo=verushash -ac_cc=1 -ac_supply=0 -ac_eras=3 -ac_reward=0,38400000000,2400000000 -ac_halving=1,43200,1051920 -ac_decay=100000000,0,0 -ac_end=10080,226080,0 -addnode=185.25.48.236 -addnode=185.64.105.111 -ac_timelockgte=19200000000 -ac_timeunlockfrom=129600 -ac_timeunlockto=1180800 -ac_veruspos=50 -gen -genproclimit=0 "$@"

View File

View File

@@ -1,4 +1,4 @@
VerusCoin Command Line Tools v0.3.9-beta VerusCoin Command Line Tools v0.3.10-beta
Contents: Contents:
komodod.exe - VerusCoin's enhanced Komodo daemon komodod.exe - VerusCoin's enhanced Komodo daemon
komodo-cli.exe - VerusCoin's Komodo command line utility komodo-cli.exe - VerusCoin's Komodo command line utility

View File

@@ -1,35 +0,0 @@
#!/bin/sh
TMP_DIR=~/tmp/komodo
# make a tmp directory
mkdir -p $TMP_DIR
echo "making $TMP_DIR"
binaries=("komodo-cli" "komodod")
for binary in "${binaries[@]}";
do
echo "copying $binary to $TMP_DIR"
cp src/$binary $TMP_DIR
# find the dylibs to copy for komodod
DYLIBS=`otool -L $TMP_DIR/$binary | grep "/usr/local" | awk -F' ' '{ print $1 }'`
echo "copying $DYLIBS to $TMP_DIR"
# copy the dylibs to the tmpdir
for dylib in $DYLIBS; do cp -rf $dylib $TMP_DIR/; done
# modify komodod to point to dylibs
echo "modifying $binary to use local libraries"
for dylib in $DYLIBS; do install_name_tool -change $dylib @executable_path/`basename $dylib` $TMP_DIR/$binary; done;
done

View File

@@ -1,5 +1,8 @@
#!/bin/sh #!/bin/sh
cp src/komodod src/komodo-cli kmd/linux/verus-cli cp src/komodod src/komodo-cli kmd/linux/verus-cli
chmod +x kmd/linux/verus-cli/komodo* chmod +x kmd/linux/verus-cli/komodo
chmod +x kmd/linux/verus-cli/veru* chmod +x kmd/linux/verus-cli/komodod
chmod +x kmd/linux/verus-cli/verus
chmod +x kmd/linux/verus-cli/verusd
chmod +x kmd/linux/verus-cli/fetch-params

View File

@@ -65,4 +65,8 @@ do
chmod +x $KMD_DIR/$binary chmod +x $KMD_DIR/$binary
done done
chmod +x kmd/mac/verus-cli/fetch-params
chmod +x kmd/linux/verus-cli/verus
chmod +x kmd/linux/verus-cli/verusd

View File

@@ -0,0 +1,39 @@
from subprocess import Popen, check_output, call
from time import sleep
from os import environ, path
daemon_wrapper = "verusd"
cli_wrapper = "verus"
daemon_runtime_seconds = 600
cli_commands = ["getblockchaininfo", "getmininginfo", "getwalletinfo", "stop"]
def start_daemon(daemon_wrapper):
try:
Popen(daemon_wrapper, shell=True, close_fds=True)
except:
exit(1)
def fetch_zcash_params():
try:
call("fetch-params", shell=True)
except:
exit(1)
def run_cli_commands(cli_wrapper, commands):
for command in commands:
command = "%(cli_wrapper)s %(command)s" % locals()
try:
with open(path.join(environ["CI_PROJECT_DIR"], "log.txt"), "a") as log:
command_output = check_output(command, shell=True)
log.write("%(command_output)s\n" % locals())
except:
exit(1)
fetch_zcash_params()
start_daemon(daemon_wrapper)
sleep(daemon_runtime_seconds)
run_cli_commands(cli_wrapper, cli_commands)

View File

@@ -20,7 +20,7 @@ fi
## PACKAGE_VERSION=$($SRC_PATH/src/zcashd --version | grep version | cut -d' ' -f4 | tr -d v) ## PACKAGE_VERSION=$($SRC_PATH/src/zcashd --version | grep version | cut -d' ' -f4 | tr -d v)
## Need version setting from environment ## Need version setting from environment
PACKAGE_VERSION=0.3.9-beta PACKAGE_VERSION=0.3.10-beta
## ##
## Also, what does the sed end up doing? ## Also, what does the sed end up doing?