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        }