import json from Config import CURRENT_CONFIG from flask import Flask from flask_restful import Api import api.Repo as repoApi from api.Repo import BrowseRepo, InfoLast, InfoLastRepo, InfoLastPackage, DownloadLastPackage, DownloadPackage, DownloadPackageVersion, \ BrowseRepoVersion from utils.PackageVersioning import PackageVersioning app = Flask(__name__) app.config.from_object(CURRENT_CONFIG) api = Api(app, catch_all_404s=True) # Api resource api.add_resource( BrowseRepo, '/', # Retrieve available repos '/', # Retrieve data from '//', # Retrieve data from about ) api.add_resource( BrowseRepoVersion, '///', # Retrieve data version from '////', # Retrieve data version from '/////', # Retrieve data version from ) api.add_resource( InfoLast, '/last' ) api.add_resource( InfoLastRepo, '//last' ) api.add_resource( InfoLastPackage, '///last', # Info for last version from ) api.add_resource( DownloadLastPackage, '/download///last', # Download last version from ) api.add_resource( DownloadPackageVersion, '/download///', # Download version from '/download////', # Download version from '/download/////', # Download version from ) api.add_resource( DownloadPackage, '/download//', # Download version from repo_name ) @app.before_first_request def setup(): repoApi.package_versioning = PackageVersioning(json.load(open(app.config['REPOS_JSON_CONFIG_PATH']))) repoApi.package_versioning.__enter__() if __name__ == '__main__': app.run(host="0.0.0.0")