def list_runs( project: str = None, name: str = None, uid: str = None, labels: List[str] = Query([], alias="label"), state: str = None, last: int = 0, sort: bool = True, iter: bool = True, start_time_from: str = None, start_time_to: str = None, last_update_time_from: str = None, last_update_time_to: str = None, db_session: Session = Depends(deps.get_db_session), ): runs = get_db().list_runs( db_session, name=name, uid=uid, project=project, labels=labels, state=state, sort=sort, last=last, iter=iter, start_time_from=datetime_from_iso(start_time_from), start_time_to=datetime_from_iso(start_time_to), last_update_time_from=datetime_from_iso(last_update_time_from), last_update_time_to=datetime_from_iso(last_update_time_to), ) return { "runs": runs, }
def list_runs( project: str = None, name: str = None, uid: str = None, labels: List[str] = Query([], alias="label"), state: str = None, last: int = 0, sort: bool = True, iter: bool = True, start_time_from: str = None, start_time_to: str = None, last_update_time_from: str = None, last_update_time_to: str = None, auth_info: mlrun.api.schemas.AuthInfo = Depends( deps.authenticate_request), db_session: Session = Depends(deps.get_db_session), ): if project != "*": mlrun.api.utils.auth.verifier.AuthVerifier().query_project_permissions( project, mlrun.api.schemas.AuthorizationAction.read, auth_info, ) runs = mlrun.api.crud.Runs().list_runs( db_session, name=name, uid=uid, project=project, labels=labels, state=state, sort=sort, last=last, iter=iter, start_time_from=datetime_from_iso(start_time_from), start_time_to=datetime_from_iso(start_time_to), last_update_time_from=datetime_from_iso(last_update_time_from), last_update_time_to=datetime_from_iso(last_update_time_to), ) filtered_runs = mlrun.api.utils.auth.verifier.AuthVerifier( ).filter_project_resources_by_permissions( mlrun.api.schemas.AuthorizationResourceTypes.run, runs, lambda run: ( run.get("metadata", {}).get("project", mlrun.mlconf.default_project ), run.get("metadata", {}).get("uid"), ), auth_info, ) return { "runs": filtered_runs, }