appveyor.yml 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102
  1. version: '{build}'
  2. os: Visual Studio 2019
  3. configuration: Release
  4. platform: x86
  5. environment:
  6. DOWNLOAD_APIKEY:
  7. secure: SEKmgfhiwujukYrr2xjqp63FEwvDUcoQOy7pCuYSyu+CTbGRRIzTbUCwwu4EPJmE
  8. APPVEYOR_SAVE_CACHE_ON_ERROR: true
  9. branches:
  10. except:
  11. - coverity_scan # No need for Windows builds on that branch
  12. skip_commits:
  13. message: /\[(skip ci)|(ci skip)\]/
  14. cache: c:\tools\vcpkg\installed -> appveyor.yml
  15. install:
  16. - cd C:\Tools\vcpkg
  17. - git pull
  18. - .\bootstrap-vcpkg.bat
  19. - cd %APPVEYOR_BUILD_FOLDER%
  20. before_build:
  21. - cmd: |
  22. echo Installing dependencies...
  23. vcpkg integrate install
  24. copy mk\cmake\x86-windows.cmake C:\tools\vcpkg\triplets\
  25. vcpkg install boost-date-time:x86-windows
  26. vcpkg install boost-filesystem:x86-windows
  27. vcpkg install boost-format:x86-windows
  28. vcpkg install boost-locale:x86-windows
  29. vcpkg install boost-optional:x86-windows
  30. vcpkg install boost-system:x86-windows
  31. vcpkg remove curl:x86-windows
  32. vcpkg install curl:x86-windows
  33. vcpkg install --recurse freetype:x86-windows
  34. vcpkg install glew:x86-windows
  35. vcpkg install libogg:x86-windows
  36. vcpkg install libraqm:x86-windows
  37. vcpkg install libvorbis:x86-windows
  38. vcpkg install openal-soft:x86-windows
  39. vcpkg install sdl2:x86-windows
  40. vcpkg install sdl2-image[libjpeg-turbo]:x86-windows
  41. git submodule update --init --recursive
  42. echo Running cmake ..
  43. cmake -G "Visual Studio 16" -A Win32 -DVCPKG_BUILD=ON -DCMAKE_TOOLCHAIN_FILE=c:/tools/vcpkg/scripts/buildsystems/vcpkg.cmake -DCMAKE_INSTALL_PREFIX=%P% -DHAVE_SDL=true -DPACKAGE_VCREDIST=true %APPVEYOR_BUILD_FOLDER%
  44. build:
  45. project: ALL_BUILD.vcxproj
  46. parallel: true
  47. verbosity: minimal
  48. after_build:
  49. - cmd: '"C:\Program Files (x86)\CMake\bin\cpack.exe"'
  50. test: off
  51. artifacts:
  52. - path: SuperTux-*
  53. name: setup
  54. deploy:
  55. - provider: GitHub
  56. description: 'SuperTux release'
  57. auth_token:
  58. secure: dsfeuV2aC3dINer3z3PdXnQF6AosFVRTp71hdsaGI+LbcTXfmkH0nmVfqH0Dznyv
  59. artifact: setup
  60. draft: true
  61. on:
  62. appveyor_repo_tag: true # deploy on tag push only
  63. - provider: S3
  64. access_key_id:
  65. secure: +cR4ZicEZHr0OiXAsitUhBL7PsqPzHQZb9q+IKK5P2o=
  66. secret_access_key:
  67. secure: Y3+rqowdiTkG3OgTUD1fb4mJzjb7jUKqCs3CKJuOy6WCHovLmw8ocemOsMyQ3WrR
  68. bucket: supertux-ci-downloads
  69. region: us-west-2
  70. artifact: setup
  71. folder: $(APPVEYOR_REPO_COMMIT)/appveyor/$(PLATFORM)/$(APPVEYOR_JOB_ID)/
  72. after_deploy:
  73. - ps: |
  74. Write-Output Get-FileHash SuperTux-*
  75. foreach ($path in get-ChildItem SuperTux-*) {
  76. $file = Get-Item $path;
  77. $url = "https://supertux-ci-downloads.s3-us-west-2.amazonaws.com/$($Env:APPVEYOR_REPO_COMMIT)/appveyor/$($Env:PLATFORM)/$($Env:APPVEYOR_JOB_ID)/$($file.Name)"
  78. $shasum = Get-FileHash $file -Algorithm SHA256
  79. $postParams = @{
  80. apikey=$Env:DOWNLOAD_APIKEY;
  81. size=$file.length;
  82. url=$url;
  83. branch=$Env:APPVEYOR_REPO_BRANCH;
  84. shasum = $shasum.Hash
  85. }
  86. Invoke-WebRequest -Uri https://download.supertux.org/submit.php -Method POST -Body $postParams
  87. }