image: Visual Studio 2015

version: 2.2.{build}

branches:
    only:
        - master

environment:
    COMPILER: msvc
    VSVER: 14

    matrix:
        - QT: C:\Qt\5.9\msvc2015_64
          PLATFORM: amd64
        - QT: C:\Qt\5.9\msvc2015
          PLATFORM: x86

clone_depth: 1

# scripts that run after cloning repository
install:
    - set PATH=%QT%\bin\;C:\Qt\Tools\QtCreator\bin\;C:\Qt\QtIFW2.0.1\bin\;%PATH%
    - git submodule update --init --recursive

# scripts that run before build
before_build:
    - call "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" %PLATFORM%
    # After calling vcvarsall.bat, %PLATFORM% will be X64 or x86
    - qmake --version
    - mkdir build
    - cd build
    - if "%PLATFORM%" EQU "X64" (qmake -r -spec win32-msvc CONFIG+=x86_64 CONFIG-=debug CONFIG+=release ../VNote.pro)
    - if "%PLATFORM%" EQU "x86" (qmake -r -spec win32-msvc CONFIG+=Win32 CONFIG-=debug CONFIG+=release ../VNote.pro)

# custom build scripts
build_script:
    - nmake

# scripts that run after build
after_build:
    - set vnote_version=2.2
    # Clone OpenSSL DLLs
    - git clone https://github.com/tamlok/openssl-utils.git openssl-utils.git
    - mkdir distrib\VNote
    - windeployqt.exe --dir .\distrib\VNote %APPVEYOR_BUILD_FOLDER%\build\src\release\VNote.exe
    - copy "%APPVEYOR_BUILD_FOLDER%\build\src\release\VNote.exe" "distrib\VNote\VNote.exe"
    - copy "%APPVEYOR_BUILD_FOLDER%\README.md" "distrib\VNote\README.md"
    - copy "%APPVEYOR_BUILD_FOLDER%\LICENSE" "distrib\VNote\LICENSE.txt"
    - echo %vnote_version% > "distrib\VNote\version.txt"
    - echo %APPVEYOR_REPO_COMMIT% >> "distrib\VNote\version.txt"
    - copy "distrib\VNote\VNote.exe" "distrib\VNote_win_%PLATFORM%.exe"
    # Delete translations\qt_*.qm
    - del /F /Q "distrib\VNote\translations\qt_*.qm"
    # Copy OpenSSL DLLs
    - if "%PLATFORM%" EQU "X64" (xcopy "openssl-utils.git\win64\*.dll" "distrib\VNote")
    - if "%PLATFORM%" EQU "x86" (xcopy "openssl-utils.git\win32\*.dll" "distrib\VNote")
    - cd distrib
    - 7z a VNote_win_%PLATFORM%_portable_%vnote_version%.zip VNote

artifacts:
    - path: build\distrib\VNote_win_%PLATFORM%_portable_%vnote_version%.zip
      name: portable
    - path: build\distrib\VNote_win_%PLATFORM%.exe
      name: exe_only

deploy:
    - provider: BinTray
      username: tamlok
      api_key:
          secure: YJqzsVDlC2NYH2RgzbUMtjZWbSXOdWUiiENOIqImo31hOfeiB0MiVGmBLmKPAHEg
      subject: tamlok
      repo: vnote
      package: vnote
      version: 2.2
      publish: true
      override: true
      artifact: portable
