Exemple #1
0
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,
    }
Exemple #2
0
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,
    }