From 6adf749e9988ac3af3f2264371fda5cd25e23698 Mon Sep 17 00:00:00 2001 From: Tomas Groth Date: Sat, 14 Jul 2018 21:56:11 +0200 Subject: [PATCH 1/2] Change appveyor integration to not rely on bzr. --- scripts/appveyor-webhook.py | 13 ++++++++----- scripts/appveyor.yml | 13 ++++++------- 2 files changed, 14 insertions(+), 12 deletions(-) diff --git a/scripts/appveyor-webhook.py b/scripts/appveyor-webhook.py index f969b0e70..f5b148c55 100755 --- a/scripts/appveyor-webhook.py +++ b/scripts/appveyor-webhook.py @@ -92,21 +92,24 @@ def get_yml(branch, build_type): f = open('appveyor.yml') yml_text = f.read() f.close() - yml_text = yml_text.replace('BRANCHNAME', branch) + version_string, version = get_version() + yml_text = yml_text.replace('TAG', version_string) if build_type in ['openlp', 'trunk']: + yml_text = yml_text.replace('BRANCHPATH', '~openlp-core/openlp/trunk') yml_text = yml_text.replace('BUILD_DOCS', '$TRUE') else: + yml_text = yml_text.replace('BRANCHPATH', branch.split(':')[1]) yml_text = yml_text.replace('BUILD_DOCS', '$FALSE') - return yml_text + return yml_text, version_string -def hook(webhook_url, yml): +def hook(webhook_url, branch, build_type): """ Activate the webhook to start the build """ + yml, version_string = get_yml(branch, build_type) webhook_element['config'] = yml webhook_element['commit']['message'] = 'Building ' + branch - version_string, version = get_version() webhook_element['commit']['id'] = version_string request = urllib.request.Request(webhook_url) request.add_header('Content-Type', 'application/json;charset=utf-8') @@ -137,7 +140,7 @@ else: if build_type not in ['dev', 'trunk', 'openlp']: print('Invalid build type\nUsage: %s ' % sys.argv[0]) exit() - hook(webhook_url, get_yml(branch, build_type)) + hook(webhook_url, branch, build_type) # Wait 5 seconds to make sure the hook has been triggered time.sleep(5) get_appveyor_build_url(build_type) diff --git a/scripts/appveyor.yml b/scripts/appveyor.yml index 316e5f73b..a7704fb15 100644 --- a/scripts/appveyor.yml +++ b/scripts/appveyor.yml @@ -1,11 +1,10 @@ version: OpenLP-win-ci-b{build} -init: - - choco install -y --force bzr - - set PATH=C:\Program Files (x86)\Bazaar;%PATH% - clone_script: - - bzr checkout --lightweight BRANCHNAME openlp-branch + - curl -L https://bazaar.launchpad.net/~tomasgroth/openlp/pco-24/tarball -o pco.tar.gz + - 7z e pco.tar.gz + - 7z x pco.tar + - mv ~tomasgroth/openlp/pco-24 openlp-branch environment: PYTHON: C:\\Python34 @@ -74,10 +73,10 @@ after_test: 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 + &"$env:PYTHON\python.exe" builders/windows-builder.py --skip-update -c windows/config-appveyor.ini -b ../openlp-branch -d ../documentation --portable --tag-override TAG } else { cd packaging - &"$env:PYTHON\python.exe" builders/windows-builder.py --skip-update --skip-translations -c windows/config-appveyor.ini -b ../openlp-branch --portable + &"$env:PYTHON\python.exe" builders/windows-builder.py --skip-update --skip-translations -c windows/config-appveyor.ini -b ../openlp-branch --portable --tag-override TAG } artifacts: From 378ad41747baf47c2fb5d7bf0649fa19eb12a1bb Mon Sep 17 00:00:00 2001 From: Tomas Groth Date: Mon, 16 Jul 2018 22:01:47 +0200 Subject: [PATCH 2/2] More improvements to appveyor integration. --- scripts/appveyor-webhook.py | 4 ++-- scripts/appveyor.yml | 10 +++++----- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/scripts/appveyor-webhook.py b/scripts/appveyor-webhook.py index f5b148c55..ce02b7aee 100755 --- a/scripts/appveyor-webhook.py +++ b/scripts/appveyor-webhook.py @@ -81,7 +81,7 @@ def get_version(): latest = output.decode('utf-8').split(':')[0] version_string = latest == revision and tag or 'r%s' % latest # Save decimal version in case we need to do a portable build. - version = latest == revision and tag or '%s.%s' % (tag, latest) + version = latest == revision and tag or '%s-bzr%s' % (tag, latest) return version_string, version @@ -93,7 +93,7 @@ def get_yml(branch, build_type): yml_text = f.read() f.close() version_string, version = get_version() - yml_text = yml_text.replace('TAG', version_string) + yml_text = yml_text.replace('TAG', version) if build_type in ['openlp', 'trunk']: yml_text = yml_text.replace('BRANCHPATH', '~openlp-core/openlp/trunk') yml_text = yml_text.replace('BUILD_DOCS', '$TRUE') diff --git a/scripts/appveyor.yml b/scripts/appveyor.yml index a7704fb15..168b99fb5 100644 --- a/scripts/appveyor.yml +++ b/scripts/appveyor.yml @@ -1,17 +1,17 @@ version: OpenLP-win-ci-b{build} clone_script: - - curl -L https://bazaar.launchpad.net/~tomasgroth/openlp/pco-24/tarball -o pco.tar.gz - - 7z e pco.tar.gz - - 7z x pco.tar - - mv ~tomasgroth/openlp/pco-24 openlp-branch + - curl -L https://bazaar.launchpad.net/BRANCHPATH/tarball -o sourcecode.tar.gz + - 7z e sourcecode.tar.gz + - 7z x sourcecode.tar + - mv BRANCHPATH openlp-branch environment: PYTHON: C:\\Python34 install: # Install dependencies from pypi - - "%PYTHON%\\python.exe -m pip install sqlalchemy alembic chardet beautifulsoup4 Mako nose mock pyodbc==4.0.8 psycopg2 pypiwin32 pyenchant websockets asyncio waitress six webob requests" + - "%PYTHON%\\python.exe -m pip install sqlalchemy alembic chardet beautifulsoup4 Mako nose mock pyodbc==4.0.8 psycopg2 pypiwin32==219 pyenchant websockets asyncio waitress six webob requests" # Install mysql dependency - "%PYTHON%\\python.exe -m pip install http://cdn.mysql.com/Downloads/Connector-Python/mysql-connector-python-2.0.4.zip#md5=3df394d89300db95163f17c843ef49df" # Download and install lxml and pyicu (originally from http://www.lfd.uci.edu/~gohlke/pythonlibs/)