version: build-{build}
clone_folder: c:\projects\janet
image:
- Visual Studio 2019
configuration:
- Release
- Debug
platform:
- x64
- x86
environment:
  matrix:
  - arch: Win64
matrix:
  fast_finish: true

# skip unsupported combinations
init:
    - call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvarsall.bat" %platform%

install:
    - set JANET_BUILD=%appveyor_repo_commit:~0,7%
    - choco install nsis -y -pre
    # Replace makensis.exe and files with special long string build. This should
    # prevent issues when setting PATH during installation.
    - 7z e "tools\nsis-3.04-strlen_8192.zip" -o"C:\Program Files (x86)\NSIS\" -y
    - build_win all
    - refreshenv
    # We need to reload vcvars after refreshing
    - call "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\VC\Auxiliary\Build\vcvarsall.bat" %platform%
    - build_win test-install
    - set janet_outname=%appveyor_repo_tag_name%
    - if "%janet_outname%"=="" set janet_outname=v1.5.1
build: off

artifacts:
    - name: janet.c
      path: dist\janet.c
      type: File
    - name: janet.h
      path: dist\janet.h
      type: File
    - name: janetconf.h
      path: dist\janetconf.h
      type: File
    - name: shell.c
      path: dist\shell.c
      type: File
    - name: "janet-$(janet_outname)-windows-%platform%"
      path: dist
      type: Zip
    - path: "janet-$(janet_outname)-windows-installer.exe"
      name: "janet-$(janet_outname)-windows-%platform%-installer.exe"
      type: File

deploy:
  description: 'The Janet Programming Language.'
  provider: GitHub
  auth_token:
    secure: lwEXy09qhj2jSH9s1C/KvCkAUqJSma8phFR+0kbsfUc3rVxpNK5uD3z9Md0SjYRx
  artifact: /(janet|shell).*/
  draft: true
  on:
      APPVEYOR_REPO_TAG: true