This project is no longer actively maintained or supported.
Functionality from this repository was integrated into Pipestat: https://github.com/pepkit/pipestat
Pipestat reader is a Python package that is an extension of pipestat.
Pipestat can be used to collect pipeline results and store them in either a YAML-formatted file or in a database. If the results are stored in the database, then pipestat reader can be used to automatically generate a web API to query these results.
- Create a
pipestat.PipestatManagerobject
import pipestat
psm = pipestat.PipestatManager(config="/path/to/config.yaml")- Pass the objects to the
pipestat_reader.PipestatReaderconstructor
import pipestat_reader
psr = pipestat_reader.PipestatReader(pipestat_managers=[psm])- Generate a GraphQL schema
graphql_schema = psr.generate_graphql_schema()- Use the schema in your web application, for example in FastAPI:
from fastapi import FastAPI
from starlette.graphql import GraphQLApp
app = FastAPI(title="test app")
app.mount("/graphql", GraphQLApp(schema=graphql_schema, graphiql=True))- Retrieve the results reported with pipestat
By POST queries
curl -X POST \
-H "Content-Type: application/json" \
-d '{"query": "{table_name{edges{node{column_name}}}}"}' \
http://0.0.0.0:8000/graphql/Using the interactive GraphiQL interface at http://0.0.0.0:8000/graphql/