# version format
version: "{build}"

# Operating system (build VM template)
os: Windows Server 2012 R2

# Platform.
platform: x64

clone_folder: c:\gopath\src\github.com\minio\minio

# Environment variables
environment:
  GOPATH: c:\gopath
  GO15VENDOREXPERIMENT: 1

# scripts that run after cloning repository
install:
  - set PATH=%GOPATH%\bin;c:\go\bin;%PATH%
  - go version
  - go env
  - python --version

# To run your custom scripts instead of automatic MSBuild
build_script:
  # Compile
  - appveyor AddCompilationMessage "Starting Compile"
  - cd c:\gopath\src\github.com\minio\minio
  - go run buildscripts/gen-ldflags.go > temp.txt
  - set /p BUILD_LDFLAGS=<temp.txt
  - go build -ldflags="%BUILD_LDFLAGS%" -o %GOPATH%\bin\minio.exe
  - appveyor AddCompilationMessage "Compile Success"

# To run your custom scripts instead of automatic tests
test_script:
  # Unit tests
  - ps: Add-AppveyorTest "Unit Tests" -Outcome Running
  - mkdir build\coverage
  - go test -race github.com/minio/minio/cmd...
  - go test -race github.com/minio/minio/pkg...
  - go test -coverprofile=build\coverage\coverage.txt -covermode=atomic github.com/minio/minio/cmd
  - ps: Update-AppveyorTest "Unit Tests" -Outcome Passed

after_test:
  - go tool cover -html=build\coverage\coverage.txt -o build\coverage\coverage.html
  - ps: Push-AppveyorArtifact build\coverage\coverage.txt
  - ps: Push-AppveyorArtifact build\coverage\coverage.html
  # Upload coverage report.
  - "SET PATH=C:\\Python34;C:\\Python34\\Scripts;%PATH%"
  - pip install codecov
  - codecov -X gcov -f "build\coverage\coverage.txt"

# to disable deployment
deploy: off