Skip to content

Commit 2ecb9d8

Browse files
committed
Add automated Wheel builds pushed to pypi
1 parent a41e496 commit 2ecb9d8

File tree

1 file changed

+29
-14
lines changed

1 file changed

+29
-14
lines changed

appveyor.yml

Lines changed: 29 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,12 @@ cache:
1010
- '%APPVEYOR_BUILD_FOLDER%\swigwin-4.0.1.zip'
1111

1212
environment:
13+
14+
global:
15+
TWINE_USERNAME: geographika
16+
TWINE_PASSWORD:
17+
secure: 6yuYlaTUIL8SRBakWTke8w==
18+
1319
# VS 2017
1420
VS_VERSION: Visual Studio 15 2017
1521
matrix:
@@ -18,13 +24,13 @@ environment:
1824
SWIG_VER: swigwin-3.0.12
1925
- platform: x64
2026
PYTHON_EXECUTABLE: c:/python27-x64/python.exe
21-
SWIG_VER: swigwin-4.0.1
27+
SWIG_VER: swigwin-4.0.1
2228
- platform: x64
2329
PYTHON_EXECUTABLE: c:/python36-x64/python.exe
24-
SWIG_VER: swigwin-4.0.1
30+
SWIG_VER: swigwin-4.0.1
2531

26-
services:
27-
- mssql2017
32+
services:
33+
- mssql2017
2834

2935
matrix:
3036
fast_finish: true
@@ -63,13 +69,13 @@ build_script:
6369
- set "PROJECT_BINARY_DIR=%BUILD_FOLDER%/build"
6470
- cmake -G "%VS_FULL%" .. -DCMAKE_BUILD_TYPE=Release -DCMAKE_PREFIX_PATH=%SDK_PREFIX% -DFREETYPE_INCLUDE_DIR_freetype2=%SDK_INC%/freetype -DFREETYPE_INCLUDE_DIR_ft2build=%SDK_INC%/freetype -DFREETYPE_LIBRARY=%SDK_LIB%/freetype.lib -DZLIB_INCLUDE_DIR=%SDK_INC% -DZLIB_LIBRARY=%SDK_LIB%/zlib.lib -DPNG_PNG_INCLUDE_DIR=%SDK_INC% -DPNG_LIBRARY=%SDK_LIB%/libpng.lib -DPNG_LIBRARIES=%SDK_LIB%/libpng.lib -DJPEG_INCLUDE_DIR=%SDK_INC% -DJPEG_LIBRARY=%SDK_LIB%/libjpeg.lib -DPROJ_INCLUDE_DIR=%SDK_INC% -DPROJ_LIBRARY=%SDK_LIB%/proj_i.lib -DFRIBIDI_INCLUDE_DIR=%SDK_INC% -DFRIBIDI_LIBRARY=%SDK_LIB%/fribidi.lib -DHARFBUZZ_INCLUDE_DIR=%SDK_INC%/harfbuzz -DHARFBUZZ_LIBRARY=%SDK_LIB%/harfbuzz.lib -DICONV_INCLUDE_DIR=%SDK_INC% -DICONV_LIBRARY=%SDK_LIB%/iconv.lib -DICONV_DLL=%SDK_BIN%/iconv.dll -DCAIRO_INCLUDE_DIR=%SDK_INC% -DCAIRO_LIBRARY=%SDK_LIB%/cairo.lib -DFCGI_INCLUDE_DIR=%SDK_INC% -DFCGI_LIBRARY=%SDK_LIB%/libfcgi.lib -DGEOS_INCLUDE_DIR=%SDK_INC% -DGEOS_LIBRARY=%SDK_LIB%/geos_c.lib -DPOSTGRESQL_INCLUDE_DIR=%SDK_INC% -DPOSTGRESQL_LIBRARY=%SDK_LIB%/libpqdll.lib -DGDAL_INCLUDE_DIR=%SDK_INC% -DGDAL_LIBRARY=%SDK_LIB%/gdal_i.lib -DLIBXML2_INCLUDE_DIR=%SDK_INC%/libxml -DLIBXML2_LIBRARIES=%SDK_LIB%/libxml2.lib -DGIF_INCLUDE_DIR=%SDK_INC% -DGIF_LIBRARY=%SDK_LIB%/giflib.lib -DWITH_CURL=1 -DCURL_INCLUDE_DIR=%SDK_INC% -DCURL_LIBRARY=%SDK_LIB%/libcurl_imp.lib -DMS_EXTERNAL_LIBS=wsock32.lib -DWITH_SOS=1 -DWITH_CLIENT_WFS=1 -DWITH_CLIENT_WMS=1 -DSVG_INCLUDE_DIR=%SDK_INC% -DSVG_LIBRARY=%SDK_LIB%/libsvg.lib -DSVGCAIRO_INCLUDE_DIR=%SDK_INC% -DSVGCAIRO_LIBRARY=%SDK_LIB%/libsvg-cairo.lib -DWITH_SVGCAIRO=1 -DREGEX_DIR=%REGEX_DIR% -DWITH_POINT_Z_M=1 -DWITH_KML=1 -DWITH_THREAD_SAFETY=1 -DSWIG_EXECUTABLE=%SWIG_EXECUTABLE% -DWITH_PYTHON=1 -DPYTHON_EXECUTABLE=%PYTHON_EXECUTABLE% -DWITH_CSHARP=1 -DWITH_MSSQL2008=1 -DPROTOBUFC_COMPILER=%SDK_BIN%/protoc.exe -DPROTOBUFC_LIBRARY=%SDK_LIB%/protobuf-c.lib -DPROTOBUFC_INCLUDE_DIR=%SDK_INC%/include/protobuf-c -DWITH_PROTOBUFC=1 -DCMAKE_C_FLAGS="/WX" -DCMAKE_CXX_FLAGS="/WX"
6571
- cmake --build . --config Release
66-
- cd %BUILD_FOLDER%/build
67-
- set PATH=%BUILD_FOLDER%/build/Release;%SDK_BIN%;%PATH%
68-
- set PROJ_LIB=%SDK_BIN%/proj/SHARE
72+
- cd %BUILD_FOLDER%/build
73+
- set PATH=%BUILD_FOLDER%/build/Release;%SDK_BIN%;%PATH%
74+
- set PROJ_LIB=%SDK_BIN%/proj/SHARE
6975
- cmake --build . --target pythonmapscript-wheel --config Release
7076

71-
before_test:
72-
- set PATH=%PATH%;%SDK_BIN%/gdal/apps
77+
before_test:
78+
- set PATH=%PATH%;%SDK_BIN%/gdal/apps
7379
- cd %BUILD_FOLDER%/msautotest
7480
- set PROJ_LIB=%SDK_BIN%/proj6/share
7581
- "./mssql/create_mssql_db.bat"
@@ -78,22 +84,31 @@ before_test:
7884

7985
test_script:
8086
- set PROJ_LIB=%SDK_BIN%/proj/SHARE
81-
- cd %BUILD_FOLDER%/msautotest/mssql
87+
- cd %BUILD_FOLDER%/msautotest/mssql
8288
- "%PYTHON_EXECUTABLE% run_test.py"
83-
- cd %BUILD_FOLDER%/msautotest/mspython
89+
- cd %BUILD_FOLDER%/msautotest/mspython
8490
- "%PYTHON_EXECUTABLE% run_all_tests.py"
8591

86-
deploy: off
87-
8892
after_test:
8993
- cd %BUILD_FOLDER%
9094
- 7z a mapserver.zip ./build/* > nul
9195

9296
# Uncomment to enable debugging on the server
93-
#on_finish:
97+
# on_finish:
9498
# - ps: $blockRdp = $true; iex ((new-object net.webclient).DownloadString('https://raw.githubusercontent.com/appveyor/ci/master/scripts/enable-rdp.ps1'))
9599

96100
artifacts:
97101
- path: mapserver.zip
98102
name: mapserver
99103
type: zip
104+
105+
deploy_script:
106+
- ps: |
107+
if ($env:APPVEYOR_REPO_BRANCH -ne "master" -or $env:APPVEYOR_REPO_TAG -ne $TRUE) { return }
108+
if ($env:PYTHON_EXECUTABLE -eq "c:/python36-x64/python.exe") {
109+
cd $env:APPVEYOR_BUILD_FOLDER\build\mapscript\python\Release
110+
& $env:PYTHON_EXECUTABLE setup.py sdist
111+
}
112+
echo "Deploying Python Wheel to PyPI"
113+
& $env:PYTHON_EXECUTABLE -m pip --disable-pip-version-check install twine
114+
& $env:PYTHON_EXECUTABLE -m twine upload --repository-url https://test.pypi.org/legacy/ --skip-existing $env:APPVEYOR_BUILD_FOLDER\build\mapscript\python\Release\dist\*

0 commit comments

Comments
 (0)