def create_or_update(args): "Creates or updates a code review case." creds = new_credentials_config() g = GitRepo() cr_data_file = get_cr_data_file(g) safe_create_code_review_data_file(cr_data_file) with CodeReviewConfiguration.persisting(cr_data_file) as data: if g.current_branch() in data.branches: cr_data = data.branches[g.current_branch()] if len(cr_data.commits) > 1 and g.sha('HEAD~') == cr_data.commits[-2]: # the last commit was amended, so replace it: if g.sha('HEAD') != cr_data.commits[-1]: cr_data.commits[-1] = g.sha('HEAD') elif g.sha() not in cr_data.commits: cr_data.commits.append(g.sha()) if len(cr_data.commits) >= 2: use_hash = str('..'.join([cr_data.commits[0][0:8], cr_data.commits[-1][0:8]])) else: use_hash = str(cr_data.commits[-1]) logger.info('updating an existing code review.') update_code_review(cr_data, g, use_hash) else: data.set_branch(g.current_branch(), {'original_name': g.commit_messages()[0], 'commits': [g.sha('HEAD~'), g.sha()]}) logger.info('creating new code review.') create_code_review(data, g, creds)
def twofa_code(args): "Returns a 2 factor authentication code." creds = new_credentials_config() print(otp.get_totp(creds.corp.seed))
def twofa_code(args): creds = new_credentials_config() print(otp.get_totp(creds.corp.seed))