github.com/ethereumproject/go-ethereum@v5.5.2+incompatible/appveyor.yml (about) 1 platform: x64 2 clone_folder: c:\gopath\src\github.com\ethereumproject\go-ethereum 3 os: Visual Studio 2015 4 environment: 5 GOPATH: c:\gopath 6 GCP_PASSWD: 7 secure: erzLJz7qT0kCJa+jZG6Sf9wwkfLYO2UDLzydkKTdwqA= 8 install: 9 - set PATH=%GOPATH%\bin;c:\go\bin;C:\msys64\mingw64\bin;C:\msys64\usr\bin\;%PATH% 10 11 # Install janus. 12 - curl -sL https://raw.githubusercontent.com/ethereumproject/janus/master/get-windows.sh | bash 13 - set PATH=./janusbin;%PATH% 14 15 - ps: $env:VERSION_BASE = "$(janus.exe version -format='v%M.%m.x')" 16 - ps: $env:VERSION = "$(janus.exe version -format='TAG_OR_NIGHTLY')" 17 18 # Install schroedinger. 19 - go get github.com/etcdevteam/go-schroedinger/cmd/schroedinger/... 20 21 # Install Rust. 22 - appveyor DownloadFile https://win.rustup.rs/ -FileName rustup-init.exe 23 - rustup-init -yv --default-toolchain stable --default-host x86_64-pc-windows-gnu 24 - set PATH=%PATH%;%USERPROFILE%\.cargo\bin 25 - rustup update 26 27 # Build sputnikvm-ffi from go-ethereum/vendor dir (depend on 'dep' vendoring version control, instead of 'upstream master' vc). 28 - cd c:\gopath\src\github.com\ethereumproject\go-ethereum\vendor\github.com\ETCDEVTeam\sputnikvm-ffi\c\ffi 29 - cargo build --release --verbose 30 - copy c:\gopath\src\github.com\ethereumproject\go-ethereum\vendor\github.com\ETCDEVTeam\sputnikvm-ffi\c\ffi\target\release\sputnikvm_ffi.lib c:\gopath\src\github.com\ethereumproject\go-ethereum\vendor\github.com\ETCDEVTeam\sputnikvm-ffi\c\sputnikvm.lib 31 # Set build flag definitions. 32 - set CGO_LDFLAGS=-Wl,--allow-multiple-definition c:\gopath\src\github.com\ethereumproject\go-ethereum\vendor\github.com\ETCDEVTeam\sputnikvm-ffi\c\sputnikvm.lib -lws2_32 -luserenv 33 34 - cd c:\gopath\src\github.com\ethereumproject\go-ethereum 35 36 - echo %VERSION_BASE% %VERSION% 37 - echo %PATH% 38 - echo %GOPATH% 39 - go version 40 - go env 41 - go get golang.org/x/sys/windows 42 build_script: 43 # See .circleci/config.yml for explanation about SputnikVM nondeterministic tests absence. 44 - go test -tags="deterministic" ./... 45 - go test -ldflags "-X github.com/ethereumproject/go-ethereum/core.UseSputnikVM=true" -tags="sputnikvm deterministic" ./... 46 - schroedinger.exe -t 5 -f .\schroedinger-tests.txt 47 - go build -tags=sputnikvm -ldflags "-X main.Version=%VERSION%" github.com/ethereumproject/go-ethereum/cmd/geth 48 - ps: >- 49 .\geth.exe version | Where {$_ -match "^Version: "} | %{$actual=($_ -split "\s+")[1];If($actual -ne $env:VERSION){"Expected: `"$env:VERSION`", got: `"$ACTUAL`""; exit 1}} 50 - 7z a geth-classic-win64-%VERSION%.zip geth.exe 51 before_deploy: 52 # Set up GCP upload. 53 - ps: >- 54 If (($env:APPVEYOR_REPO_NAME -eq 'ethereumproject/go-ethereum') -and (($env:APPVEYOR_REPO_BRANCH -eq 'master') -or ($env:APPVEYOR_REPO_TAG -eq 'true'))) { 55 nuget install secure-file -ExcludeVersion 56 secure-file\tools\secure-file -decrypt gcloud-appveyor.json.enc -secret "$env:GCP_PASSWD" -out .gcloud.json 57 } 58 # Deploy on APPVEYOR_REPO_BRANCH=master or APPVEYOR_REPO_TAG=true 59 deploy_script: 60 - ps: >- 61 If (($env:APPVEYOR_REPO_NAME -eq 'ethereumproject/go-ethereum') -and (($env:APPVEYOR_REPO_BRANCH -eq 'master') -or ($env:APPVEYOR_REPO_TAG -eq 'true'))) { 62 janus.exe deploy -to="builds.etcdevteam.com/go-ethereum/$env:VERSION_BASE/" -files="./*.zip" -key="./.gcloud.json" 63 }