def post(self): args = project_parser.parse_args() project = Project(name=args['name'], git_url=args['git_url'], gerrit_server=args['gerrit_server']) db_session.add(project) db_session.commit() return project, 201
def post(self): args = user_parser.parse_args() user = User(name=args['name'], email=args['email'], user_id=args['user_id']) db_session.add(user) db_session.commit() return user, 201
def post(self): args = authuser_parser.parse_args() user = AuthUser() user.username = args['username'] user.hash_password(args['password']) print user.password_hash db_session.add(user) db_session.commit() return True
def post(self): args = scenario_filter_parser.parse_args() _filter = ScenarioFilter() _filter.filter_desc = args['filter_desc'] _filter.name = args['name'] db_session.add(_filter) db_session.commit() return 201
def post(self): args = harvester_parser.parse_args() harvester = Harvester() harvester.name = args['name'] harvester.url = args['url'] harvester.description = args['description'] db_session.add(harvester) db_session.commit() return harvester, 201
def post(self): args = team_parser.parse_args() team = Team(name=args['name']) users = args.get('users', None) if users: user_ids = [user['id'] for user in users] selected_users = User.query.filter(User.id.in_(user_ids)).all() for selected_user in selected_users: team.users.append(selected_user) db_session.add(team) db_session.commit() return team, 201
def post(self): args = bz_parser.parse_args() tmp_url = args['url'] if 'GoAheadAndLogIn' not in tmp_url: tmp_url = tmp_url + '&GoAheadAndLogIn=1' if 'ctype=csv' not in tmp_url: tmp_url = tmp_url + '&ctype=csv' report = RedHatBugzillaReport() report.name = args['name'] report.url = tmp_url report.require_authentication = True report.description = args['description'] or '' db_session.add(report) db_session.commit() return report, 201
def insert_gerrit_review(review): LOG.debug('Inserting review %s on database' % review['change_id']) user = None user_id = review['owner'].get('username', None) email = review['owner'].get('email', None) if user_id: LOG.debug('Looking for user with user id %s in database' % user_id) user = User.query.filter_by(user_id=user_id).first() elif email: LOG.debug('Looking for user with email %s in database' % email) user = User.query.filter_by(email=email).first() LOG.debug('User in database: %s' % user) current_revision = review.get('current_revision', None) gerrit_review = GerritReview() gerrit_review.commit_id = review.get('current_revision', None) gerrit_review.change_id = review.get('change_id', None) gerrit_review.version = review.get('version', None) gerrit_review.user = user gerrit_review.user_id = user.id if user else None gerrit_review.project = review.get('project', None) gerrit_review.status = review.get('status') # We only add the files when it's merged, so it's more easy to # track down and don't overload the database if review.get('status', None) == 'MERGED': LOG.debug('Change is merged, inserting the changed files in database') if review.get('revisions', None) and current_revision: if review['revisions'].get(current_revision): files = review['revisions'][current_revision].get('files') for f in files.keys(): gerrit_file = GerritReviewFile() gerrit_file.filename = f gerrit_review.files.append(gerrit_file) db_session.add(gerrit_review) db_session.commit() LOG.debug('Change %s inserted successfully' % review['change_id'])