appveyor.yml 1.9 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. # Do not build feature branch with open Pull Requests
  2. skip_branch_with_pr: true
  3. # environment variables
  4. environment:
  5. nodejs_version: "6.9"
  6. matrix:
  7. - PYTHON: "C:\\Python35-x64"
  8. PYTHON_VERSION: "3.5.x"
  9. PYTHON_MAJOR: 3
  10. PYTHON_ARCH: "64"
  11. # build cache to preserve files/folders between builds
  12. cache:
  13. - '%LOCALAPPDATA%\\Yarn' # yarn cache
  14. # scripts that run after cloning repository
  15. install:
  16. # If there is a newer build queued for the same PR, cancel this one.
  17. # The AppVeyor 'rollout builds' option is supposed to serve the same
  18. # purpose but it is problematic because it tends to cancel builds pushed
  19. # directly to master instead of just PR builds (or the converse).
  20. # credits: JuliaLang developers.
  21. - ps: if ($env:APPVEYOR_PULL_REQUEST_NUMBER -and $env:APPVEYOR_BUILD_NUMBER -ne ((Invoke-RestMethod `
  22. https://ci.appveyor.com/api/projects/$env:APPVEYOR_ACCOUNT_NAME/$env:APPVEYOR_PROJECT_SLUG/history?recordsNumber=50).builds | `
  23. Where-Object pullRequestId -eq $env:APPVEYOR_PULL_REQUEST_NUMBER)[0].buildNumber) { `
  24. throw "There are newer queued builds for this pull request, failing early." }
  25. # Install node:
  26. - ps: Install-Product node $env:nodejs_version
  27. # Install newer Firefox
  28. - choco install firefox
  29. # Ensure python and python scripts are from right version:
  30. - 'SET "PATH=%PYTHON%;%PYTHON%\\Scripts;%PATH%"'
  31. # Install our package:
  32. - 'pip install --upgrade -e ".[test]"'
  33. - 'jlpm versions'
  34. - 'jlpm config current'
  35. - 'jlpm cache list'
  36. - 'jlpm install'
  37. - 'jlpm run build:main'
  38. - 'jupyter lab build'
  39. build: off
  40. # to run your custom scripts instead of automatic tests
  41. test_script:
  42. # Run integrity first we we see the message.
  43. - 'jlpm run integrity'
  44. - 'py.test'
  45. - 'git status'
  46. - 'jlpm run build'
  47. - 'jlpm run build:test'
  48. - 'jlpm test || jlpm test || jlpm test'
  49. - 'python -m jupyterlab.selenium_check'