From 522c4984e0be2616dd3649a4838e583168b9b827 Mon Sep 17 00:00:00 2001 From: Asher Dawes Date: Tue, 16 Oct 2018 18:39:33 -0700 Subject: [PATCH] Updating CI config (#135) --- .gitlab-ci.yml | 149 ++++++------- README.md | 2 +- .../man/verus-cli/linux}/README.txt | 2 +- .../man/verus-cli/mac}/README.txt | 2 +- .../man/verus-cli/windows}/README.txt | 2 +- kmd/linux/verus-cli/fetch-params | 199 ------------------ kmd/linux/verus-cli/verus | 5 - kmd/linux/verus-cli/verusd | 4 - kmd/mac/verus-cli/fetch-params | 199 ------------------ kmd/mac/verus-cli/verus | 7 - kmd/mac/verus-cli/verusd | 6 - makeReleaseLinux.sh | 8 - makeReleaseMac.sh | 56 ++--- src/verus | 2 +- {kmd/windows/verus-cli => src}/verus.bat | 0 {kmd/windows/verus-cli => src}/verusd.bat | 0 .../verus-cli => zcutil}/fetch-params.bat | 0 {kmd/windows/verus-cli => zcutil}/wget64.exe | Bin 18 files changed, 111 insertions(+), 532 deletions(-) rename {kmd/linux/verus-cli => doc/man/verus-cli/linux}/README.txt (92%) rename {kmd/mac/verus-cli => doc/man/verus-cli/mac}/README.txt (96%) rename {kmd/windows/verus-cli => doc/man/verus-cli/windows}/README.txt (97%) delete mode 100644 kmd/linux/verus-cli/fetch-params delete mode 100755 kmd/linux/verus-cli/verus delete mode 100755 kmd/linux/verus-cli/verusd delete mode 100644 kmd/mac/verus-cli/fetch-params delete mode 100755 kmd/mac/verus-cli/verus delete mode 100755 kmd/mac/verus-cli/verusd delete mode 100755 makeReleaseLinux.sh rename {kmd/windows/verus-cli => src}/verus.bat (100%) rename {kmd/windows/verus-cli => src}/verusd.bat (100%) rename {kmd/windows/verus-cli => zcutil}/fetch-params.bat (100%) rename {kmd/windows/verus-cli => zcutil}/wget64.exe (100%) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index f56c24c71..59a877a07 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -5,11 +5,16 @@ stages: variables: - VERSION: 0.4.0 - VERUS_CLI_LINUX: "Verus-CLI-Linux-v${VERSION}-beta.tar.gz" - VERUS_CLI_WINDOWS: "Verus-CLI-Windows-v${VERSION}-beta.zip" - VERUS_CLI_MACOS: "Verus-CLI-MacOS-v${VERSION}-beta.tar.gz" - POST_COMMENT: "Branch and Commit: ${CI_COMMIT_REF_NAME} ${CI_COMMIT_SHA} $'\n'MD5: " + VERSION: 0.4.1 + VERUS_CLI_LINUX: Verus-CLI-Linux-v${VERSION}.tar.gz + VERUS_CLI_WINDOWS: Verus-CLI-Windows-v${VERSION}.zip + VERUS_CLI_MACOS: Verus-CLI-MacOS-v${VERSION}.tar.gz + DOWNSTREAM_AGAMA_BRANCH: ${CI_COMMIT_REF_NAME} + POST_MESSAGE: "Source: ${CI_PROJECT_NAME}/${CI_COMMIT_REF_NAME}\n + Pipeline Trigger: ${CI_PIPELINE_SOURCE}\n + Commit: ${CI_COMMIT_SHA}$\n + Author: ${GITLAB_USER_NAME} <${GITLAB_USER_EMAIL}>\n + ${CI_COMMIT_MESSAGE}" build:linux: @@ -17,43 +22,42 @@ build:linux: variables: DOCKER_DRIVER: overlay2 stage: build - before_script: # Setup Cache - - rm -rf /root/.ccache || true - - mv .ccache /root/ || true - script: - - zcutil/build.sh -j$(nproc) - - cp src/komodod src/komodo-cli kmd/linux/verus-cli - - chmod +x kmd/linux/verus-cli/komodod - - chmod +x kmd/linux/verus-cli/komodo-cli - - chmod +x kmd/linux/verus-cli/verus - - chmod +x kmd/linux/verus-cli/verusd - - chmod +x kmd/linux/verus-cli/fetch-params - - dos2unix kmd/linux/verus-cli/README.txt - - cd kmd/linux/ - - tar -czvf $VERUS_CLI_LINUX verus-cli - - mv $VERUS_CLI_LINUX ../.. - - cd ../.. - - export VERUS_CLI_LINUX_MD5=$(md5sum $VERUS_CLI_LINUX | cut -d " " -f 1) - - curl -F file=@"$VERUS_CLI_LINUX" - -F channels="$CLI_POST_CHANNEL" - -F initial_comment="${POST_COMMENT}$VERUS_CLI_LINUX_MD5" - -H "${SLACK_BOT_AUTH}" - "https://slack.com/api/files.upload" - after_script: - - mv /root/.ccache ./ || true cache: key: ${CI_JOB_NAME} paths: - depends/built - - .ccache + script: + - zcutil/build.sh -j$(nproc) + - mkdir verus-cli + - cp src/komodod + src/komodo-cli + src/verus + src/verusd + doc/man/verus-cli/linux/README.txt + zcutil/fetch-params.sh + verus-cli + - mv verus-cli/fetch-params.sh verus-cli/fetch-params + - chmod +x verus-cli/komodod + - chmod +x verus-cli/komodo-cli + - chmod +x verus-cli/verus + - chmod +x verus-cli/verusd + - chmod +x verus-cli/fetch-params + - tar -czvf ${VERUS_CLI_LINUX} verus-cli + - md5sum ${VERUS_CLI_LINUX} > ${VERUS_CLI_LINUX}.md5 + - curl -F file=@"${VERUS_CLI_LINUX}" + -F channels="${CLI_POST_CHANNEL}" + -F initial_comment="${POST_MESSAGE}" + -H "${SLACK_BOT_AUTH}" + "https://slack.com/api/files.upload" artifacts: paths: - - $VERUS_CLI_LINUX + - ${VERUS_CLI_LINUX} + - ${VERUS_CLI_LINUX}.md5 expire_in: 1 week build:windows: - image: asherd/veruscoin-cross-compiler:latest + image: asherd/veruscoin-cross-compiler:windows variables: DOCKER_DRIVER: overlay2 stage: build @@ -61,29 +65,27 @@ build:windows: key: ${CI_JOB_NAME} paths: - depends/built - - .ccache - - .cargo - before_script: - - mkdir .ccache || echo ccache exists - - ln -s $PWD/.ccache /root/.ccache - - mkdir .zcash-params || echo zcash-params exists - - mkdir .cargo || echo .cargo exists - - ln -s $PWD/.cargo /root/.cargo script: - zcutil/build-win.sh -j$(nproc) - - cp src/komodod.exe src/komodo-cli.exe src/komodo-tx.exe kmd/windows/verus-cli - - cd kmd/windows/ - - zip -r $VERUS_CLI_WINDOWS verus-cli - - mv $VERUS_CLI_WINDOWS ../.. - - cd ../.. - - export VERUS_CLI_WINDOWS_MD5=$(md5sum $VERUS_CLI_WINDOWS | cut -d " " -f 1) - - curl -F file=@"$VERUS_CLI_WINDOWS" - -F channels="$CLI_POST_CHANNEL" - -F initial_comment="${POST_COMMENT}$VERUS_CLI_WINDOWS_MD5" + - mkdir verus-cli + - cp src/komodod.exe + src/komodo-cli.exe + src/komodo-tx.exe + doc/man/verus-cli/windows/README.txt + zcutil/fetch-params.bat + zcutil/wget64.exe + verus-cli + - zip -r ${VERUS_CLI_WINDOWS} verus-cli + - md5sum ${VERUS_CLI_WINDOWS} > ${VERUS_CLI_WINDOWS}.md5 + - curl -F file=@"${VERUS_CLI_WINDOWS}" + -F channels="${CLI_POST_CHANNEL}" + -F initial_comment="${POST_MESSAGE}" -H "${SLACK_BOT_AUTH}" "https://slack.com/api/files.upload" artifacts: - paths: [$VERUS_CLI_WINDOWS] + paths: + - ${VERUS_CLI_WINDOWS} + - ${VERUS_CLI_WINDOWS}.md5 expire_in: 1 week @@ -96,18 +98,19 @@ build:mac: - depends/built script: - brew bundle - - zcutil/build-mac.sh -j$(sysctl -n hw.physicalcpu) | xcpretty + - zcutil/build-mac.sh -j$(sysctl -n hw.physicalcpu) - ./makeReleaseMac.sh - - dos2unix kmd/mac/verus-cli/README.txt - - tar -C kmd/mac/ -czvf $VERUS_CLI_MACOS verus-cli ./ - - export VERUS_CLI_MACOS_MD5=$(md5sum $VERUS_CLI_MACOS | cut -d " " -f 1) - - curl -F file=@"$VERUS_CLI_MACOS" - -F channels="$CLI_POST_CHANNEL" - -F initial_comment="${POST_COMMENT}$VERUS_CLI_MACOS_MD5" + - tar -czvf ${VERUS_CLI_MACOS} verus-cli + - md5sum ${VERUS_CLI_MACOS} > ${VERUS_CLI_MACOS}.md5 + - curl -F file=@"${VERUS_CLI_MACOS}" + -F channels="${CLI_POST_CHANNEL}" + -F initial_comment="${POST_MESSAGE}" -H "${SLACK_BOT_AUTH}" "https://slack.com/api/files.upload" artifacts: - paths: [$VERUS_CLI_MACOS] + paths: + - ${VERUS_CLI_MACOS} + - ${VERUS_CLI_MACOS}.md5 expire_in: 1 week @@ -169,11 +172,11 @@ build:mac: DOCKER_DRIVER: overlay2 stage: test before_script: - - apt update && apt install -y wget g++-multilib libcurl3 python + - apt update && apt install -y wget libgomp1 libcurl3 python - rm -rf /root/.komodo || true - mv .komodo /root/ || true script: - - tar -xzvf $VERUS_CLI_LINUX + - tar -xzvf ${VERUS_CLI_LINUX} - export PATH=$PATH:$CI_PROJECT_DIR/verus-cli - python qa/verus-cli-tests/verus-cli-tester.py after_script: @@ -194,11 +197,11 @@ build:mac: DOCKER_DRIVER: overlay2 stage: test before_script: - - apt update && apt install -y wget g++-multilib libcurl3 python + - apt update && apt install -y wget libgomp1 libcurl3 python - rm -rf /root/.komodo || true - mv .komodo /root/ || true script: - - tar -xzvf $VERUS_CLI_LINUX + - tar -xzvf ${VERUS_CLI_LINUX} - export PATH=$PATH:$CI_PROJECT_DIR/verus-cli - python qa/verus-cli-tests/verus-cli-tester.py after_script: @@ -213,7 +216,7 @@ build:mac: - build:linux -.osx:sierra: # fetch-params.sh needs to be fixed for MacOS +.macos:sierra: # fetch-params.sh needs to be fixed for MacOS stage: test tags: ["Sierra"] script: @@ -227,11 +230,11 @@ build:mac: - build:mac -.osx:high-sierra: # fetch-params.sh needs to be fixed for MacOS +.macos:high-sierra: stage: test tags: ["High Sierra"] script: - - tar -xzvf $VERUS_CLI_MACOS + - tar -xzvf ${VERUS_CLI_MACOS} - export PATH=$PATH:$CI_PROJECT_DIR/verus-cli - python qa/verus-cli-tests/verus-cli-tester.py artifacts: @@ -266,18 +269,18 @@ deploy: - build:mac script: - mkdir Windows && mkdir Linux && mkdir MacOS && - mv $VERUS_CLI_WINDOWS Windows && - mv $VERUS_CLI_LINUX Linux && - mv $VERUS_CLI_MACOS MacOS + mv ${VERUS_CLI_WINDOWS} Windows && + mv ${VERUS_CLI_LINUX} Linux && + mv ${VERUS_CLI_MACOS} MacOS - echo "$AUTH_KEY" > AUTH_KEY.json && gcloud auth activate-service-account --key-file AUTH_KEY.json - gsutil cp -r Windows Linux MacOS $STAGING/VerusCoin/$CI_COMMIT_REF_NAME/ - curl -X POST -F token="$CI_JOB_TOKEN" - -F ref=dev - -F variables\[UPSTREAM_CLI_BRANCH\]="$CI_COMMIT_REF_NAME" - -F variables\[VERUS_CLI_LINUX\]="$VERUS_CLI_LINUX" - -F variables\[VERUS_CLI_WINDOWS\]="$VERUS_CLI_WINDOWS" - -F variables\[VERUS_CLI_MACOS\]="$VERUS_CLI_MACOS" + -F ref="$DOWNSTREAM_AGAMA_BRANCH" + -F variables\[UPSTREAM_TRIGGER_INFO\]="${POST_MESSAGE}" + -F variables\[VERUS_CLI_LINUX\]="${VERUS_CLI_LINUX}" + -F variables\[VERUS_CLI_WINDOWS\]="${VERUS_CLI_WINDOWS}" + -F variables\[VERUS_CLI_MACOS\]="${VERUS_CLI_MACOS}" "https://gitlab.com/api/v4/projects/8018592/trigger/pipeline" diff --git a/README.md b/README.md index af1d26195..620f71684 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -## VerusCoin version 0.4.0-beta +## VerusCoin version 0.4.1 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/) diff --git a/kmd/linux/verus-cli/README.txt b/doc/man/verus-cli/linux/README.txt similarity index 92% rename from kmd/linux/verus-cli/README.txt rename to doc/man/verus-cli/linux/README.txt index 4ddd78c7e..991b187c2 100644 --- a/kmd/linux/verus-cli/README.txt +++ b/doc/man/verus-cli/linux/README.txt @@ -1,4 +1,4 @@ -VerusCoin Command Line Tools v0.4.0-beta +VerusCoin Command Line Tools v0.4.1 Contents: komodod - VerusCoin's enhanced Komodo daemon diff --git a/kmd/mac/verus-cli/README.txt b/doc/man/verus-cli/mac/README.txt similarity index 96% rename from kmd/mac/verus-cli/README.txt rename to doc/man/verus-cli/mac/README.txt index 23ea44f2a..dff8c2b36 100644 --- a/kmd/mac/verus-cli/README.txt +++ b/doc/man/verus-cli/mac/README.txt @@ -1,4 +1,4 @@ -VerusCoin Command Line Tools v0.4.0-beta +VerusCoin Command Line Tools v0.4.1 Contents: komodod - VerusCoin's enhanced Komodo daemon. komodo-cli - VerusCoin's enhanced Komodo command line utility. diff --git a/kmd/windows/verus-cli/README.txt b/doc/man/verus-cli/windows/README.txt similarity index 97% rename from kmd/windows/verus-cli/README.txt rename to doc/man/verus-cli/windows/README.txt index 1d3e7c812..e3f419a96 100644 --- a/kmd/windows/verus-cli/README.txt +++ b/doc/man/verus-cli/windows/README.txt @@ -1,4 +1,4 @@ -VerusCoin Command Line Tools v0.4.0-beta +VerusCoin Command Line Tools v0.4.1 Contents: komodod.exe - VerusCoin's enhanced Komodo daemon komodo-cli.exe - VerusCoin's Komodo command line utility diff --git a/kmd/linux/verus-cli/fetch-params b/kmd/linux/verus-cli/fetch-params deleted file mode 100644 index fd602b858..000000000 --- a/kmd/linux/verus-cli/fetch-params +++ /dev/null @@ -1,199 +0,0 @@ -#!/bin/bash - -set -eu - -if [[ "$OSTYPE" == "darwin"* ]]; then - PARAMS_DIR="$HOME/Library/Application Support/ZcashParams" -else - PARAMS_DIR="$HOME/.zcash-params" -fi - -SPROUT_PKEY_NAME='sprout-proving.key' -SPROUT_VKEY_NAME='sprout-verifying.key' -SAPLING_SPEND_NAME='sapling-spend.params' -SAPLING_OUTPUT_NAME='sapling-output.params' -SAPLING_SPROUT_GROTH16_NAME='sprout-groth16.params' -SPROUT_URL="https://z.cash/downloads" -SPROUT_IPFS="/ipfs/QmZKKx7Xup7LiAtFRhYsE1M7waXcv9ir9eCECyXAFGxhEo" - -SHA256CMD="$(command -v sha256sum || echo shasum)" -SHA256ARGS="$(command -v sha256sum >/dev/null || echo '-a 256')" - -WGETCMD="$(command -v wget || echo '')" -IPFSCMD="$(command -v ipfs || echo '')" -CURLCMD="$(command -v curl || echo '')" - -# fetch methods can be disabled with ZC_DISABLE_SOMETHING=1 -ZC_DISABLE_WGET="${ZC_DISABLE_WGET:-}" -ZC_DISABLE_IPFS="${ZC_DISABLE_IPFS:-}" -ZC_DISABLE_CURL="${ZC_DISABLE_CURL:-}" - -function fetch_wget { - if [ -z "$WGETCMD" ] || ! [ -z "$ZC_DISABLE_WGET" ]; then - return 1 - fi - - local filename="$1" - local dlname="$2" - - cat <&2 <&2 - exit 1 - fi - fi -} - -# Use flock to prevent parallel execution. -function lock() { - local lockfile=/tmp/fetch_params.lock - if [[ "$OSTYPE" == "darwin"* ]]; then - if shlock -f ${lockfile} -p $$; then - return 0 - else - return 1 - fi - else - # create lock file - eval "exec 200>$lockfile" - # acquire the lock - flock -n 200 \ - && return 0 \ - || return 1 - fi -} - -function exit_locked_error { - echo "Only one instance of fetch-params.sh can be run at a time." >&2 - exit 1 -} - -function main() { - - lock fetch-params.sh \ - || exit_locked_error - - cat <> "$README_PATH" <&2 <&2 - exit 1 - fi - fi -} - -# Use flock to prevent parallel execution. -function lock() { - local lockfile=/tmp/fetch_params.lock - if [[ "$OSTYPE" == "darwin"* ]]; then - if shlock -f ${lockfile} -p $$; then - return 0 - else - return 1 - fi - else - # create lock file - eval "exec 200>$lockfile" - # acquire the lock - flock -n 200 \ - && return 0 \ - || return 1 - fi -} - -function exit_locked_error { - echo "Only one instance of fetch-params.sh can be run at a time." >&2 - exit 1 -} - -function main() { - - lock fetch-params.sh \ - || exit_locked_error - - cat <> "$README_PATH" <