From 1ce135412fe4666fae1ae1e82cf656e1f64caf4b Mon Sep 17 00:00:00 2001 From: Ralph Bean Date: Wed, 26 Oct 2016 15:44:21 -0400 Subject: [PATCH] Allow optional authz, to make dev much simpler. --- config.py | 6 +++++- module_build_service/config.py | 9 +++++++++ module_build_service/views.py | 10 ++++++---- 3 files changed, 20 insertions(+), 5 deletions(-) diff --git a/config.py b/config.py index 5320fd5d..f1d73f96 100644 --- a/config.py +++ b/config.py @@ -40,6 +40,7 @@ class BaseConfiguration(object): PKGDB_API_URL = 'https://admin.stg.fedoraproject.org/pkgdb/api' FAS_URL = 'https://admin.stg.fedoraproject.org/accounts' + REQUIRE_PACKAGER = True # Available backends are: console, file, journal. LOG_BACKEND = 'journal' @@ -69,7 +70,10 @@ class DevConfiguration(BaseConfiguration): LOG_BACKEND = 'console' LOG_LEVEL = 'debug' HOST = '0.0.0.0' - FAS_USERNAME = 'put your fas username here' + REQUIRE_PACKAGER = False + # You only need these FAS options if you turn on authorization + # with REQUIRE_PACKAGER=True + #FAS_USERNAME = 'put your fas username here' #FAS_PASSWORD = 'put your fas password here....' #FAS_PASSWORD = os.environ('FAS_PASSWORD') # you could store it here #FAS_PASSWORD = commands.getoutput('pass your_fas_password').strip() diff --git a/module_build_service/config.py b/module_build_service/config.py index c9f1c079..6276b704 100644 --- a/module_build_service/config.py +++ b/module_build_service/config.py @@ -72,6 +72,7 @@ class Config(object): self._fas_url = "" self._fas_username = "" self._fas_password = "" + self._require_packager = True self._log_backend = "" self._log_file = "" self._log_level = 0 @@ -344,6 +345,14 @@ class Config(object): def fas_password(self, s): self._fas_password = str(s) + @property + def require_packager(self): + return self._require_packager + + @require_packager.setter + def require_packager(self, s): + self._require_packager = bool(s) + @property def log_backend(self): return self._log_backend diff --git a/module_build_service/views.py b/module_build_service/views.py index ef10bccf..08e16b60 100644 --- a/module_build_service/views.py +++ b/module_build_service/views.py @@ -76,10 +76,12 @@ class ModuleBuildAPI(MethodView): def post(self): username = module_build_service.auth.get_username(request.environ) - module_build_service.auth.assert_is_packager(username, fas_kwargs=dict( - base_url=conf.fas_url, - username=conf.fas_username, - password=conf.fas_password)) + + if conf.require_packager: + module_build_service.auth.assert_is_packager(username, fas_kwargs=dict( + base_url=conf.fas_url, + username=conf.fas_username, + password=conf.fas_password)) try: r = json.loads(request.get_data().decode("utf-8"))