Documentation and cleanup

This commit is contained in:
atropos 2023-12-17 17:43:11 +00:00
parent a6b2f7fea3
commit 5c2aa4ebef
2 changed files with 8 additions and 3 deletions

View File

@ -79,6 +79,7 @@ metadata:
gethomepage.dev/widget.url: "https://emby.example.com" gethomepage.dev/widget.url: "https://emby.example.com"
gethomepage.dev/pod-selector: "" gethomepage.dev/pod-selector: ""
gethomepage.dev/weight: 10 # optional gethomepage.dev/weight: 10 # optional
gethomepage.dev/instance: "public" # optional
spec: spec:
rules: rules:
- host: emby.example.com - host: emby.example.com
@ -93,7 +94,7 @@ spec:
pathType: Prefix pathType: Prefix
``` ```
When the Kubernetes cluster connection has been properly configured, this service will be automatically discovered and added to your Homepage. **You do not need to specify the `namespace` or `app` values, as they will be automatically inferred.** When the Kubernetes cluster connection has been properly configured, this service will be automatically discovered and added to your Homepage. **You do not need to specify the `namespace` or `app` values, as they will be automatically inferred.** In case of multiple instances of homepage, instance annotation can be specified to limit to a specific instance, if no instance is provided, the service will be visible on all instances.
### Traefik IngressRoute support ### Traefik IngressRoute support
@ -116,6 +117,7 @@ metadata:
gethomepage.dev/widget.url: "https://emby.example.com" gethomepage.dev/widget.url: "https://emby.example.com"
gethomepage.dev/pod-selector: "" gethomepage.dev/pod-selector: ""
gethomepage.dev/weight: 10 # optional gethomepage.dev/weight: 10 # optional
gethomepage.dev/instance: "public" # optional
spec: spec:
entryPoints: entryPoints:
- websecure - websecure

View File

@ -239,7 +239,10 @@ export async function servicesFromKubernetes() {
const services = ingressList.items const services = ingressList.items
.filter( .filter(
(ingress) => (ingress) =>
ingress.metadata.annotations && ingress.metadata.annotations[`${ANNOTATION_BASE}/enabled`] === "true" && (!ingress.metadata.annotations[`${ANNOTATION_BASE}/instance`] || ingress.metadata.annotations[`${ANNOTATION_BASE}/instance`] === instanceName), ingress.metadata.annotations &&
ingress.metadata.annotations[`${ANNOTATION_BASE}/enabled`] === "true" &&
(!ingress.metadata.annotations[`${ANNOTATION_BASE}/instance`] ||
ingress.metadata.annotations[`${ANNOTATION_BASE}/instance`] === instanceName),
) )
.map((ingress) => { .map((ingress) => {
let constructedService = { let constructedService = {