diff --git a/App.py b/App.py index dead9e7..9ba3ebf 100644 --- a/App.py +++ b/App.py @@ -56,4 +56,4 @@ api.add_resource( if __name__ == '__main__': with PackageVersioning(json.load(open(app.config['REPOS_JSON_CONFIG_PATH']))) as pv: pr.package_versioning = pv - app.run() + app.run(host="0.0.0.0") diff --git a/api/Repo.py b/api/Repo.py index 2902a78..33840ed 100644 --- a/api/Repo.py +++ b/api/Repo.py @@ -11,7 +11,8 @@ class BrowseRepo(Resource): def get(self, repo_name=None, package_name=None): try: return package_versioning.get_all_packages(package_name=package_name, repo_name=repo_name), 200 - except (RepoDoNotExist, PackageDoNotExist): + except (RepoDoNotExist, PackageDoNotExist) as e: + print(type(e)) abort(404) @@ -25,7 +26,8 @@ class BrowseRepoVersion(Resource): version_minor=version_minor, version_release=version_release ) - except (RepoDoNotExist, PackageDoNotExist, VersionDoNotExist): + except (RepoDoNotExist, PackageDoNotExist, VersionDoNotExist) as e: + print(e) abort(404) @@ -41,7 +43,7 @@ class DownloadLastPackage(Resource): def get(self, package_name, repo_name): try: return redirect( - package_versioning.get_last_version_package(package_name=package_name, repo_name=repo_name)['apk_url'] + package_versioning.get_last_version_package(package_name=package_name, repo_name=repo_name)['url'] ) except (RepoDoNotExist, PackageDoNotExist): abort(404) diff --git a/example_repo_apks/someapk-2.0.0.apk b/example_repo_apks/someapk-2.0.0.apk index e69de29..039727e 100644 --- a/example_repo_apks/someapk-2.0.0.apk +++ b/example_repo_apks/someapk-2.0.0.apk @@ -0,0 +1 @@ +lol diff --git a/repos.json b/repos.json index 63e8a57..737f43e 100644 --- a/repos.json +++ b/repos.json @@ -5,8 +5,8 @@ "description": "Description Repo Example", "package_regex_name": "^(?P[^-]*)-(?P\\d+)(\\.(?P\\d+)|\\.apk)(\\.(?P\\d+)\\.apk|\\.apk)?$", "security": { - "is_public": false, - "allow_hash_key": ["SuperApiKey"] + "is_public": true, + "allow_hash_key": [] } } ] diff --git a/utils/PackageVersioning.py b/utils/PackageVersioning.py index 76f92ee..2d773b7 100644 --- a/utils/PackageVersioning.py +++ b/utils/PackageVersioning.py @@ -116,16 +116,18 @@ class PackageVersioning(FileSystemEventHandler): def get_all_packages(self, package_name=None, repo_name=None): repo_name, repo_public, _ = self.__get_repo(repo_name) try: - return repo_public[package_name] if \ + return repo_public[repo_name][package_name] if \ package_name is not None else repo_public except KeyError: + print(package_name) + print(repo_public) raise PackageDoNotExist - def get_last_version_package(self, package_name, repo_name=None): + def get_last_version_package(self, package_name, repo_name): _, repo_public, _ = self.__get_repo(repo_name) try: - package = repo_public[package_name] + package = repo_public[repo_name][package_name] except KeyError: raise PackageDoNotExist @@ -137,13 +139,13 @@ class PackageVersioning(FileSystemEventHandler): return package[str(last_version)] - def get_path_package(self, filename, repo_name=None): + def get_path_package(self, filename, repo_name): _, _, repo_private = self.__get_repo(repo_name) - if not repo_private['package_finder'].is_valid_filename(filename): + if not repo_private[repo_name]['package_finder'].is_valid_filename(filename): raise InvalidPackageName - return os.path.join(repo_private['directory_path'], filename) + return os.path.join(repo_private[repo_name]['directory_path'], filename) - def __get_repo(self, repo_name, api_key="SuperApiKey"): + def __get_repo(self, repo_name, api_key=None): try: r_pub = {} r_pri = {}