From d1485ea49130058d9e1d0838a480d05ab6c25c65 Mon Sep 17 00:00:00 2001 From: Philipp Wolfer Date: Mon, 11 Feb 2019 21:16:20 +0100 Subject: [PATCH] Appveyor: Convert Python install script to PowerShell Also install Python only if not already on wanted version --- appveyor.yml | 10 +--------- scripts/win-update-python.ps1 | 13 +++++++++++++ 2 files changed, 14 insertions(+), 9 deletions(-) create mode 100644 scripts/win-update-python.ps1 diff --git a/appveyor.yml b/appveyor.yml index 85406926a..5fbf68c40 100644 --- a/appveyor.yml +++ b/appveyor.yml @@ -26,16 +26,8 @@ init: SET PYTHON_SITE=%PYTHON%\lib\site-packages install: -- cmd: >- - appveyor DownloadFile https://www.python.org/ftp/python/%PYTHON_VERSION%/python-%PYTHON_VERSION%-amd64.exe -FileName python-amd64.exe +- ps: .\scripts\win-update-python.ps1 - python-amd64.exe /quiet InstallAllUsers=1 TargetDir=%PYTHON% Include_doc=0 Include_tcltk=0 Include_test=0 - - python -m ensurepip - - python --version - - pip3 --version build_script: - cmd: >- appveyor DownloadFile https://github.com/metabrainz/libdiscid/releases/download/v%DISCID_VERSION%/libdiscid-%DISCID_VERSION%-win64.zip -FileName libdiscid.zip diff --git a/scripts/win-update-python.ps1 b/scripts/win-update-python.ps1 new file mode 100644 index 000000000..a1e46548b --- /dev/null +++ b/scripts/win-update-python.ps1 @@ -0,0 +1,13 @@ +$CurrentVersion = python -c "import sys; print('%s.%s.%s' % sys.version_info[0:3])" +Write-Output "Python installed: $CurrentVersion, wanted: $env:PYTHON_VERSION" + +if ($CurrentVersion -ne $env:PYTHON_VERSION) { + $InstallerUrl = 'https://www.python.org/ftp/python/' + $env:PYTHON_VERSION + '/python-' + $env:PYTHON_VERSION + '-amd64.exe' + Write-Output "Downloading and installing $InstallerUrl..." + (new-object net.webclient).DownloadFile($InstallerUrl, 'python-amd64.exe') + python-amd64.exe /quiet InstallAllUsers=1 TargetDir=%PYTHON% Include_doc=0 Include_tcltk=0 Include_test=0 + python -m ensurepip +} + +python --version +pip3 --version