/brz/remove-bazaar

To get this branch, use:
bzr branch http://gegoxaren.bato24.eu/bzr/brz/remove-bazaar

« back to all changes in this revision

Viewing changes to appveyor.yml

Add appveyor configuration and fix build of extensions on Windows.

Merged from https://code.launchpad.net/~jelmer/brz/appveyor/+merge/364019

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
environment:
 
2
 
 
3
  matrix:
 
4
 
 
5
    - PYTHON: "C:\\Python27"
 
6
      PYTHON_VERSION: "2.7.x"
 
7
      PYTHON_ARCH: "32"
 
8
 
 
9
    - PYTHON: "C:\\Python27-x64"
 
10
      PYTHON_VERSION: "2.7.x"
 
11
      PYTHON_ARCH: "64"
 
12
 
 
13
    - PYTHON: "C:\\Python34"
 
14
      PYTHON_VERSION: "3.4.x"
 
15
      PYTHON_ARCH: "32"
 
16
 
 
17
    - PYTHON: "C:\\Python34-x64"
 
18
      PYTHON_VERSION: "3.4.x"
 
19
      PYTHON_ARCH: "64"
 
20
      DISTUTILS_USE_SDK: "1"
 
21
 
 
22
    - PYTHON: "C:\\Python35"
 
23
      PYTHON_VERSION: "3.5.x"
 
24
      PYTHON_ARCH: "32"
 
25
 
 
26
    - PYTHON: "C:\\Python35-x64"
 
27
      PYTHON_VERSION: "3.5.x"
 
28
      PYTHON_ARCH: "64"
 
29
 
 
30
    - PYTHON: "C:\\Python36"
 
31
      PYTHON_VERSION: "3.6.x"
 
32
      PYTHON_ARCH: "32"
 
33
 
 
34
    - PYTHON: "C:\\Python36-x64"
 
35
      PYTHON_VERSION: "3.6.x"
 
36
      PYTHON_ARCH: "64"
 
37
 
 
38
install:
 
39
  # If there is a newer build queued for the same PR, cancel this one.
 
40
  # The AppVeyor 'rollout builds' option is supposed to serve the same
 
41
  # purpose but it is problematic because it tends to cancel builds pushed
 
42
  # directly to master instead of just PR builds (or the converse).
 
43
  # credits: JuliaLang developers.
 
44
  - ps: if ($env:APPVEYOR_PULL_REQUEST_NUMBER -and $env:APPVEYOR_BUILD_NUMBER -ne ((Invoke-RestMethod `
 
45
        https://ci.appveyor.com/api/projects/$env:APPVEYOR_ACCOUNT_NAME/$env:APPVEYOR_PROJECT_SLUG/history?recordsNumber=50).builds | `
 
46
        Where-Object pullRequestId -eq $env:APPVEYOR_PULL_REQUEST_NUMBER)[0].buildNumber) { `
 
47
          throw "There are newer queued builds for this pull request, failing early." }
 
48
  - ECHO "Filesystem root:"
 
49
  - ps: "ls \"C:/\""
 
50
 
 
51
  - ECHO "Installed SDKs:"
 
52
  - ps: "ls \"C:/Program Files/Microsoft SDKs/Windows\""
 
53
 
 
54
  # Install Python (from the official .msi of http://python.org) and pip when
 
55
  # not already installed.
 
56
  - ps: if (-not(Test-Path($env:PYTHON))) { & appveyor\install.ps1 }
 
57
 
 
58
  # Prepend newly installed Python to the PATH of this build (this cannot be
 
59
  # done from inside the powershell script as it would require to restart
 
60
  # the parent CMD process).
 
61
  - "SET PATH=%PYTHON%;%PYTHON%\\Scripts;%PATH%"
 
62
 
 
63
  # Check that we have the expected version and architecture for Python
 
64
  - "build.cmd %PYTHON%\\python.exe --version"
 
65
  - "build.cmd %PYTHON%\\python.exe -c \"import struct; print(struct.calcsize('P') * 8)\""
 
66
 
 
67
  # Install setuptools/wheel so that we can e.g. use bdist_wheel
 
68
  - "pip install setuptools wheel"
 
69
  # Install cython so we can build C extensions
 
70
  - "pip install cython"
 
71
 
 
72
  - "build.cmd %PYTHON%\\python.exe setup.py develop"
 
73
 
 
74
  - "pip install launchpadlib"
 
75
 
 
76
build_script:
 
77
  # Build the compiled extension
 
78
  - "build.cmd %PYTHON%\\python.exe setup.py build"
 
79
 
 
80
test_script:
 
81
  - "build.cmd %PYTHON%\\python.exe setup.py test"
 
82
  - "build.cmd %PYTHON%\\pythonw.exe setup.py test"
 
83
 
 
84
after_test:
 
85
  - "build.cmd %PYTHON%\\python.exe setup.py bdist_wheel"
 
86
  # http://stackoverflow.com/questions/43255455/unicode-character-causing-error-with-bdist-wininst-on-python-3-but-not-python-2
 
87
  # - "python setup.py bdist_wininst"
 
88
  - "build.cmd %PYTHON%\\python.exe setup.py bdist_msi"
 
89
  - ps: "ls dist"
 
90
 
 
91
artifacts:
 
92
  - path: dist\*