diff options
Diffstat (limited to 'tester.py')
-rw-r--r-- | tester.py | 88 |
1 files changed, 0 insertions, 88 deletions
diff --git a/tester.py b/tester.py deleted file mode 100644 index 797216f..0000000 --- a/tester.py +++ /dev/null @@ -1,88 +0,0 @@ -#!/usr/bin/env python3 -# Adélie Linux architecture package tester -# Ensure all packages are all on arches -# -# Copyright © 2018 Adélie Linux team. All rights reserved. -# NCSA license. -# - -from apkkit.base.index import Index - -BASE_URL = "https://mirrormaster.adelielinux.org/adelie/{version}/{repo}/{arch}/APKINDEX.tar.gz" -"""The base URL to use for downloading package indexes.""" - -VERSION = "1.0-alpha6" -"""The version to check. Bump this after each release.""" - -def main(): - """The main function.""" - - arches = set() - sys_ign = set() - user_ign = set() - with open('arches', 'r') as arch_file: - arches = [arch[:-1] for arch in arch_file.readlines()] - with open('sys-specific', 'r') as ignore_file: - sys_ign = set(pkg[:-1] for pkg in ignore_file.readlines()) - with open('user-specific', 'r') as ignore_file: - user_ign = set(pkg[:-1] for pkg in ignore_file.readlines()) - - all_sys_pkgs = set() - all_user_pkgs = set() - pkgs = {} - - broken_sys = list() - broken_user = list() - not_broken = list() - - for arch in arches: - print("Loading " + arch + "...") - arch_sys = Index(url=BASE_URL.format(version=VERSION, repo='system', arch=arch)) - arch_user = Index(url=BASE_URL.format(version=VERSION, repo='user', arch=arch)) - - all_sys_pkgs = all_sys_pkgs.union(arch_sys.origins) - all_user_pkgs = all_user_pkgs.union(arch_user.origins) - - pkgs[arch] = {'system': arch_sys.origins, 'user': arch_user.origins} - - for pkg in sys_ign: - all_sys_pkgs.discard(pkg) - for pkg in user_ign: - all_user_pkgs.discard(pkg) - - for arch in arches: - missing_sys = all_sys_pkgs - pkgs[arch]['system'] - missing_user = all_user_pkgs - pkgs[arch]['user'] - - if len(missing_sys) > 0: - print("Missing in {arch}/system:".format(arch=arch)) - print("=========================") - missing = list(missing_sys) - missing.sort() - for pkg in missing: print(pkg) - print("\n\n") - broken_sys.append(arch) - - if len(missing_user) > 0: - print("Missing in {arch}/user:".format(arch=arch)) - print("=========================") - missing = list(missing_user) - missing.sort() - for pkg in missing: print(pkg) - print("\n\n") - broken_user.append(arch) - - if len(missing_sys) == 0 and len(missing_user) == 0: - not_broken.append(arch) - - print("\033[1;32mNo issues\033[1;0m: {a}".format(a=", ".join(not_broken))) - print("\033[1;33mMissing user\033[1;0m: {a}".format(a=", ".join( - ["{x} ({y})".format(x=arch, y=len(all_user_pkgs - pkgs[arch]['user'])) - for arch in broken_user]))) - print("\033[1;31mMissing system\033[1;0m: {a}".format(a=", ".join( - ["{x} ({y})".format(x=arch, y=len(all_sys_pkgs - pkgs[arch]['system'])) - for arch in broken_sys]))) - -if __name__ == "__main__": - main() - |