From 669ce10d9a232605cf2ec01c6d2b1fdfd20e738f Mon Sep 17 00:00:00 2001 From: Hans-Christoph Steiner Date: Mon, 25 Jan 2021 10:26:02 +0100 Subject: [PATCH 1/3] enable complete lint/CI checking on gradle-release-checksums.py --- hooks/pre-commit | 2 +- tests/gradle-release-checksums.py | 12 +++++------- 2 files changed, 6 insertions(+), 8 deletions(-) diff --git a/hooks/pre-commit b/hooks/pre-commit index 07a6607d..78fcf8ed 100755 --- a/hooks/pre-commit +++ b/hooks/pre-commit @@ -8,7 +8,7 @@ exec 1>&2 files=`git diff-index --cached HEAD 2>&1 | sed 's/^:.* //' | uniq | cut -b100-500` if [ -z "$files" ]; then - PY_FILES="fdroid makebuildserver setup.py fdroidserver/*.py examples/*.py" + PY_FILES="fdroid makebuildserver setup.py fdroidserver/*.py examples/*.py tests/gradle-release-checksums.py" PY_TEST_FILES="tests/*.TestCase" SH_FILES="hooks/pre-commit" BASH_FILES="gradlew-fdroid jenkins-build-all jenkins-setup-build-environment jenkins-test completion/bash-completion buildserver/provision-*" diff --git a/tests/gradle-release-checksums.py b/tests/gradle-release-checksums.py index a264c8ba..df2216a8 100755 --- a/tests/gradle-release-checksums.py +++ b/tests/gradle-release-checksums.py @@ -6,7 +6,6 @@ import os import re import requests import subprocess -from bs4 import BeautifulSoup from colorama import Fore, Style from distutils.version import LooseVersion @@ -15,9 +14,9 @@ checksums = None versions = dict() while not checksums: - r = requests.get('https://gitlab.com/fdroid/gradle-transparency-log/-/raw/master/checksums.json') - if r.status_code == 200: - checksums = r.json() + r = requests.get('https://gitlab.com/fdroid/gradle-transparency-log/-/raw/master/checksums.json') + if r.status_code == 200: + checksums = r.json() gradle_bin_pat = re.compile(r'gradle-([0-9][0-9.]+[0-9])-bin.zip') for url, d in checksums.items(): @@ -94,8 +93,7 @@ if os.getenv('CI_PROJECT_NAMESPACE') != 'fdroid-bot': git_repo = git.repo.Repo('.') modified = git_repo.git().ls_files(modified=True).split() -if (git_repo.is_dirty() - and ('gradlew-fdroid' in modified or 'makebuildserver' in modified)): +if git_repo.is_dirty() and ('gradlew-fdroid' in modified or 'makebuildserver' in modified): branch = git_repo.create_head(os.path.basename(__file__), force=True) branch.checkout() git_repo.index.add(['gradlew-fdroid', 'makebuildserver']) @@ -118,7 +116,7 @@ if (git_repo.is_dirty() print(Fore.RED + 'ERROR: GitLab Token not found in PERSONAL_ACCESS_TOKEN!' + Style.RESET_ALL) - sys.exit(1) + exit(1) gl = gitlab.Gitlab(os.getenv('CI_SERVER_URL'), api_version=4, private_token=private_token) project = gl.projects.get(project_path, lazy=True) From 0af157244af37c49b7416d117a21349e52db5b32 Mon Sep 17 00:00:00 2001 From: Hans-Christoph Steiner Date: Mon, 25 Jan 2021 11:04:23 +0100 Subject: [PATCH 2/3] gradle-release-checksums: runs after commits push to fdroid/fdroidserver --- tests/gradle-release-checksums.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/tests/gradle-release-checksums.py b/tests/gradle-release-checksums.py index df2216a8..9f895426 100755 --- a/tests/gradle-release-checksums.py +++ b/tests/gradle-release-checksums.py @@ -86,11 +86,12 @@ plugin_v_pat = re.compile(r'\nplugin_v=\(([0-9. ]+)\)') with open('gradlew-fdroid', 'w') as fp: fp.write(plugin_v_pat.sub('\nplugin_v=(%s)' % plugin_v, gradlew_fdroid)) -if os.getenv('CI_PROJECT_NAMESPACE') != 'fdroid-bot': +if os.getenv('CI_PROJECT_NAMESPACE') != 'fdroid': p = subprocess.run(['git', '--no-pager', 'diff']) print(p.stdout) exit(errors) +# This only runs after commits are pushed to fdroid/fdroidserver git_repo = git.repo.Repo('.') modified = git_repo.git().ls_files(modified=True).split() if git_repo.is_dirty() and ('gradlew-fdroid' in modified or 'makebuildserver' in modified): From 87477cd9106fe3fc26159cb31e62fff6c5dabb8c Mon Sep 17 00:00:00 2001 From: Hans-Christoph Steiner Date: Mon, 25 Jan 2021 11:04:49 +0100 Subject: [PATCH 3/3] gitlab-ci: gradle job needs git history to find what changed --- .gitlab-ci.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 011e9048..f22e492f 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -228,6 +228,8 @@ fedora_latest: gradle: image: debian:bullseye <<: *apt-template + variables: + GIT_DEPTH: 1000 script: - apt-get install ca-certificates