version: "{build}"
clone_folder: c:\gopath\src\github.com\lifei6671\mindoc

environment:
  GOPATH: c:\gopath
  GOVERSION: "1.10.3"
  matrix:
    - tbs_arch: "x86"
      tbs_tools: "mingw"
      tbs_static_runtime: 1
      GOARCH: 386

    - tbs_arch: "x64"
      tbs_tools: "mingw"
      tbs_static_runtime: 1
      GOARCH: amd64

install:

  - ps: if($env:tbs_tools -eq 'mingw' -and $env:tbs_arch -eq 'x64')
        {
            Start-FileDownload "http://libgd.blob.core.windows.net/mingw/x86_64-4.9.1-release-posix-seh-rt_v3-rev1.7z" -FileName mingw_x86_64.7z;
            7z x -oC:\ mingw_x86_64.7z | out-null;
        }
  - ps: if($env:tbs_tools -eq 'mingw' -and $env:tbs_arch -eq 'x86')
        {
            Start-FileDownload "http://libgd.blob.core.windows.net/mingw/i686-4.9.1-release-posix-dwarf-rt_v3-rev1.7z" -FileName mingw_x86.7z;
            7z x -oC:\ mingw_x86.7z | out-null;
        }
  - ps: if($env:tbs_arch -eq 'x86')
        {
           Start-FileDownload  https://github.com/golang/dep/releases/download/v0.4.1/dep-windows-386.exe;
           copy dep-windows-386.exe c:\go\bin\dep.exe;
        }
  - ps: if($env:tbs_arch -eq 'x64')
        {
            Start-FileDownload  https://github.com/golang/dep/releases/download/v0.4.1/dep-windows-amd64.exe;
            copy dep-windows-amd64.exe c:\go\bin\dep.exe;
        }
  - set PATH=%GOPATH%\bin;c:\go\bin;%PATH%
  - echo %PATH%
  - echo %GOPATH%
  - go version
  - go env

build_script:
  - if [%tbs_tools%]==[mingw] if [%tbs_arch%]==[x86] SET PATH=C:\mingw32\bin;%PATH%
  - if [%tbs_tools%]==[mingw] if [%tbs_arch%]==[x64] SET PATH=C:\mingw64\bin;%PATH%
  - set CGO_ENABLED=1
  - for /f "delims=" %%i in ('go version') do (set GO_VERSION=%%i)
  - cd c:\gopath\src\github.com\lifei6671\mindoc
  - dep ensure -v
  - go build -v -o "mindoc_windows_%GOARCH%.exe" -ldflags="-w -X github.com/lifei6671/mindoc/conf.VERSION=%APPVEYOR_REPO_TAG_NAME% -X 'github.com/lifei6671/mindoc/conf.BUILD_TIME=%date% %time%' -X 'conf.GO_VERSION=%GO_VERSION%'"
  - 7z a -t7z -r mindoc_windows_%GOARCH%.7z conf/*.conf* static/* mindoc_windows_%GOARCH%.exe views/* uploads/*
test_script:
  - mindoc_windows_%GOARCH%.exe version

notifications:
  - provider: Email
    to:
      - lifei6671@163.com
    on_build_success: false

artifacts:
  - path: mindoc_windows_%GOARCH%.7z
    name: Releases

deploy:
  - provider: GitHub
    auth_token:
        secure: "Qkhxloft5lBKti7O+vVS+Vrxh7CBAUVhlfdZ9ptBXjFtjt6jHXnaBA2uv2OYbISB"
    draft: false
    prerelease: false
    artifact:  mindoc_windows_%GOARCH%.7z
    on:
      appveyor_repo_tag: true