mirror of
https://gitlab.com/fdroid/fdroidserver.git
synced 2024-10-05 18:50:09 +02:00
Merge branch 'pylint' into 'master'
pylint: Reenable 10 checks See merge request fdroid/fdroidserver!1319
This commit is contained in:
commit
0136872154
@ -134,7 +134,7 @@ def main():
|
|||||||
sys.exit(0)
|
sys.exit(0)
|
||||||
|
|
||||||
command = sys.argv[1]
|
command = sys.argv[1]
|
||||||
if command not in COMMANDS and command not in available_plugins.keys():
|
if command not in COMMANDS and command not in available_plugins:
|
||||||
if command in ('-h', '--help'):
|
if command in ('-h', '--help'):
|
||||||
print_help(available_plugins=available_plugins)
|
print_help(available_plugins=available_plugins)
|
||||||
sys.exit(0)
|
sys.exit(0)
|
||||||
|
@ -1007,6 +1007,9 @@ class vcs:
|
|||||||
self.refreshed = False
|
self.refreshed = False
|
||||||
self.srclib = None
|
self.srclib = None
|
||||||
|
|
||||||
|
def _gettags(self):
|
||||||
|
raise NotImplementedError
|
||||||
|
|
||||||
def repotype(self):
|
def repotype(self):
|
||||||
return None
|
return None
|
||||||
|
|
||||||
@ -1800,7 +1803,7 @@ def parse_androidmanifests(paths, app):
|
|||||||
if re.match(r'.*[\'"\s]{flavour}[\'"\s].*\{{.*'.format(flavour=flavour), line):
|
if re.match(r'.*[\'"\s]{flavour}[\'"\s].*\{{.*'.format(flavour=flavour), line):
|
||||||
inside_required_flavour = 2
|
inside_required_flavour = 2
|
||||||
break
|
break
|
||||||
elif re.match(r'.*[\'"\s]{flavour}[\'"\s].*'.format(flavour=flavour), line):
|
if re.match(r'.*[\'"\s]{flavour}[\'"\s].*'.format(flavour=flavour), line):
|
||||||
inside_required_flavour = 1
|
inside_required_flavour = 1
|
||||||
break
|
break
|
||||||
|
|
||||||
|
@ -33,7 +33,6 @@ import shutil
|
|||||||
from . import _
|
from . import _
|
||||||
from . import common
|
from . import common
|
||||||
from . import index
|
from . import index
|
||||||
from . import update
|
|
||||||
from .exception import FDroidException
|
from .exception import FDroidException
|
||||||
|
|
||||||
config = None
|
config = None
|
||||||
@ -524,7 +523,7 @@ def upload_apk_to_android_observatory(path):
|
|||||||
|
|
||||||
apkfilename = os.path.basename(path)
|
apkfilename = os.path.basename(path)
|
||||||
r = requests.post('https://androidobservatory.org/',
|
r = requests.post('https://androidobservatory.org/',
|
||||||
data={'q': update.sha256sum(path), 'searchby': 'hash'},
|
data={'q': common.sha256sum(path), 'searchby': 'hash'},
|
||||||
headers=net.HEADERS, timeout=300)
|
headers=net.HEADERS, timeout=300)
|
||||||
if r.status_code == 200:
|
if r.status_code == 200:
|
||||||
# from now on XPath will be used to retrieve the message in the HTML
|
# from now on XPath will be used to retrieve the message in the HTML
|
||||||
@ -624,7 +623,7 @@ def upload_apk_to_virustotal(virustotal_apikey, packageName, apkName, hash,
|
|||||||
+ str(response['positives']) + ' times:'
|
+ str(response['positives']) + ' times:'
|
||||||
+ '\n\t' + response['permalink'])
|
+ '\n\t' + response['permalink'])
|
||||||
break
|
break
|
||||||
elif r.status_code == 204:
|
if r.status_code == 204:
|
||||||
logging.warning(_('virustotal.com is rate limiting, waiting to retry...'))
|
logging.warning(_('virustotal.com is rate limiting, waiting to retry...'))
|
||||||
time.sleep(30) # wait for public API rate limiting
|
time.sleep(30) # wait for public API rate limiting
|
||||||
|
|
||||||
|
@ -504,8 +504,8 @@ def parse_yaml_srclib(metadatapath):
|
|||||||
cause=e)
|
cause=e)
|
||||||
return thisinfo
|
return thisinfo
|
||||||
|
|
||||||
for key in data.keys():
|
for key in data:
|
||||||
if key not in thisinfo.keys():
|
if key not in thisinfo:
|
||||||
_warn_or_exception(_("Invalid srclib metadata: unknown key "
|
_warn_or_exception(_("Invalid srclib metadata: unknown key "
|
||||||
"'{key}' in '{file}'")
|
"'{key}' in '{file}'")
|
||||||
.format(key=key, file=metadatapath))
|
.format(key=key, file=metadatapath))
|
||||||
@ -764,6 +764,8 @@ def parse_metadata(metadatapath):
|
|||||||
try:
|
try:
|
||||||
commit_id = common.get_head_commit_id(git.Repo(build_dir))
|
commit_id = common.get_head_commit_id(git.Repo(build_dir))
|
||||||
logging.debug(_('Including metadata from %s@%s') % (metadata_in_repo, commit_id))
|
logging.debug(_('Including metadata from %s@%s') % (metadata_in_repo, commit_id))
|
||||||
|
# See https://github.com/PyCQA/pylint/issues/2856 .
|
||||||
|
# pylint: disable-next=no-member
|
||||||
except git.exc.InvalidGitRepositoryError:
|
except git.exc.InvalidGitRepositoryError:
|
||||||
logging.debug(_('Including metadata from {path}').format(metadata_in_repo))
|
logging.debug(_('Including metadata from {path}').format(metadata_in_repo))
|
||||||
app_in_repo = parse_metadata(metadata_in_repo)
|
app_in_repo = parse_metadata(metadata_in_repo)
|
||||||
|
@ -199,6 +199,7 @@ class FDroidBuildVm:
|
|||||||
|
|
||||||
def __init__(self, srvdir):
|
def __init__(self, srvdir):
|
||||||
"""Create new server class."""
|
"""Create new server class."""
|
||||||
|
self.provider = None
|
||||||
self.srvdir = srvdir
|
self.srvdir = srvdir
|
||||||
self.srvname = basename(srvdir) + '_default'
|
self.srvname = basename(srvdir) + '_default'
|
||||||
self.vgrntfile = os.path.join(srvdir, 'Vagrantfile')
|
self.vgrntfile = os.path.join(srvdir, 'Vagrantfile')
|
||||||
|
@ -91,7 +91,7 @@ with open('buildserver/Vagrantfile') as fp:
|
|||||||
m = re.search(r"""\.vm\.box\s*=\s*["'](.*)["']""", fp.read())
|
m = re.search(r"""\.vm\.box\s*=\s*["'](.*)["']""", fp.read())
|
||||||
if not m:
|
if not m:
|
||||||
logging.error('Cannot find box name in buildserver/Vagrantfile!')
|
logging.error('Cannot find box name in buildserver/Vagrantfile!')
|
||||||
exit(1)
|
sys.exit(1)
|
||||||
config['basebox'] = m.group(1)
|
config['basebox'] = m.group(1)
|
||||||
config['basebox_version'] = BASEBOX_VERSION_DEFAULT
|
config['basebox_version'] = BASEBOX_VERSION_DEFAULT
|
||||||
config['cachedir'] = os.path.join(os.getenv('HOME'), '.cache', 'fdroidserver')
|
config['cachedir'] = os.path.join(os.getenv('HOME'), '.cache', 'fdroidserver')
|
||||||
@ -107,7 +107,7 @@ elif os.path.exists('makebs.config.py'):
|
|||||||
if show_config_deprecation:
|
if show_config_deprecation:
|
||||||
logging.error('Config is via %s and command line flags.' % configfile)
|
logging.error('Config is via %s and command line flags.' % configfile)
|
||||||
parser.print_help()
|
parser.print_help()
|
||||||
exit(1)
|
sys.exit(1)
|
||||||
|
|
||||||
logging.debug("Vagrantfile.yaml parsed -> %s", json.dumps(config, indent=4, sort_keys=True))
|
logging.debug("Vagrantfile.yaml parsed -> %s", json.dumps(config, indent=4, sort_keys=True))
|
||||||
|
|
||||||
@ -264,7 +264,7 @@ def main():
|
|||||||
logging.debug('found \'vmx\' or \'svm\' in /proc/cpuinfo -> hwvirtex = \'on\'')
|
logging.debug('found \'vmx\' or \'svm\' in /proc/cpuinfo -> hwvirtex = \'on\'')
|
||||||
else:
|
else:
|
||||||
logging.error('hwvirtex = \'on\' and no \'vmx\' or \'svm\' found in /proc/cpuinfo!')
|
logging.error('hwvirtex = \'on\' and no \'vmx\' or \'svm\' found in /proc/cpuinfo!')
|
||||||
exit(1)
|
sys.exit(1)
|
||||||
|
|
||||||
serverdir = os.path.join(os.getcwd(), 'buildserver')
|
serverdir = os.path.join(os.getcwd(), 'buildserver')
|
||||||
logfilename = os.path.join(serverdir, 'up.log')
|
logfilename = os.path.join(serverdir, 'up.log')
|
||||||
@ -312,7 +312,7 @@ def main():
|
|||||||
version=config['basebox_version']))
|
version=config['basebox_version']))
|
||||||
sys.exit(1)
|
sys.exit(1)
|
||||||
# verify box
|
# verify box
|
||||||
if config['basebox_version'] not in BASEBOX_CHECKSUMS.keys():
|
if config['basebox_version'] not in BASEBOX_CHECKSUMS:
|
||||||
logging.critical("can not verify '{box}', "
|
logging.critical("can not verify '{box}', "
|
||||||
"unknown basebox version '{version}'"
|
"unknown basebox version '{version}'"
|
||||||
.format(box=config['basebox'],
|
.format(box=config['basebox'],
|
||||||
|
@ -31,6 +31,13 @@ disable_error_code = "no-redef, misc, arg-type"
|
|||||||
# avoid hangs.
|
# avoid hangs.
|
||||||
jobs = 4
|
jobs = 4
|
||||||
|
|
||||||
|
# Minimum Python version to use for version dependent checks. Will default to the
|
||||||
|
# version used to run pylint.
|
||||||
|
py-version = "3.9"
|
||||||
|
|
||||||
|
# Files or directories to be skipped. They should be base names, not paths.
|
||||||
|
ignore = ["apksigcopier.py"]
|
||||||
|
|
||||||
[tool.pylint.basic]
|
[tool.pylint.basic]
|
||||||
# Good variable names which should always be accepted, separated by a comma.
|
# Good variable names which should always be accepted, separated by a comma.
|
||||||
good-names = ["i", "j", "k", "ex", "Run", "f", "fp"]
|
good-names = ["i", "j", "k", "ex", "Run", "f", "fp"]
|
||||||
@ -54,17 +61,13 @@ confidence = ["HIGH", "INFERENCE"]
|
|||||||
disable = [
|
disable = [
|
||||||
"broad-exception-caught",
|
"broad-exception-caught",
|
||||||
"broad-exception-raised",
|
"broad-exception-raised",
|
||||||
"consider-iterating-dictionary",
|
|
||||||
"consider-using-sys-exit",
|
|
||||||
"invalid-name",
|
"invalid-name",
|
||||||
"missing-class-docstring",
|
"missing-class-docstring",
|
||||||
"missing-function-docstring",
|
"missing-function-docstring",
|
||||||
"missing-module-docstring",
|
"missing-module-docstring",
|
||||||
"no-else-break",
|
|
||||||
"no-else-continue",
|
"no-else-continue",
|
||||||
"no-else-raise",
|
"no-else-raise",
|
||||||
"no-else-return",
|
"no-else-return",
|
||||||
"no-member",
|
|
||||||
"subprocess-run-check",
|
"subprocess-run-check",
|
||||||
"use-dict-literal",
|
"use-dict-literal",
|
||||||
]
|
]
|
||||||
|
@ -1,4 +1,8 @@
|
|||||||
#!/usr/bin/env python3
|
#!/usr/bin/env python3
|
||||||
|
#
|
||||||
|
# This script is some of the only documentation of certain processes
|
||||||
|
# that run in the buildserver setup. It is not really maintained, but
|
||||||
|
# is still here as a kind of reference.
|
||||||
|
|
||||||
import os
|
import os
|
||||||
import sys
|
import sys
|
||||||
@ -17,6 +21,7 @@ if localmodule not in sys.path:
|
|||||||
from fdroidserver.vmtools import get_build_vm
|
from fdroidserver.vmtools import get_build_vm
|
||||||
|
|
||||||
|
|
||||||
|
# pylint: disable=no-member
|
||||||
def main(args):
|
def main(args):
|
||||||
|
|
||||||
if args.provider != None:
|
if args.provider != None:
|
||||||
|
@ -6,6 +6,7 @@ import os
|
|||||||
import re
|
import re
|
||||||
import requests
|
import requests
|
||||||
import subprocess
|
import subprocess
|
||||||
|
import sys
|
||||||
from colorama import Fore, Style
|
from colorama import Fore, Style
|
||||||
from distutils.version import LooseVersion
|
from distutils.version import LooseVersion
|
||||||
|
|
||||||
@ -92,7 +93,7 @@ with open('gradlew-fdroid', 'w') as fp:
|
|||||||
if os.getenv('CI_PROJECT_NAMESPACE') != 'fdroid':
|
if os.getenv('CI_PROJECT_NAMESPACE') != 'fdroid':
|
||||||
p = subprocess.run(['git', '--no-pager', 'diff'])
|
p = subprocess.run(['git', '--no-pager', 'diff'])
|
||||||
print(p.stdout)
|
print(p.stdout)
|
||||||
exit(errors)
|
sys.exit(errors)
|
||||||
|
|
||||||
# This only runs after commits are pushed to fdroid/fdroidserver
|
# This only runs after commits are pushed to fdroid/fdroidserver
|
||||||
git_repo = git.repo.Repo('.')
|
git_repo = git.repo.Repo('.')
|
||||||
@ -103,7 +104,7 @@ if git_repo.is_dirty() and ('gradlew-fdroid' in modified or 'makebuildserver' in
|
|||||||
print(Fore.RED
|
print(Fore.RED
|
||||||
+ 'ERROR: GitLab Token not found in PERSONAL_ACCESS_TOKEN!'
|
+ 'ERROR: GitLab Token not found in PERSONAL_ACCESS_TOKEN!'
|
||||||
+ Style.RESET_ALL)
|
+ Style.RESET_ALL)
|
||||||
exit(1)
|
sys.exit(1)
|
||||||
|
|
||||||
branch = git_repo.create_head(os.path.basename(__file__), force=True)
|
branch = git_repo.create_head(os.path.basename(__file__), force=True)
|
||||||
branch.checkout()
|
branch.checkout()
|
||||||
@ -116,6 +117,8 @@ if git_repo.is_dirty() and ('gradlew-fdroid' in modified or 'makebuildserver' in
|
|||||||
remote_name = 'fdroid-bot'
|
remote_name = 'fdroid-bot'
|
||||||
try:
|
try:
|
||||||
remote = git_repo.create_remote(remote_name, url)
|
remote = git_repo.create_remote(remote_name, url)
|
||||||
|
# See https://github.com/PyCQA/pylint/issues/2856 .
|
||||||
|
# pylint: disable-next=no-member
|
||||||
except git.exc.GitCommandError:
|
except git.exc.GitCommandError:
|
||||||
remote = git.remote.Remote(git_repo, remote_name)
|
remote = git.remote.Remote(git_repo, remote_name)
|
||||||
remote.set_url(url)
|
remote.set_url(url)
|
||||||
|
@ -7,6 +7,7 @@ import os
|
|||||||
import re
|
import re
|
||||||
import requests
|
import requests
|
||||||
import subprocess
|
import subprocess
|
||||||
|
import sys
|
||||||
from colorama import Fore, Style
|
from colorama import Fore, Style
|
||||||
|
|
||||||
|
|
||||||
@ -26,7 +27,7 @@ with open('fdroidserver/common.py') as fp:
|
|||||||
|
|
||||||
to_compile = re.search(r'\nNDKS = [^\]]+\]', common_py).group()
|
to_compile = re.search(r'\nNDKS = [^\]]+\]', common_py).group()
|
||||||
if not to_compile:
|
if not to_compile:
|
||||||
exit(1)
|
sys.exit(1)
|
||||||
code = compile(to_compile, '<string>', 'exec')
|
code = compile(to_compile, '<string>', 'exec')
|
||||||
config = {}
|
config = {}
|
||||||
exec(code, None, config) # nosec this is just a CI script
|
exec(code, None, config) # nosec this is just a CI script
|
||||||
@ -78,7 +79,7 @@ with open('fdroidserver/common.py', 'w') as fp:
|
|||||||
if os.getenv('CI_PROJECT_NAMESPACE') != 'fdroid':
|
if os.getenv('CI_PROJECT_NAMESPACE') != 'fdroid':
|
||||||
p = subprocess.run(['git', '--no-pager', 'diff'])
|
p = subprocess.run(['git', '--no-pager', 'diff'])
|
||||||
print(p.stdout)
|
print(p.stdout)
|
||||||
exit(errors)
|
sys.exit(errors)
|
||||||
|
|
||||||
|
|
||||||
# This only runs after commits are pushed to fdroid/fdroidserver
|
# This only runs after commits are pushed to fdroid/fdroidserver
|
||||||
@ -99,6 +100,8 @@ if git_repo.is_dirty() and 'fdroidserver/common.py' in modified:
|
|||||||
remote_name = 'fdroid-bot'
|
remote_name = 'fdroid-bot'
|
||||||
try:
|
try:
|
||||||
remote = git_repo.create_remote(remote_name, url)
|
remote = git_repo.create_remote(remote_name, url)
|
||||||
|
# See https://github.com/PyCQA/pylint/issues/2856 .
|
||||||
|
# pylint: disable-next=no-member
|
||||||
except git.exc.GitCommandError:
|
except git.exc.GitCommandError:
|
||||||
remote = git.remote.Remote(git_repo, remote_name)
|
remote = git.remote.Remote(git_repo, remote_name)
|
||||||
remote.set_url(url)
|
remote.set_url(url)
|
||||||
@ -112,7 +115,7 @@ if git_repo.is_dirty() and 'fdroidserver/common.py' in modified:
|
|||||||
+ 'ERROR: GitLab Token not found in PERSONAL_ACCESS_TOKEN!'
|
+ 'ERROR: GitLab Token not found in PERSONAL_ACCESS_TOKEN!'
|
||||||
+ Style.RESET_ALL
|
+ Style.RESET_ALL
|
||||||
)
|
)
|
||||||
exit(1)
|
sys.exit(1)
|
||||||
gl = gitlab.Gitlab(
|
gl = gitlab.Gitlab(
|
||||||
os.getenv('CI_SERVER_URL'), api_version=4, private_token=private_token
|
os.getenv('CI_SERVER_URL'), api_version=4, private_token=private_token
|
||||||
)
|
)
|
||||||
|
Loading…
Reference in New Issue
Block a user