version: OpenLP-win-ci-b{build} cache: - '%LOCALAPPDATA%\pip\Cache' image: - Visual Studio 2017 environment: matrix: - PYTHON: C:\\Python37-x64 CHOCO_VLC: vlc - PYTHON: C:\\Python37 CHOCO_VLC: vlc --forcex86 install: # Install dependencies from pypi - "%PYTHON%\\python.exe -m pip install sqlalchemy alembic appdirs chardet beautifulsoup4 lxml Mako mysql-connector-python pytest mock pyodbc psycopg2 pypiwin32 websockets asyncio waitress six webob requests QtAwesome PyQt5 PyQtWebEngine pymediainfo PyMuPDF QDarkStyle python-vlc Pyro4 zeroconf" build: off test_script: - cd %APPVEYOR_BUILD_FOLDER% # Run the tests - "%PYTHON%\\python.exe -m pytest -v tests" # Go back to the user root folder - cd.. after_test: # This is where we create a package using PyInstaller # Install PyInstaller - "%PYTHON%\\python.exe -m pip install pyinstaller" # 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 # Download and unpack portable-bundle - appveyor DownloadFile https://get.openlp.org/win-sdk/portable-setup.7z - 7z x portable-setup.7z # Install VLC - choco install %CHOCO_VLC% # Get the packaging code - appveyor DownloadFile https://gitlab.com/openlp/packaging/-/archive/master/packaging-master.zip -FileName packaging-master.zip - 7z x packaging-master.zip # If this is trunk we should also build the manual - ps: >- If ($env:APPVEYOR_REPO_TAG -eq $True) { &"$env:PYTHON\python.exe" -m pip install sphinx Invoke-WebRequest -Uri "https://gitlab.com/openlp/documentation/-/archive/master/documentation-master.zip" -OutFile documentation-master.zip 7z x documentation-master.zip cd packaging-master &"$env:PYTHON\python.exe" builders/windows-builder.py --release --skip-update -c windows/config-appveyor.ini -b "$env:APPVEYOR_BUILD_FOLDER" -d ../documentation-master --portable } else { cd packaging-master &"$env:PYTHON\python.exe" builders/windows-builder.py --skip-update --skip-translations -c windows/config-appveyor.ini -b "$env:APPVEYOR_BUILD_FOLDER" --portable } artifacts: - path: dist\*.exe name: Portable-installer - path: dist\*.msi name: Installer