def test_log_entry_collection_handler_sensitive(self): account = RedHatAccount() account.username = "******" account.password = "******" account.license_type = "rhsm" self.db.add(account) self.db.commit() log_entries = [ [ time.strftime(settings.UI_LOG_DATE_FORMAT), 'LEVEL111', 'begin REDHATUSERNAME REDHATPASSWORD end', ], ] response_log_entries = [ [ time.strftime(settings.UI_LOG_DATE_FORMAT), 'LEVEL111', 'begin username password end', ], ] self._create_logfile_for_node(settings.LOGS[0], log_entries) resp = self.app.get( reverse('LogEntryCollectionHandler'), params={'source': settings.LOGS[0]['id']}, headers=self.default_headers ) self.assertEquals(200, resp.status_code) response = json.loads(resp.body) response['entries'].reverse() self.assertEquals(response['entries'], response_log_entries)
def test_log_entry_collection_handler_sensitive(self): account = RedHatAccount() account.username = "******" account.password = "******" account.license_type = "rhsm" self.db.add(account) self.db.commit() log_entries = [ [ time.strftime(settings.UI_LOG_DATE_FORMAT), 'LEVEL111', 'begin REDHATUSERNAME REDHATPASSWORD end', ], ] response_log_entries = [ [ time.strftime(settings.UI_LOG_DATE_FORMAT), 'LEVEL111', 'begin username password end', ], ] self._create_logfile_for_node(settings.LOGS[0], log_entries) resp = self.app.get( reverse('LogEntryCollectionHandler'), params={'source': settings.LOGS[0]['id']}, headers=self.default_headers ) self.assertEquals(200, resp.status) response = json.loads(resp.body) response['entries'].reverse() self.assertEquals(response['entries'], response_log_entries)
def POST(self): """:returns: JSONized RedHatAccount object. :http: * 200 (OK) * 400 (invalid account data specified) * 404 (account not found in db) """ data = self.checked_data() license_type = data.get("license_type") if license_type == 'rhsm': data["satellite"] = "" data["activation_key"] = "" release_id = data.pop('release_id') release_db = db().query(Release).get(release_id) if not release_db: raise web.notfound( "No release with ID={0} found".format(release_id) ) account = db().query(RedHatAccount).first() if account: db().query(RedHatAccount).update(data) else: account = RedHatAccount(**data) db().add(account) db().commit() return self.render(account)
def create_rh_account(self, **kwargs): username = kwargs.pop("username", "rh_username") password = kwargs.pop("password", "rh_password") license_type = kwargs.pop("license_type", "rhsm") rh_account = RedHatAccount(username=username, password=password, license_type=license_type, **kwargs) self.db.add(rh_account) self.db.commit() return rh_account
def POST(self): """Starts Red Hat setup and download process :returns: JSONized Task object. :http: * 202 (setup task created and started) * 400 (invalid account data specified) * 404 (release not found in db) """ data = self.checked_data() license_type = data.get("license_type") if license_type == 'rhsm': data["satellite"] = "" data["activation_key"] = "" release_data = {'release_id': data['release_id']} release_id = data.pop('release_id') release_db = db().query(Release).get(release_id) if not release_db: raise web.notfound( "No release with ID={0} found".format(release_id) ) release_data['redhat'] = data release_data['release_name'] = release_db.name account = db().query(RedHatAccount).first() if account: db().query(RedHatAccount).update(data) else: account = RedHatAccount(**data) db().add(account) db().commit() task_manager = RedHatSetupTaskManager(release_data) try: task = task_manager.execute() except Exception as exc: logger.error(u'RedHatAccountHandler: error while execution' ' Red Hat validation task: {0}'.format(str(exc))) logger.error(traceback.format_exc()) raise web.badrequest(str(exc)) data = build_json_response(TaskHandler.render(task)) raise web.accepted(data=data)