openlp/scripts/appveyor.yml

85 lines
4.0 KiB
YAML
Raw Normal View History

2016-11-30 20:54:06 +00:00
version: OpenLP-win-ci-b{build}
2016-11-29 13:07:21 +00:00
init:
- choco install -y --force bzr
- set PATH=C:\Program Files (x86)\Bazaar;%PATH%
clone_script:
2016-11-30 20:54:06 +00:00
- bzr checkout --lightweight BRANCHNAME openlp-branch
2016-11-29 13:07:21 +00:00
environment:
PYTHON: C:\\Python34
install:
# Install dependencies from pypi
2017-03-22 21:35:55 +00:00
- "%PYTHON%\\python.exe -m pip install sqlalchemy alembic chardet beautifulsoup4 Mako nose mock pyodbc==4.0.8 psycopg2 pypiwin32 pyenchant"
2016-11-29 13:07:21 +00:00
# Install mysql dependency
2016-11-29 20:37:39 +00:00
- "%PYTHON%\\python.exe -m pip install http://cdn.mysql.com/Downloads/Connector-Python/mysql-connector-python-2.0.4.zip#md5=3df394d89300db95163f17c843ef49df"
2016-11-29 13:07:21 +00:00
# Download and install lxml and pyicu (originally from http://www.lfd.uci.edu/~gohlke/pythonlibs/)
2016-11-30 20:54:06 +00:00
- "%PYTHON%\\python.exe -m pip install https://get.openlp.org/win-sdk/lxml-3.6.4-cp34-cp34m-win32.whl"
- "%PYTHON%\\python.exe -m pip install https://get.openlp.org/win-sdk/PyICU-1.9.5-cp34-cp34m-win32.whl"
2016-11-29 13:07:21 +00:00
# Download and install PyQt5
2017-03-22 21:35:55 +00:00
- appveyor DownloadFile http://downloads.sourceforge.net/project/pyqt/PyQt5/PyQt-5.5.1/PyQt5-5.5.1-gpl-Py3.4-Qt5.5.1-x32.exe
2016-11-29 13:07:21 +00:00
- PyQt5-5.5.1-gpl-Py3.4-Qt5.5.1-x32.exe /S
# Download and unpack mupdf
2017-03-22 21:35:55 +00:00
- appveyor DownloadFile http://mupdf.com/downloads/archive/mupdf-1.9a-windows.zip
2016-11-29 13:07:21 +00:00
- 7z x mupdf-1.9a-windows.zip
2016-11-30 20:54:06 +00:00
- cp mupdf-1.9a-windows/mupdf.exe openlp-branch/mupdf.exe
2016-11-29 13:07:21 +00:00
# Download and unpack mediainfo
2017-03-22 21:35:55 +00:00
- appveyor DownloadFile https://mediaarea.net/download/binary/mediainfo/0.7.90/MediaInfo_CLI_0.7.90_Windows_i386.zip
2016-11-29 13:07:21 +00:00
- mkdir MediaInfo
2016-11-29 20:37:39 +00:00
- 7z x -oMediaInfo MediaInfo_CLI_0.7.90_Windows_i386.zip
2016-11-30 20:54:06 +00:00
- cp MediaInfo\\MediaInfo.exe openlp-branch\\MediaInfo.exe
2016-11-29 13:07:21 +00:00
build: off
test_script:
2016-11-30 20:54:06 +00:00
- cd openlp-branch
2016-12-15 19:26:18 +00:00
# Run the tests
2017-05-03 20:16:52 +00:00
- "%PYTHON%\\python.exe -m nose -v tests"
2016-11-30 20:54:06 +00:00
# Go back to the user root folder
- cd..
2016-11-29 13:07:21 +00:00
after_test:
# This is where we create a package using PyInstaller
2016-11-29 20:37:39 +00:00
# First get PyInstaller
2017-03-22 21:35:55 +00:00
- appveyor DownloadFile https://github.com/pyinstaller/pyinstaller/releases/download/v3.2/PyInstaller-3.2.zip
2016-12-09 21:22:47 +00:00
- 7z x PyInstaller-3.2.zip
2016-11-30 20:54:06 +00:00
# Install PyInstaller dependencies
2016-12-09 21:22:47 +00:00
- "%PYTHON%\\python.exe -m pip install future pefile"
2016-11-30 20:54:06 +00:00
# Download and install Inno Setup - used for packaging
2017-03-22 21:35:55 +00:00
- appveyor DownloadFile http://www.jrsoftware.org/download.php/is-unicode.exe
2016-11-30 20:54:06 +00:00
- is-unicode.exe /VERYSILENT /SUPPRESSMSGBOXES /SP-
# Download and unpack portable-bundle
2017-03-22 21:35:55 +00:00
- appveyor DownloadFile https://get.openlp.org/win-sdk/portable-setup.7z
2016-11-30 20:54:06 +00:00
- 7z x portable-setup.7z
# Disabled portable installers - can't figure out how to make them silent
# - curl -L -O http://downloads.sourceforge.net/project/portableapps/PortableApps.com%20Installer/PortableApps.comInstaller_3.4.4.paf.exe
# - PortableApps.comInstaller_3.4.4.paf.exe /S
# - curl -L -O http://downloads.sourceforge.net/project/portableapps/PortableApps.com%20Launcher/PortableApps.comLauncher_2.2.1.paf.exe
# - PortableApps.comLauncher_2.2.1.paf.exe /S
# - curl -L -O http://downloads.sourceforge.net/project/portableapps/NSIS%20Portable/NSISPortable_3.0_English.paf.exe
# - NSISPortable_3.0_English.paf.exe /S
# Get the packaging code
2017-03-22 21:35:55 +00:00
- appveyor DownloadFile http://bazaar.launchpad.net/~openlp-core/openlp/packaging/tarball -FileName packaging.tar.gz
- 7z e packaging.tar.gz
- 7z x packaging.tar
- mv ~openlp-core/openlp/packaging packaging
2016-12-09 21:22:47 +00:00
# If this is trunk we should also build the manual
- ps: >-
If (BUILD_DOCS) {
&"$env:PYTHON\python.exe" -m pip install sphinx
Invoke-WebRequest -Uri "http://bazaar.launchpad.net/~openlp-core/openlp/documentation/tarball" -OutFile documentation.tar.gz
7z e documentation.tar.gz
7z x documentation.tar
mv ~openlp-core/openlp/documentation documentation
cd packaging
&"$env:PYTHON\python.exe" builders/windows-builder.py --skip-update -c windows/config-appveyor.ini -b ../openlp-branch -d ../documentation --portable
} else {
cd packaging
&"$env:PYTHON\python.exe" builders/windows-builder.py --skip-update --skip-translations -c windows/config-appveyor.ini -b ../openlp-branch --portable
}
2016-11-30 20:54:06 +00:00
artifacts:
- path: openlp-branch\dist\*.exe