From 098e64d7a87ff4a8355fd52a3cbae72e085fff98 Mon Sep 17 00:00:00 2001 From: Oriol Lopez-Doriga Date: Sun, 29 Sep 2024 11:08:39 +0200 Subject: [PATCH 1/3] g_variants with parameters and filtering terms --- beacon/db/filters.py | 26 +++++--------------------- 1 file changed, 5 insertions(+), 21 deletions(-) diff --git a/beacon/db/filters.py b/beacon/db/filters.py index f0007c31..0bbb2c2d 100644 --- a/beacon/db/filters.py +++ b/beacon/db/filters.py @@ -19,13 +19,11 @@ def cross_query(query: dict, scope: str, collection: str, request_parameters: dict): if scope == 'genomicVariation' and collection == 'g_variants' or scope == collection[0:-1]: - LOG.debug(query) - LOG.debug(request_parameters) subquery={} subquery["$or"]=[] if request_parameters != {}: biosample_ids = client.beacon.genomicVariations.find(request_parameters, {"caseLevelData.biosampleId": 1, "_id": 0}) - final_id='id' + final_id='caseLevelData.biosampleId' original_id="biosampleId" def_list=[] for iditem in biosample_ids: @@ -36,30 +34,16 @@ def cross_query(query: dict, scope: str, collection: str, request_parameters: di new_id={} new_id[final_id] = id_item[original_id] try: - #LOG.debug(new_id) subquery['$or'].append(new_id) - except Exception: + except Exception:# pragma: no cover def_list.append(new_id) - - LOG.debug(subquery) - mongo_collection=client.beacon.biosamples - original_id="individualId" - join_ids2=list(join_query(mongo_collection, subquery, original_id)) - def_list=[] - final_id="id" - for id_item in join_ids2: - new_id={} - new_id[final_id] = id_item.pop(original_id) - def_list.append(new_id) - subquery={} - subquery['$or']=def_list + subquery={} + subquery['$or']=def_list try: - LOG.debug(query) query["$and"] = [] query["$and"].append(subquery) except Exception: - LOG.debug(query) - LOG.debug(query) + pass else: def_list=[] if scope == 'individual' and collection == 'g_variants': From 863425fccde1356c933939a2c39ef23590a00f88 Mon Sep 17 00:00:00 2001 From: API version update Date: Sun, 29 Sep 2024 09:09:40 +0000 Subject: [PATCH 2/3] api version automatically generated --- beacon/api_version.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/beacon/api_version.yml b/beacon/api_version.yml index 9e6818a6..79af93f8 100644 --- a/beacon/api_version.yml +++ b/beacon/api_version.yml @@ -1 +1 @@ -api_version: v2.0-19c610e +api_version: v2.0-8917c2a From 6b91ef3426ff8fd016447c005b99ccc48f147dab Mon Sep 17 00:00:00 2001 From: costero-e Date: Tue, 8 Oct 2024 19:18:04 +0200 Subject: [PATCH 3/3] removed introspection --- permissions/auth.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/permissions/auth.py b/permissions/auth.py index 67e35ebb..93f82771 100644 --- a/permissions/auth.py +++ b/permissions/auth.py @@ -102,6 +102,7 @@ async def get_user_info(access_token): LOG.error(user_info) user = None + ''' async with ClientSession() as session: async with session.post(idp_introspection, auth=BasicAuth(idp_client_id, password=idp_client_secret), @@ -117,6 +118,7 @@ async def get_user_info(access_token): LOG.error('Invalid token') user = 'public' return user, list_visa_datasets + ''' async with ClientSession(trust_env=True) as session: headers = { 'Accept': 'application/json', 'Authorization': 'Bearer ' + access_token } @@ -125,6 +127,7 @@ async def get_user_info(access_token): LOG.error('Response %s', resp) if resp.status == 200: user = await resp.json() + LOG.error(user) try: visa_datasets = user['ga4gh_passport_v1'] if visa_datasets is not None: @@ -165,6 +168,7 @@ async def decorated(request): # We make a round-trip to the userinfo. We might not have a JWT token. try: user, list_visa_datasets = await get_user_info(access_token) + LOG.error(user) except Exception: user = 'public' LOG.info('The user is: %r', user) @@ -174,7 +178,7 @@ async def decorated(request): username = 'public' else: username = user.get('preferred_username') - LOG.debug('username: %s', username) + LOG.error('username: %s', username) return await func(request, username, list_visa_datasets) return decorated