Add homepage entry to noble_landing_urls and update kustomization.yaml to include homepage resource

This commit is contained in:
Nikholas Pcenicni
2026-03-28 17:07:06 -04:00
parent 76eb7df18c
commit f6647056be
4 changed files with 103 additions and 1 deletions

View File

@@ -44,3 +44,8 @@ noble_lab_ui_entries:
namespace: vault namespace: vault
service: vault service: vault
url: https://vault.apps.noble.lab.pcenicni.dev url: https://vault.apps.noble.lab.pcenicni.dev
- name: Homepage
description: App dashboard (links to lab UIs)
namespace: homepage
service: homepage
url: https://homepage.apps.noble.lab.pcenicni.dev

View File

@@ -0,0 +1,32 @@
# Argo CD — optional [Homepage](https://gethomepage.dev/) dashboard (Helm from [jameswynn.github.io/helm-charts](https://jameswynn.github.io/helm-charts/)).
# Values: **`./values.yaml`** (multi-source **`$values`** ref).
#
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: homepage
namespace: argocd
finalizers:
- resources-finalizer.argocd.argoproj.io/background
spec:
project: default
sources:
- repoURL: https://jameswynn.github.io/helm-charts
chart: homepage
targetRevision: 2.1.0
helm:
releaseName: homepage
valueFiles:
- $values/clusters/noble/apps/homepage/values.yaml
- repoURL: https://gitea.pcenicni.ca/gsdavidp/home-server.git
targetRevision: HEAD
ref: values
destination:
server: https://kubernetes.default.svc
namespace: homepage
syncPolicy:
automated:
prune: true
selfHeal: true
syncOptions:
- CreateNamespace=true

View File

@@ -0,0 +1,64 @@
# Homepage — [gethomepage/homepage](https://github.com/gethomepage/homepage) via [jameswynn/homepage](https://github.com/jameswynn/helm-charts) Helm chart.
# Ingress: Traefik + cert-manager (same pattern as `clusters/noble/bootstrap/headlamp/values.yaml`).
# Service links match **`ansible/roles/noble_landing_urls/defaults/main.yml`** (`noble_lab_ui_entries`).
#
image:
repository: ghcr.io/gethomepage/homepage
tag: v1.2.0
ingress:
main:
enabled: true
ingressClassName: traefik
annotations:
cert-manager.io/cluster-issuer: letsencrypt-prod
hosts:
- host: homepage.apps.noble.lab.pcenicni.dev
paths:
- path: /
pathType: Prefix
tls:
- hosts:
- homepage.apps.noble.lab.pcenicni.dev
secretName: homepage-apps-noble-tls
env:
- name: HOMEPAGE_ALLOWED_HOSTS
value: homepage.apps.noble.lab.pcenicni.dev
config:
bookmarks: []
services:
- Noble Lab:
- Argo CD:
href: https://argo.apps.noble.lab.pcenicni.dev
description: GitOps UI (sync, apps, repos)
- Grafana:
href: https://grafana.apps.noble.lab.pcenicni.dev
description: Dashboards, Loki explore (logs)
- Prometheus:
href: https://prometheus.apps.noble.lab.pcenicni.dev
description: Prometheus UI (queries, targets) — lab; protect in production
- Alertmanager:
href: https://alertmanager.apps.noble.lab.pcenicni.dev
description: Alertmanager UI (silences, status)
- Headlamp:
href: https://headlamp.apps.noble.lab.pcenicni.dev
description: Kubernetes UI (cluster resources)
- Longhorn:
href: https://longhorn.apps.noble.lab.pcenicni.dev
description: Storage volumes, nodes, backups
- Vault:
href: https://vault.apps.noble.lab.pcenicni.dev
description: Secrets engine UI (after init/unseal)
widgets:
- search:
provider: duckduckgo
target: _blank
kubernetes:
mode: disable
settingsString: |
title: Noble Lab
headerStyle: boxed
layout:
Noble Lab:

View File

@@ -3,4 +3,5 @@
# Helm value files for those apps can live in subdirectories here (for example **./homepage/values.yaml**). # Helm value files for those apps can live in subdirectories here (for example **./homepage/values.yaml**).
apiVersion: kustomize.config.k8s.io/v1beta1 apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization kind: Kustomization
resources: [] resources:
- homepage/application.yaml