def handle(self, *args, **kwargs): GH_ORGS = getattr(settings, 'KRATOS_ENFORCE_GH_ORGS', []) # GHE = getattr(settings, 'KRATOS_ENFORCE_GH_ORGS', False) gha = client.GitHubAdmin() # ghea = client.GitHubEnterpriseAdmin() print 'syncing github.com' for org_id in GH_ORGS: org_name = client.get_org_name(gha, org_id) print 'syncing {} org'.format(org_name) sync_gh_repos(gha, org_name) sync_gh_users(gha, org_name) sync_gh_teams(gha, org_name) print('done.')
def join_org(request, backend, user, details, **kwargs): if backend.name != 'github': return if not user: return HttpResponse('Unauthorized', status=401) gh_details = request.session.get('gh_details', {}) if not gh_details.get('org_name'): gh_details['org_name'] = get_org_name(gha, settings.GH_ORG_IDS[0]) request.session['gh_details'] = gh_details if not gh_details.get('is_member'): gh_details['is_member'] = is_org_member(gha, details['username'], gh_details['org_name']) request.session['gh_details'] = gh_details if gh_details['is_member']: return None else: return redirect('osw:join_org')