ullbergm / startpunkt

Startpunkt is a clean start page designed to display links to all your self-hosted resources in your kubernetes cluster. It automatically detects running services in the cluster and adds them to the start page, while offering customization using labels and CRDs.
MIT License
1 stars 2 forks source link

feat: Add support for Gateway-API #86

Open ullbergm opened 1 month ago

ullbergm commented 1 month ago

Feature Request

Describe the Feature Request

Gateway API is an open source project managed by the SIG-NETWORK community. It is an API (collection of resources) that model service networking in Kubernetes. These resources - GatewayClass, Gateway, HTTPRoute, TCPRoute, etc., as well as the Kubernetes Service resource - aim to evolve Kubernetes service networking through expressive, extensible, and role-oriented interfaces that are implemented by many vendors and have broad industry support.

Describe Preferred Solution

The annotations would be placed on the "HTTPRoute" resource (which works in a similar way to ingress).

Official documentation

Describe Alternatives

Use Startpunkt Application CRD.

Related Code

Additional Context

Example of HTTPRoute:

apiVersion: gateway.networking.k8s.io/v1beta1
kind: HTTPRoute
metadata:
  name: example-route
  annotations:
    startpunkt.ullberg.us/enable: "true"
    startpunkt.ullberg.us/url: "application.example.com"
spec:
  parentRefs:
  - name: example-gateway
  hostnames:
  - "example.com"
  rules:
  - backendRefs:
    - name: example-svc
      port: 80
ullbergm commented 1 month ago

Based on a request @QJoly made for Hajimari: https://github.com/toboshii/hajimari/issues/163