Actions workflow for test and live/beta artifact (#2442)
docker builds as well remove travis and appveyor win use core_test rpc_test for tests move redist into signing, as we only require it if we sign artifacts
This commit is contained in:
parent
8e6cde718b
commit
178026c1b8
21 changed files with 616 additions and 256 deletions
82
.github/workflows/beta_artifacts.yml
vendored
Normal file
82
.github/workflows/beta_artifacts.yml
vendored
Normal file
|
@ -0,0 +1,82 @@
|
|||
name: Beta
|
||||
|
||||
on:
|
||||
push:
|
||||
tags:
|
||||
- V*RC*
|
||||
- V*DB*
|
||||
env:
|
||||
BETA: 1
|
||||
artifact: 1
|
||||
|
||||
jobs:
|
||||
osx_job:
|
||||
runs-on: macOS-latest
|
||||
env:
|
||||
BOOST_ROOT: /tmp/boost
|
||||
steps:
|
||||
- uses: actions/checkout@v1
|
||||
- uses: chrislennon/action-aws-cli@v1.1
|
||||
- name: tag
|
||||
run: echo "::set-env name=TAG::`git describe --tags $GITHUB_SHA`"
|
||||
- name: Checkout Submodules
|
||||
run: git submodule update --init --recursive
|
||||
- name: Fetch Deps
|
||||
run: ci/actions/osx/install_deps.sh
|
||||
- name: Build Artifact
|
||||
run: TRAVIS_TAG=${TAG} ci/build-deploy.sh "/tmp/qt/lib/cmake/Qt5";
|
||||
- name: Deploy Artifact
|
||||
run: ci/actions/deploy.sh
|
||||
env:
|
||||
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
|
||||
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
|
||||
AWS_DEFAULT_REGION: us-east-2
|
||||
|
||||
linux_job:
|
||||
runs-on: ubuntu-18.04
|
||||
steps:
|
||||
- uses: actions/checkout@v1
|
||||
- uses: chrislennon/action-aws-cli@v1.1
|
||||
- name: tag
|
||||
run: echo "::set-env name=TAG::`git describe --tags $GITHUB_SHA`"
|
||||
- name: Checkout Submodules
|
||||
run: git submodule update --init --recursive
|
||||
- name: Fetch Deps
|
||||
run: ci/actions/linux/install_deps.sh
|
||||
- name: Build Artifact
|
||||
run: docker run -v ${GITHUB_WORKSPACE}:/workspace nanocurrency/nano-env:gcc /bin/bash -c "cd /workspace && TRAVIS_TAG=${TAG} ci/build-deploy.sh /usr/lib/x86_64-linux-gnu/cmake/Qt5 ${PWD}"
|
||||
- name: Deploy Artifact
|
||||
run: ci/actions/deploy.sh
|
||||
env:
|
||||
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
|
||||
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
|
||||
AWS_DEFAULT_REGION: us-east-2
|
||||
- name: Deploy Docker (nanocurrency/nano-beta)
|
||||
run: ci/actions/linux/deploy-docker.sh
|
||||
env:
|
||||
DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
|
||||
|
||||
windows_job:
|
||||
runs-on: windows-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v1
|
||||
- uses: chrislennon/action-aws-cli@v1.1
|
||||
- name: tag
|
||||
run: |
|
||||
$TRAVIS_TAG=git describe --tags $GITHUB_SHA
|
||||
echo "::set-env name=TAG::$TRAVIS_TAG"
|
||||
- name: Checkout Submodules
|
||||
run: git submodule update --init --recursive
|
||||
- name: Fetch Deps
|
||||
run: ci/actions/windows/install_deps.ps1
|
||||
- name: Build Artifact
|
||||
run: ci/actions/windows/build.ps1
|
||||
env:
|
||||
CSC_LINK: ${{ secrets.CSC_LINK }}
|
||||
CSC_KEY_PASSWORD: ${{ secrets.CSC_KEY_PASSWORD }}
|
||||
- name: Deploy Artifact
|
||||
run: ci/actions/windows/deploy.ps1
|
||||
env:
|
||||
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
|
||||
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
|
||||
AWS_DEFAULT_REGION: us-east-2
|
19
.github/workflows/develop.yml
vendored
Normal file
19
.github/workflows/develop.yml
vendored
Normal file
|
@ -0,0 +1,19 @@
|
|||
name: Develop
|
||||
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- develop
|
||||
jobs:
|
||||
linux_job:
|
||||
runs-on: ubuntu-18.04
|
||||
steps:
|
||||
- uses: actions/checkout@v1
|
||||
- name: Checkout Submodules
|
||||
run: git submodule update --init --recursive
|
||||
- name: Fetch Deps
|
||||
run: ci/actions/linux/install_deps.sh
|
||||
- name: Deploy Docker (nanocurrency/nano-env)
|
||||
run: ci/actions/linux/deploy-docker.sh
|
||||
env:
|
||||
DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
|
81
.github/workflows/live_artifacts.yml
vendored
Normal file
81
.github/workflows/live_artifacts.yml
vendored
Normal file
|
@ -0,0 +1,81 @@
|
|||
name: Live
|
||||
|
||||
on:
|
||||
push:
|
||||
tags-ignore:
|
||||
- '*RC*'
|
||||
- '*DB*'
|
||||
env:
|
||||
artifact: 1
|
||||
|
||||
jobs:
|
||||
osx_job:
|
||||
runs-on: macOS-latest
|
||||
env:
|
||||
BOOST_ROOT: /tmp/boost
|
||||
steps:
|
||||
- uses: actions/checkout@v1
|
||||
- uses: chrislennon/action-aws-cli@v1.1
|
||||
- name: tag
|
||||
run: echo "::set-env name=TAG::`git describe --tags $GITHUB_SHA`"
|
||||
- name: Checkout Submodules
|
||||
run: git submodule update --init --recursive
|
||||
- name: Fetch Deps
|
||||
run: ci/actions/osx/install_deps.sh
|
||||
- name: Build Artifact
|
||||
run: TRAVIS_TAG=${TAG} ci/build-deploy.sh "/tmp/qt/lib/cmake/Qt5";
|
||||
- name: Deploy Artifact
|
||||
run: ci/actions/deploy.sh
|
||||
env:
|
||||
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
|
||||
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
|
||||
AWS_DEFAULT_REGION: us-east-2
|
||||
|
||||
linux_job:
|
||||
runs-on: ubuntu-18.04
|
||||
steps:
|
||||
- uses: actions/checkout@v1
|
||||
- uses: chrislennon/action-aws-cli@v1.1
|
||||
- name: tag
|
||||
run: echo "::set-env name=TAG::`git describe --tags $GITHUB_SHA`"
|
||||
- name: Checkout Submodules
|
||||
run: git submodule update --init --recursive
|
||||
- name: Fetch Deps
|
||||
run: ci/actions/linux/install_deps.sh
|
||||
- name: Build Artifact
|
||||
run: docker run -v ${GITHUB_WORKSPACE}:/workspace nanocurrency/nano-env:gcc /bin/bash -c "cd /workspace && TRAVIS_TAG=${TAG} ci/build-deploy.sh /usr/lib/x86_64-linux-gnu/cmake/Qt5 ${PWD}"
|
||||
- name: Deploy Artifact
|
||||
run: ci/actions/deploy.sh
|
||||
env:
|
||||
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
|
||||
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
|
||||
AWS_DEFAULT_REGION: us-east-2
|
||||
- name: Deploy Docker (nanocurrency/nano)
|
||||
run: ci/actions/linux/deploy-docker.sh
|
||||
env:
|
||||
DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
|
||||
|
||||
windows_job:
|
||||
runs-on: windows-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v1
|
||||
- uses: chrislennon/action-aws-cli@v1.1
|
||||
- name: tag
|
||||
run: |
|
||||
$TRAVIS_TAG=git describe --tags $GITHUB_SHA
|
||||
echo "::set-env name=TAG::$TRAVIS_TAG"
|
||||
- name: Checkout Submodules
|
||||
run: git submodule update --init --recursive
|
||||
- name: Fetch Deps
|
||||
run: ci/actions/windows/install_deps.ps1
|
||||
- name: Build Artifact
|
||||
run: ci/actions/windows/build.ps1
|
||||
env:
|
||||
CSC_LINK: ${{ secrets.CSC_LINK }}
|
||||
CSC_KEY_PASSWORD: ${{ secrets.CSC_KEY_PASSWORD }}
|
||||
- name: Deploy Artifact
|
||||
run: ci/actions/windows/deploy.ps1
|
||||
env:
|
||||
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }}
|
||||
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
|
||||
AWS_DEFAULT_REGION: us-east-2
|
56
.github/workflows/release_test.yml
vendored
Normal file
56
.github/workflows/release_test.yml
vendored
Normal file
|
@ -0,0 +1,56 @@
|
|||
name: Release Tests
|
||||
|
||||
on:
|
||||
push:
|
||||
tags: '*'
|
||||
|
||||
env:
|
||||
RELEASE: 1
|
||||
artifact: 0
|
||||
|
||||
jobs:
|
||||
osx_test:
|
||||
runs-on: macOS-latest
|
||||
env:
|
||||
BOOST_ROOT: /tmp/boost
|
||||
steps:
|
||||
- uses: actions/checkout@v1
|
||||
- name: Checkout Submodules
|
||||
run: git submodule update --init --recursive
|
||||
- name: Fetch Deps
|
||||
run: TEST=1 ci/actions/osx/install_deps.sh
|
||||
- name: Run Tests
|
||||
run: ci/build-travis.sh "/tmp/qt/lib/cmake/Qt5";
|
||||
|
||||
gcc_test:
|
||||
runs-on: ubuntu-18.04
|
||||
steps:
|
||||
- uses: actions/checkout@v1
|
||||
- name: Checkout Submodules
|
||||
run: git submodule update --init --recursive
|
||||
- name: Fetch Deps
|
||||
run: ci/actions/linux/install_deps.sh
|
||||
- name: Run Tests
|
||||
run: docker run -v ${PWD}:/workspace nanocurrency/nano-env:gcc /bin/bash -c "cd /workspace && RELEASE=1 ./ci/build-travis.sh /usr/lib/x86_64-linux-gnu/cmake/Qt5 ${PWD}"
|
||||
|
||||
clang_test:
|
||||
runs-on: ubuntu-18.04
|
||||
steps:
|
||||
- uses: actions/checkout@v1
|
||||
- name: Checkout Submodules
|
||||
run: git submodule update --init --recursive
|
||||
- name: Fetch Deps
|
||||
run: ci/actions/linux/install_deps.sh
|
||||
- name: Run Tests
|
||||
run: docker run -v ${PWD}:/workspace nanocurrency/nano-env:clang /bin/bash -c "cd /workspace && RELEASE=1 ./ci/build-travis.sh /usr/lib/x86_64-linux-gnu/cmake/Qt5 ${PWD}"
|
||||
|
||||
windows_test:
|
||||
runs-on: windows-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v1
|
||||
- name: Checkout Submodules
|
||||
run: git submodule update --init --recursive
|
||||
- name: Fetch Deps
|
||||
run: ci/actions/windows/install_deps.ps1
|
||||
- name: Run Tests
|
||||
run: ci/actions/windows/build.ps1
|
58
.github/workflows/tests.yml
vendored
Normal file
58
.github/workflows/tests.yml
vendored
Normal file
|
@ -0,0 +1,58 @@
|
|||
name: Tests
|
||||
|
||||
on: [push, pull_request]
|
||||
|
||||
env:
|
||||
RELEASE: 0
|
||||
artifact: 1
|
||||
|
||||
jobs:
|
||||
osx_test:
|
||||
runs-on: macOS-latest
|
||||
env:
|
||||
BOOST_ROOT: /tmp/boost
|
||||
steps:
|
||||
- uses: actions/checkout@v1
|
||||
- name: Checkout Submodules
|
||||
run: git submodule update --init --recursive
|
||||
- name: Fetch Deps
|
||||
run: TEST=1 ci/actions/osx/install_deps.sh
|
||||
- name: Run Tests
|
||||
run: ci/build-travis.sh "/tmp/qt/lib/cmake/Qt5";
|
||||
|
||||
gcc_test:
|
||||
runs-on: ubuntu-18.04
|
||||
steps:
|
||||
- uses: actions/checkout@v1
|
||||
- name: Checkout Submodules
|
||||
run: git submodule update --init --recursive
|
||||
- name: Fetch Deps
|
||||
run: ci/actions/linux/install_deps.sh
|
||||
- name: Run Tests
|
||||
run: docker run -v ${PWD}:/workspace nanocurrency/nano-env:gcc /bin/bash -c "cd /workspace && ./ci/build-travis.sh /usr/lib/x86_64-linux-gnu/cmake/Qt5 ${PWD}"
|
||||
|
||||
clang_test:
|
||||
runs-on: ubuntu-18.04
|
||||
steps:
|
||||
- uses: actions/checkout@v1
|
||||
- name: Checkout Submodules
|
||||
run: git submodule update --init --recursive
|
||||
- name: Fetch Deps
|
||||
run: ci/actions/linux/install_deps.sh
|
||||
- name: Run Tests
|
||||
run: docker run -v ${PWD}:/workspace nanocurrency/nano-env:clang /bin/bash -c "cd /workspace && RELEASE=0 ASAN=0 TSAN=0 ./ci/build-travis.sh /usr/lib/x86_64-linux-gnu/cmake/Qt5 ${PWD}"
|
||||
|
||||
windows_test:
|
||||
runs-on: windows-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v1
|
||||
- name: Windows Defender
|
||||
run: ci/actions/windows/disable_windows_defender.ps1
|
||||
- name: Checkout Submodules
|
||||
run: git submodule update --init --recursive
|
||||
- name: Fetch Deps
|
||||
run: ci/actions/windows/install_deps.ps1
|
||||
- name: Run Tests
|
||||
env:
|
||||
artifact: 0
|
||||
run: ci/actions/windows/build.ps1
|
201
.travis.yml
201
.travis.yml
|
@ -1,201 +0,0 @@
|
|||
language: cpp
|
||||
|
||||
stages:
|
||||
- build_base
|
||||
- build_env
|
||||
- master_beta_docker
|
||||
- tag_test
|
||||
- test
|
||||
- artifacts_beta
|
||||
- artifacts_live
|
||||
jobs:
|
||||
include:
|
||||
- stage: build_base
|
||||
name: "base"
|
||||
if: branch=master AND type=push
|
||||
script:
|
||||
- if [ -n "$DOCKER_PASSWORD" ]; then ci/deploy-docker.sh; fi;
|
||||
- stage: build_env
|
||||
name: "clang"
|
||||
if: branch=master AND type=push
|
||||
script:
|
||||
- if [ -n "$DOCKER_PASSWORD" ]; then ci/deploy-docker.sh; fi;
|
||||
- name: "gcc"
|
||||
if: branch=master AND type=push
|
||||
script:
|
||||
- if [ -n "$DOCKER_PASSWORD" ]; then ci/deploy-docker.sh; fi;
|
||||
- stage: master_beta_docker
|
||||
name: "beta docker master tag"
|
||||
if: tag =~RC|DB
|
||||
script:
|
||||
- if [ -n "$DOCKER_PASSWORD" ]; then TRAVIS_TAG="${TRAVIS_TAG}" 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 cask install xquartz;
|
||||
- brew upgrade cmake;
|
||||
- brew install rocksdb;
|
||||
- util/build_prep/fetch_boost.sh
|
||||
- util/build_prep/macosx/build_qt.sh
|
||||
install:
|
||||
- brew install ccache;
|
||||
- export PATH="/usr/local/opt/ccache/libexec:$PATH";
|
||||
|
||||
- stage: test
|
||||
name: "GCC + ONE_TIME_TESTS"
|
||||
os: linux
|
||||
compiler: gcc
|
||||
dist: trusty
|
||||
sudo: required
|
||||
env:
|
||||
- ONE_TIME_TESTS=true
|
||||
addons:
|
||||
apt:
|
||||
packages:
|
||||
- doxygen
|
||||
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"
|
||||
os: linux
|
||||
compiler: clang
|
||||
dist: trusty
|
||||
sudo: required
|
||||
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"
|
||||
os: osx
|
||||
compiler: clang
|
||||
before_install:
|
||||
- brew update;
|
||||
- brew cask install xquartz;
|
||||
- brew upgrade cmake;
|
||||
- brew install rocksdb;
|
||||
- util/build_prep/fetch_boost.sh
|
||||
- util/build_prep/macosx/build_qt.sh
|
||||
install:
|
||||
- brew install ccache;
|
||||
- export PATH="/usr/local/opt/ccache/libexec:$PATH";
|
||||
|
||||
- stage: artifacts_live
|
||||
name: "live docker"
|
||||
if: tag IS present AND !tag=~RC|DB
|
||||
script:
|
||||
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;
|
||||
- util/build_prep/fetch_rocksdb.sh
|
||||
- util/build_prep/fetch_boost.sh
|
||||
- util/build_prep/macosx/build_qt.sh
|
||||
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 "/tmp/qt/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 [ -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;
|
||||
- util/build_prep/fetch_rocksdb.sh
|
||||
- util/build_prep/fetch_boost.sh
|
||||
- util/build_prep/macosx/build_qt.sh
|
||||
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 "/tmp/qt/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 RELEASE=${RELEASE} ci/build-travis.sh "/tmp/qt/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
|
||||
- AWS_BUCKET=repo.nano.org
|
53
appveyor.yml
53
appveyor.yml
|
@ -1,53 +0,0 @@
|
|||
version: 1.0.{build}
|
||||
pull_requests:
|
||||
do_not_increment_build_number: true
|
||||
skip_branch_with_pr: true
|
||||
max_jobs: 2
|
||||
image: Visual Studio 2017
|
||||
configuration: Release
|
||||
platform: x64
|
||||
environment:
|
||||
VCPKG_DIR: C:\Tools\vcpkg
|
||||
matrix:
|
||||
- network: nano_live_network
|
||||
configuration: Release
|
||||
- network: nano_beta_network
|
||||
configuration: RelWithDebInfo
|
||||
clone_folder: C:\projects\myproject
|
||||
cache: $VCPKG_DIR%\installed\
|
||||
install:
|
||||
- git submodule update --init --recursive
|
||||
- echo set (VCPKG_LIBRARY_LINKAGE static) > temp.txt
|
||||
- type %VCPKG_DIR%\ports\rocksdb\portfile.cmake >> temp.txt
|
||||
- type temp.txt > %VCPKG_DIR%\ports\rocksdb\portfile.cmake
|
||||
- del temp.txt
|
||||
- echo set(VCPKG_BUILD_TYPE release) >> C:\Tools\vcpkg\triplets\x64-windows.cmake
|
||||
- vcpkg install rocksdb:%PLATFORM%-windows
|
||||
- IF NOT DEFINED APPVEYOR_REPO_TAG_NAME (set APPVEYOR_REPO_TAG_NAME=NOT_ARTIFACT)
|
||||
- set TRAVIS_TAG=%APPVEYOR_REPO_TAG_NAME%
|
||||
- cmake -DNANO_GUI=ON -DNANO_POW_SERVER=ON -DCI_BUILD=ON -DCMAKE_BUILD_TYPE=%CONFIGURATION% -DACTIVE_NETWORK=%NETWORK% -DQt5_DIR="C:\Qt\5.9\msvc2017_64\lib\cmake\Qt5" -DNANO_SIMD_OPTIMIZATIONS=TRUE -DBoost_COMPILER="-vc141" -DBOOST_ROOT="C:/Libraries/boost_1_67_0" -DBOOST_LIBRARYDIR="C:/Libraries/boost_1_67_0/lib64-msvc-14.1" -G "Visual Studio 15 2017 Win64" -DNANO_ROCKSDB=ON -DROCKSDB_LIBRARIES="%VCPKG_DIR%\installed\x64-windows\lib\rocksdb.lib" -DROCKSDB_INCLUDE_DIRS="%VCPKG_DIR%\installed\x64_windows\include" -DZLIB_LIBRARY=%VCPKG_DIR%\installed\x64-windows\lib\zlib.lib -DZLIB_INCLUDE_DIR=%VCPKG_DIR%\installed\x64-windows\include -DIPHLPAPI_LIBRARY="C:/Program Files (x86)/Windows Kits/10/Lib/10.0.14393.0/um/x64/iphlpapi.lib" -DWINSOCK2_LIBRARY="C:/Program Files (x86)/Windows Kits/10/Lib/10.0.14393.0/um/x64/WS2_32.lib" .
|
||||
|
||||
- ps: Invoke-WebRequest -Uri https://aka.ms/vs/15/release/vc_redist.x64.exe -OutFile .\vc_redist.x64.exe
|
||||
build:
|
||||
project: INSTALL.vcxproj
|
||||
parallel: true
|
||||
verbosity: minimal
|
||||
after_build:
|
||||
- ps: |
|
||||
if (Test-Path env:CSC_LINK) {
|
||||
$path = Join-Path -Path "$env:TMP" -ChildPath csc.p12
|
||||
[IO.File]::WriteAllBytes($path, [Convert]::FromBase64String($env:CSC_LINK))
|
||||
|
||||
$args = -split 'sign /a /ph /tr http://timestamp.digicert.com /td sha256 /fd sha256'
|
||||
$args += @('/f', $path, '/p', $env:CSC_KEY_PASSWORD, "$env:APPVEYOR_BUILD_FOLDER\$env:CONFIGURATION\*.exe")
|
||||
. 'C:\Program Files (x86)\Microsoft SDKs\Windows\v7.1A\Bin\signtool.exe' $args
|
||||
}
|
||||
- cmd: >-
|
||||
cpack -C %CONFIGURATION% --verbose --config ./CPackConfig.cmake
|
||||
|
||||
cpack -G ZIP -C %CONFIGURATION% --verbose --config ./CPackConfig.cmake
|
||||
artifacts:
|
||||
- path: nano*.zip
|
||||
name: nano_release_%network%
|
||||
- path: nano-node-*.exe
|
||||
name: nano-node-%network%
|
18
ci/actions/deploy.sh
Executable file
18
ci/actions/deploy.sh
Executable 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 $GITHUB_WORKSPACE/build/nano-node-*-Linux.tar.bz2 s3://repo.nano.org/$BUILD/binaries/nano-node-$TAG-Linux.tar.bz2 --grants read=uri=http://acs.amazonaws.com/groups/global/AllUsers
|
||||
else
|
||||
aws s3 cp $GITHUB_WORKSPACE/build/nano-node-*-Darwin.dmg s3://repo.nano.org/$BUILD/binaries/nano-node-$TAG-Darwin.dmg --grants read=uri=http://acs.amazonaws.com/groups/global/AllUsers
|
||||
fi
|
52
ci/actions/linux/deploy-docker.sh
Executable file
52
ci/actions/linux/deploy-docker.sh
Executable file
|
@ -0,0 +1,52 @@
|
|||
#!/bin/bash
|
||||
|
||||
set -e
|
||||
|
||||
if [ -n "$DOCKER_PASSWORD" ]; then
|
||||
echo "$DOCKER_PASSWORD" | docker login -u nanoreleaseteam --password-stdin
|
||||
|
||||
scripts="$PWD/ci"
|
||||
TRAVIS_BRANCH=`git branch| cut -f2 -d' '`
|
||||
if [[ "$GITHUB_WORKFLOW" = "Develop" ]]; then
|
||||
"$scripts"/custom-timeout.sh 30 docker push "nanocurrency/nano-env:base"
|
||||
"$scripts"/custom-timeout.sh 30 docker push "nanocurrency/nano-env:gcc"
|
||||
"$scripts"/custom-timeout.sh 30 docker push "nanocurrency/nano-env:clang"
|
||||
echo "Deployed nano-env"
|
||||
exit 0
|
||||
else
|
||||
tags=()
|
||||
if [ -n "$TRAVIS_TAG" ]; then
|
||||
tags+=("$TRAVIS_TAG" latest latest-including-rc)
|
||||
elif [ -n "$TRAVIS_BRANCH" ]; then
|
||||
TRAVIS_TAG=$TRAVIS_BRANCH
|
||||
tags+=("$TRAVIS_BRANCH")
|
||||
fi
|
||||
if [[ "$GITHUB_WORKFLOW" = "Live" ]]; then
|
||||
echo "Live"
|
||||
network_tag_suffix=''
|
||||
network="live"
|
||||
elif [[ "$GITHUB_WORKFLOW" = "Beta" ]]; then
|
||||
echo "Beta"
|
||||
network_tag_suffix="-beta"
|
||||
network="beta"
|
||||
else
|
||||
echo "Nothing to deploy"
|
||||
exit 1
|
||||
fi
|
||||
docker_image_name="nanocurrency/nano${network_tag_suffix}"
|
||||
"$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/
|
||||
tag="$(printf '%s' "$tag" | tr -c '[a-z][A-Z][0-9]_.-' -)"
|
||||
if [ "$tag" != "latest" ]; then
|
||||
docker tag "$docker_image_name" "${docker_image_name}:$tag"
|
||||
fi
|
||||
"$scripts"/custom-timeout.sh 30 docker push "${docker_image_name}:$tag"
|
||||
done
|
||||
fi
|
||||
echo "$docker_image_name with tags ${tags[*]} deployed"
|
||||
else
|
||||
echo "\$DOCKER_PASSWORD environment variable required"
|
||||
exit 1
|
||||
fi
|
7
ci/actions/linux/install_deps.sh
Executable file
7
ci/actions/linux/install_deps.sh
Executable file
|
@ -0,0 +1,7 @@
|
|||
#!/bin/bash
|
||||
|
||||
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-base nanocurrency/nano-env:base
|
||||
ci/build-docker-image.sh docker/ci/Dockerfile-gcc nanocurrency/nano-env:gcc
|
||||
ci/build-docker-image.sh docker/ci/Dockerfile-clang nanocurrency/nano-env:clang
|
12
ci/actions/osx/install_deps.sh
Executable file
12
ci/actions/osx/install_deps.sh
Executable file
|
@ -0,0 +1,12 @@
|
|||
#!/bin/bash
|
||||
|
||||
brew update
|
||||
brew install coreutils
|
||||
brew cask install xquartz
|
||||
if [[ ${TEST-0} -eq 1 ]]; then
|
||||
brew install rocksdb;
|
||||
else
|
||||
util/build_prep/fetch_rocksdb.sh
|
||||
fi
|
||||
util/build_prep/bootstrap_boost.sh -m -c -B 1.70 && \
|
||||
util/build_prep/macosx/build_qt.sh
|
29
ci/actions/windows/build.bat
Normal file
29
ci/actions/windows/build.bat
Normal file
|
@ -0,0 +1,29 @@
|
|||
@echo off
|
||||
set exit_code=0
|
||||
|
||||
goto %RUN%
|
||||
|
||||
:test
|
||||
cmake --build . ^
|
||||
--target core_test ^
|
||||
--config %BUILD_TYPE% ^
|
||||
-- /m:2
|
||||
set exit_code=%errorlevel%
|
||||
if %exit_code% neq 0 goto exit
|
||||
cmake --build . ^
|
||||
--target rpc_test ^
|
||||
--config %BUILD_TYPE% ^
|
||||
-- /m:2
|
||||
set exit_code=%errorlevel%
|
||||
goto exit
|
||||
|
||||
:artifact
|
||||
cmake --build . ^
|
||||
--target INSTALL ^
|
||||
--config %BUILD_TYPE% ^
|
||||
-- /m:2
|
||||
set exit_code=%errorlevel%
|
||||
goto exit
|
||||
|
||||
:exit
|
||||
exit /B %exit_code%
|
57
ci/actions/windows/build.ps1
Normal file
57
ci/actions/windows/build.ps1
Normal file
|
@ -0,0 +1,57 @@
|
|||
# Stop immediately if any error happens
|
||||
$ErrorActionPreference = "Stop"
|
||||
|
||||
if (${env:artifact} -eq 1) {
|
||||
if ( ${env:BETA} -eq 1 ) {
|
||||
$env:NETWORK_CFG = "beta"
|
||||
$env:BUILD_TYPE = "RelWithDebInfo"
|
||||
} else {
|
||||
$env:NETWORK_CFG = "live"
|
||||
$env:BUILD_TYPE = "Release"
|
||||
}
|
||||
$env:ROCKS_LIB = '-DROCKSDB_LIBRARIES="c:\vcpkg\installed\x64-windows-static\lib\rocksdb.lib"'
|
||||
$env:NANO_TEST = "-DNANO_TEST=OFF"
|
||||
$env:TRAVIS_TAG = ${env:TAG}
|
||||
|
||||
$env:CI = "-DCI_BUILD=ON"
|
||||
$env:RUN = "artifact"
|
||||
} else {
|
||||
if ( ${env:RELEASE} -eq 1 ) {
|
||||
$env:BUILD_TYPE = "RelWithDebInfo"
|
||||
$env:ROCKS_LIB = '-DROCKSDB_LIBRARIES="c:\vcpkg\installed\x64-windows-static\lib\rocksdb.lib"'
|
||||
} else {
|
||||
$env:BUILD_TYPE = "Debug"
|
||||
$env:ROCKS_LIB = '-DROCKSDB_LIBRARIES="c:\vcpkg\installed\x64-windows-static\debug\lib\rocksdbd.lib"'
|
||||
}
|
||||
$env:NETWORK_CFG = "test"
|
||||
$env:NANO_TEST = "-DNANO_TEST=ON"
|
||||
$env:CI = "-DCI_BUILD=OFF"
|
||||
$env:RUN = "test"
|
||||
}
|
||||
|
||||
mkdir build
|
||||
Push-Location build
|
||||
|
||||
& ..\ci\actions\windows\configure.bat
|
||||
if (${LastExitCode} -ne 0) {
|
||||
throw "Failed to configure"
|
||||
}
|
||||
|
||||
if (${env:RUN} -eq "artifact") {
|
||||
$p = Get-Location
|
||||
Invoke-WebRequest -Uri https://aka.ms/vs/15/release/vc_redist.x64.exe -OutFile "$p\vc_redist.x64.exe"
|
||||
}
|
||||
|
||||
& ..\ci\actions\windows\build.bat
|
||||
if (${LastExitCode} -ne 0) {
|
||||
throw "Failed to build ${env:RUN}"
|
||||
}
|
||||
$env:cmake_path = Split-Path -Path(get-command cmake.exe).Path
|
||||
. "$PSScriptRoot\signing.ps1"
|
||||
|
||||
& ..\ci\actions\windows\run.bat
|
||||
if (${LastExitCode} -ne 0) {
|
||||
throw "Failed to Pass Test ${env:RUN}"
|
||||
}
|
||||
|
||||
Pop-Location
|
28
ci/actions/windows/configure.bat
Normal file
28
ci/actions/windows/configure.bat
Normal file
|
@ -0,0 +1,28 @@
|
|||
@echo off
|
||||
set exit_code=0
|
||||
|
||||
echo "BUILD TYPE %BUILD_TYPE%"
|
||||
echo "RUN %RUN%"
|
||||
|
||||
cmake .. ^
|
||||
-Ax64 ^
|
||||
%NANO_TEST% ^
|
||||
%CI% ^
|
||||
-DNANO_ROCKSDB=ON ^
|
||||
%ROCKS_LIB% ^
|
||||
-DROCKSDB_INCLUDE_DIRS="c:\vcpkg\installed\x64-windows-static\include" ^
|
||||
-DZLIB_LIBRARY_RELEASE="c:\vcpkg\installed\x64-windows-static\lib\zlib.lib" ^
|
||||
-DZLIB_LIBRARY_DEBUG="c:\vcpkg\installed\x64-windows-static\debug\lib\zlibd.lib" ^
|
||||
-DZLIB_INCLUDE_DIR="c:\vcpkg\installed\x64-windows-static\include" ^
|
||||
-DQt5_DIR="c:\qt\5.13.1\msvc2017_64\lib\cmake\Qt5" ^
|
||||
-DNANO_GUI=ON ^
|
||||
-DCMAKE_BUILD_TYPE=%BUILD_TYPE% ^
|
||||
-DACTIVE_NETWORK=nano_%NETWORK_CFG%_network ^
|
||||
-DNANO_SIMD_OPTIMIZATIONS=TRUE ^
|
||||
-Dgtest_force_shared_crt=on
|
||||
|
||||
set exit_code=%errorlevel%
|
||||
if %exit_code% neq 0 goto exit
|
||||
|
||||
:exit
|
||||
exit /B %exit_code%
|
13
ci/actions/windows/deploy.ps1
Normal file
13
ci/actions/windows/deploy.ps1
Normal file
|
@ -0,0 +1,13 @@
|
|||
# Stop immediately if any error happens
|
||||
$ErrorActionPreference = "Stop"
|
||||
|
||||
if ( ${env:BETA} -eq 1 ) {
|
||||
$network_cfg="beta"
|
||||
} else {
|
||||
$network_cfg="live"
|
||||
}
|
||||
|
||||
$exe=Resolve-Path -Path $env:GITHUB_WORKSPACE\build\nano-node-*-win64.exe
|
||||
$zip=Resolve-Path -Path $env:GITHUB_WORKSPACE\build\nano-node-*-win64.zip
|
||||
aws s3 cp $exe s3://repo.nano.org/$network_cfg/binaries/nano-node-$env:TAG-win64.exe --grants read=uri=http://acs.amazonaws.com/groups/global/AllUsers
|
||||
aws s3 cp "$zip" s3://repo.nano.org/$network_cfg/binaries/nano-node-$env:TAG-win64.zip --grants read=uri=http://acs.amazonaws.com/groups/global/AllUsers
|
3
ci/actions/windows/disable_windows_defender.ps1
Normal file
3
ci/actions/windows/disable_windows_defender.ps1
Normal file
|
@ -0,0 +1,3 @@
|
|||
Set-MpPreference -DisableArchiveScanning $true
|
||||
Set-MpPreference -DisableRealtimeMonitoring $true
|
||||
Set-MpPreference -DisableBehaviorMonitoring $true
|
68
ci/actions/windows/install_deps.ps1
Normal file
68
ci/actions/windows/install_deps.ps1
Normal file
|
@ -0,0 +1,68 @@
|
|||
function Get-RedirectedUri {
|
||||
<#
|
||||
.SYNOPSIS
|
||||
Gets the real download URL from the redirection.
|
||||
.DESCRIPTION
|
||||
Used to get the real URL for downloading a file, this will not work if downloading the file directly.
|
||||
.EXAMPLE
|
||||
Get-RedirectedURL -URL "https://download.mozilla.org/?product=firefox-latest&os=win&lang=en-US"
|
||||
.PARAMETER URL
|
||||
URL for the redirected URL to be un-obfuscated
|
||||
.NOTES
|
||||
Code from: Redone per issue #2896 in core https://github.com/PowerShell/PowerShell/issues/2896
|
||||
#>
|
||||
|
||||
[CmdletBinding()]
|
||||
param (
|
||||
[Parameter(Mandatory = $true)]
|
||||
[string]$Uri
|
||||
)
|
||||
process {
|
||||
do {
|
||||
try {
|
||||
$request = Invoke-WebRequest -Method Head -Uri $Uri
|
||||
if ($null -ne $request.BaseResponse.ResponseUri) {
|
||||
# This is for Powershell 5
|
||||
$redirectUri = $request.BaseResponse.ResponseUri.AbsoluteUri
|
||||
}
|
||||
elseif ($null -ne $request.BaseResponse.RequestMessage.RequestUri) {
|
||||
# This is for Powershell core
|
||||
$redirectUri = $request.BaseResponse.RequestMessage.RequestUri.AbsoluteUri
|
||||
}
|
||||
|
||||
$retry = $false
|
||||
}
|
||||
catch {
|
||||
if (($_.Exception.GetType() -match "HttpResponseException") -and ($_.Exception -match "302")) {
|
||||
$Uri = $_.Exception.Response.Headers.Location.AbsoluteUri
|
||||
$retry = $true
|
||||
}
|
||||
else {
|
||||
throw $_
|
||||
}
|
||||
}
|
||||
} while ($retry)
|
||||
|
||||
$redirectUri
|
||||
}
|
||||
}
|
||||
|
||||
$qt5_root = "c:\qt"
|
||||
$rocksdb_url = Get-RedirectedUri "https://repo.nano.org/artifacts/rocksdb-msvc14.1-latest.7z"
|
||||
$qt5base_url = Get-RedirectedUri "https://download.qt.io/online/qtsdkrepository/windows_x86/desktop/qt5_5131/qt.qt5.5131.win64_msvc2017_64/5.13.1-0-201909031231qtbase-Windows-Windows_10-MSVC2017-Windows-Windows_10-X86_64.7z"
|
||||
$qt5winextra_url = Get-RedirectedUri "https://download.qt.io/online/qtsdkrepository/windows_x86/desktop/qt5_5131/qt.qt5.5131.win64_msvc2017_64/5.13.1-0-201909031231qtwinextras-Windows-Windows_10-MSVC2017-Windows-Windows_10-X86_64.7z"
|
||||
$rocksdb_artifact = "${env:TMP}\rocksdb.7z"
|
||||
$qt5base_artifact = "${env:TMP}\qt5base.7z"
|
||||
$qt5winextra_artifact = "${env:TMP}\qt5winextra.7z"
|
||||
|
||||
(New-Object System.Net.WebClient).DownloadFile($qt5base_url, $qt5base_artifact)
|
||||
(New-Object System.Net.WebClient).DownloadFile($qt5winextra_url, $qt5winextra_artifact)
|
||||
mkdir $qt5_root
|
||||
Push-Location $qt5_root
|
||||
7z x "${env:TMP}\qt5*.7z"
|
||||
Pop-Location
|
||||
|
||||
Push-Location ${env:VCPKG_INSTALLATION_ROOT}
|
||||
(New-Object System.Net.WebClient).DownloadFile($rocksdb_url, $rocksdb_artifact)
|
||||
7z x $rocksdb_artifact
|
||||
Pop-Location
|
26
ci/actions/windows/run.bat
Normal file
26
ci/actions/windows/run.bat
Normal file
|
@ -0,0 +1,26 @@
|
|||
@echo off
|
||||
set exit_code=0
|
||||
set count=0
|
||||
|
||||
goto %RUN%
|
||||
|
||||
:test
|
||||
if %count% equ 10 goto rpc_test
|
||||
call %BUILD_TYPE%\core_test.exe
|
||||
set core_code=%errorlevel%
|
||||
set /a count=count+1
|
||||
if %core_code% neq 0 goto test
|
||||
|
||||
:rpc_test
|
||||
call %BUILD_TYPE%\rpc_test.exe
|
||||
set rpc_code=%errorlevel%
|
||||
echo Core Test %core_code%
|
||||
echo RPC Test %rpc_code%
|
||||
|
||||
exit /B %core_code%
|
||||
|
||||
:artifact
|
||||
echo "Packaging NSIS"
|
||||
call "%cmake_path%\cpack.exe" -C %BUILD_TYPE%
|
||||
echo "Packaging ZIP"
|
||||
call "%cmake_path%\cpack.exe" -G ZIP -C %BUILD_TYPE%
|
7
ci/actions/windows/signing.ps1
Normal file
7
ci/actions/windows/signing.ps1
Normal file
|
@ -0,0 +1,7 @@
|
|||
if (Test-Path env:CSC_LINK) {
|
||||
$path = Join-Path -Path "$env:TMP" -ChildPath csc.p12
|
||||
[IO.File]::WriteAllBytes($path, [Convert]::FromBase64String($env:CSC_LINK))
|
||||
$args = -split 'sign /a /ph /tr http://timestamp.digicert.com /td sha256 /fd sha256'
|
||||
$args += @('/f', $path, '/p', $env:CSC_KEY_PASSWORD, "$env:BUILD_TYPE\*.exe")
|
||||
. "C:\Program Files (x86)\Windows Kits\10\App Certification Kit\signtool.exe" $args
|
||||
}
|
|
@ -31,7 +31,6 @@ cmake \
|
|||
-DCMAKE_VERBOSE_MAKEFILE=ON \
|
||||
-DBOOST_ROOT=/tmp/boost/ \
|
||||
-DQt5_DIR=${qt_dir} \
|
||||
-DCMAKE_CXX_COMPILER_LAUNCHER=ccache \
|
||||
-DCI_BUILD=true \
|
||||
..
|
||||
|
||||
|
|
|
@ -61,7 +61,6 @@ cmake \
|
|||
-DCMAKE_VERBOSE_MAKEFILE=ON \
|
||||
-DBOOST_ROOT=/tmp/boost/ \
|
||||
-DQt5_DIR=${qt_dir} \
|
||||
-DCMAKE_CXX_COMPILER_LAUNCHER=ccache \
|
||||
${SANITIZERS} \
|
||||
..
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue