version: 1.0.{build}

environment:
  NSIS_ROOT: C:\nsis
  CoverityProjectToken:
    secure: BYP5qnptMazSCwTwgiFHlfqZd7BM3bwTRq2Cbs++ofg=
  CoverityNotificationEmail:
    secure: 0kyu0t8QwQYUQzqguVJP3N+VpEDfET2ArP+JNnOsUELJQvH8qbeQzPTM0ga0ek5G

install:

cache:
  - nsissetup.exe -> appveyor.yaml
  - NsProcess.zip -> appveyor.yaml
  - thirdparty\download -> thirdparty\fetch-thirdparty-deps.ps1

before_build:
- make dependencies

build:
  project: OpenRA.sln
  verbosity: minimal

after_build:
- ps: |
    if ($env:APPVEYOR_SCHEDULED_BUILD -eq "True")
    {
        cov-build.exe --dir cov-int make all
        nuget.exe install PublishCoverity -ExcludeVersion
        PublishCoverity\PublishCoverity.exe compress -o coverity.zip -i cov-int
        $version = Get-Date -format s
        PublishCoverity\PublishCoverity.exe publish `
          -t "$env:CoverityProjectToken" `
          -e "$env:CoverityNotificationEmail" `
          -r "$env:APPVEYOR_REPO_NAME" `
          -z coverity.zip `
          -d "AppVeyor scheduled build ($env:APPVEYOR_BUILD_VERSION)." `
          --codeVersion "$version"
    }

before_test:
- ps: |
    if ($env:APPVEYOR_SCHEDULED_BUILD -eq "True")
    {
         choco install resharper-clt -y
         dupFinder /output=dupReport.xml /show-text OpenRA.sln
         choco install xmlstarlet -y
         xml transform dupFinder.xslt dupReport.xml > dupReport.html
         choco install pandoc -y
    }

test_script:
  - nunit-console-x86.exe OpenRA.Test.dll

after_test:
  - choco install pandoc -y
  - '%LOCALAPPDATA%\Pandoc\pandoc.exe -o README.html README.md'
  - '%LOCALAPPDATA%\Pandoc\pandoc.exe -o CONTRIBUTING.html CONTRIBUTING.md'
  - appveyor DownloadFile "https://raw.githubusercontent.com/wiki/OpenRA/OpenRA/Changelog.md" -FileName Changelog.md
  - '%LOCALAPPDATA%\Pandoc\pandoc.exe -o Changelog.html CHANGELOG.md'
  - make docs
  - '%LOCALAPPDATA%\Pandoc\pandoc.exe -o DOCUMENTATION.html DOCUMENTATION.md'
  - '%LOCALAPPDATA%\Pandoc\pandoc.exe -o Lua-API.html Lua-API.md'
  - cp OpenRA.Game/OpenRA.ico .
  - if not exist nsissetup.exe appveyor DownloadFile "http://downloads.sourceforge.net/project/nsis/NSIS 2/2.46/nsis-2.46-setup.exe" -FileName nsissetup.exe
  - nsissetup /S /D=%NSIS_ROOT%
  - '%NSIS_ROOT%\makensis /DSRCDIR="%APPVEYOR_BUILD_FOLDER%" /DDEPSDIR="%APPVEYOR_BUILD_FOLDER%\thirdparty\download\windows" /V3 packaging/windows/OpenRA.nsi'
  - move /Y %APPVEYOR_BUILD_FOLDER%\packaging\windows\OpenRA.Setup.exe %APPVEYOR_BUILD_FOLDER%\OpenRA-%APPVEYOR_REPO_TAG_NAME%.exe

artifacts:
  - path: OpenRA-$(APPVEYOR_REPO_TAG_NAME).exe
    name: Installer
  - path: coverity.zip
    name: Coverity Build
  - path: dupReport.html
    name: dupFinder Report
