g-harel / sekstant

graphql interface for the kubernetes api

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

image

sekstant

GraphQL interface for the Kubernetes API.

apiVersion: v1
kind: Pod
metadata:
  name: sekstant
spec:
  containers:
  - name: sekstant
    image: gcr.io/sekstant/sekstant
    ports:
    - containerPort: 11456

The image expects to run inside a Kubernetes cluster. On startup, it queries the API server for its Swagger specification and translates it into a GraphQL schema which is then exposed as an HTTP endpoint.

Custom resource definitions may be supported in the future.

Options

PORT Container port used to expose the GraphQL api (default 11456)

PATHNAME URL path at which GraphQL API is exposed (default /graphql)

GRAPHIQL Configuration to enable the GraphiQL IDE (default disabled)

Authorization

Authorization is inherited from the pod's service account credentials read from the container's filesystem. The following options allow configuration of this behavior.

Example service account and RBAC configuration.

API_SERVER_URL Base URL of the API server (default https://kubernetes.default.svc)

TOKEN_PATH Path to the pod's service account token (default /var/run/secrets/kubernetes.io/serviceaccount/token)

CERTIFICATE_PATH Path to the API server's certificate (default /var/run/secrets/kubernetes.io/serviceaccount/ca.crt)

You may need to enable RBAC explicitly when using minikube.

License

MIT

About

graphql interface for the kubernetes api

License:MIT License


Languages

Language:JavaScript 70.3%Language:Shell 20.9%Language:Dockerfile 8.8%