From e0abe3a8189900e3a6f98a8e6bb4972de8d589f2 Mon Sep 17 00:00:00 2001 From: Alex <5896622+cyxou@users.noreply.github.com> Date: Sun, 12 Nov 2023 09:54:45 +0300 Subject: [PATCH] Add homepage chart (#70) * add homepage chart * Minor tweaks * remove openweathermap provider * Make linting happy * Use 1.3.0 librepod lib version --- charts/homepage/.helmignore | 23 ++++++++++ charts/homepage/Chart.lock | 6 +++ charts/homepage/Chart.yaml | 20 +++++++++ charts/homepage/configmap/bookmarks.yaml | 8 ++++ charts/homepage/configmap/services.yaml | 17 +++++++ charts/homepage/configmap/settings.yaml | 3 ++ charts/homepage/configmap/widgets.yaml | 12 +++++ charts/homepage/templates/all.yaml | 1 + charts/homepage/values.yaml | 57 ++++++++++++++++++++++++ 9 files changed, 147 insertions(+) create mode 100644 charts/homepage/.helmignore create mode 100644 charts/homepage/Chart.lock create mode 100644 charts/homepage/Chart.yaml create mode 100644 charts/homepage/configmap/bookmarks.yaml create mode 100644 charts/homepage/configmap/services.yaml create mode 100644 charts/homepage/configmap/settings.yaml create mode 100644 charts/homepage/configmap/widgets.yaml create mode 100644 charts/homepage/templates/all.yaml create mode 100644 charts/homepage/values.yaml diff --git a/charts/homepage/.helmignore b/charts/homepage/.helmignore new file mode 100644 index 0000000..0e8a0eb --- /dev/null +++ b/charts/homepage/.helmignore @@ -0,0 +1,23 @@ +# Patterns to ignore when building packages. +# This supports shell glob matching, relative path matching, and +# negation (prefixed with !). Only one pattern per line. +.DS_Store +# Common VCS dirs +.git/ +.gitignore +.bzr/ +.bzrignore +.hg/ +.hgignore +.svn/ +# Common backup files +*.swp +*.bak +*.tmp +*.orig +*~ +# Various IDEs +.project +.idea/ +*.tmproj +.vscode/ diff --git a/charts/homepage/Chart.lock b/charts/homepage/Chart.lock new file mode 100644 index 0000000..5c8a04a --- /dev/null +++ b/charts/homepage/Chart.lock @@ -0,0 +1,6 @@ +dependencies: +- name: librepod + repository: https://librepod.github.io/charts + version: 1.3.0 +digest: sha256:961f017c638697b12fc2207ee097dab32356f27322e5364fa8fb4874fb2dca45 +generated: "2023-11-12T09:50:22.437304903+03:00" diff --git a/charts/homepage/Chart.yaml b/charts/homepage/Chart.yaml new file mode 100644 index 0000000..3387d90 --- /dev/null +++ b/charts/homepage/Chart.yaml @@ -0,0 +1,20 @@ +apiVersion: v2 +name: homepage +description: | + A modern (fully static, fast), secure (fully proxied), highly customizable application + dashboard with integrations for more than 25 services and translations for over 15 languages. + Easily configured via YAML files (or discovery via docker labels). +version: 0.1.0 +appVersion: v0.4.18 +kubeVersion: ">=1.16.0-0" +type: application +keywords: + - homepage + - startpage +home: https://github.com/librepod/charts/tree/master/charts/homepage +sources: + - https://github.com/benphelps/homepage +dependencies: + - name: librepod + version: 1.3.0 + repository: https://librepod.github.io/charts diff --git a/charts/homepage/configmap/bookmarks.yaml b/charts/homepage/configmap/bookmarks.yaml new file mode 100644 index 0000000..729e637 --- /dev/null +++ b/charts/homepage/configmap/bookmarks.yaml @@ -0,0 +1,8 @@ +--- +# For configuration options and examples, please see: +# https://github.com/benphelps/homepage/wiki/Bookmarks + +- Developer: + - Github: + - abbr: GH + href: https://github.com/librepod diff --git a/charts/homepage/configmap/services.yaml b/charts/homepage/configmap/services.yaml new file mode 100644 index 0000000..1481fcb --- /dev/null +++ b/charts/homepage/configmap/services.yaml @@ -0,0 +1,17 @@ +--- +# For configuration options and examples, please see: +# https://github.com/benphelps/homepage/wiki/Services + +- LibrePod: + +# - Wireguard: +# href: https://wireguard.libre.pod +# description: Grant access to your LibrePod + +# - Pi-hole: +# href: https://pihole.libre.pod +# description: Network-wide ad blocking + +# - Traefik: +# href: https://traefik.libre.pod +# description: The Cloud-Native application proxy diff --git a/charts/homepage/configmap/settings.yaml b/charts/homepage/configmap/settings.yaml new file mode 100644 index 0000000..1864840 --- /dev/null +++ b/charts/homepage/configmap/settings.yaml @@ -0,0 +1,3 @@ +--- +# For configuration options and examples, please see: +# https://github.com/benphelps/homepage/wiki/Settings diff --git a/charts/homepage/configmap/widgets.yaml b/charts/homepage/configmap/widgets.yaml new file mode 100644 index 0000000..a5c6a91 --- /dev/null +++ b/charts/homepage/configmap/widgets.yaml @@ -0,0 +1,12 @@ +--- +# For configuration options and examples, please see: +# https://github.com/benphelps/homepage/wiki/Information-Widgets + +- resources: + cpu: true + memory: true + disk: / + +- search: + provider: duckduckgo + target: _blank diff --git a/charts/homepage/templates/all.yaml b/charts/homepage/templates/all.yaml new file mode 100644 index 0000000..6b1fe4e --- /dev/null +++ b/charts/homepage/templates/all.yaml @@ -0,0 +1 @@ +{{- include "librepod.all" . -}} diff --git a/charts/homepage/values.yaml b/charts/homepage/values.yaml new file mode 100644 index 0000000..41824aa --- /dev/null +++ b/charts/homepage/values.yaml @@ -0,0 +1,57 @@ +# The 'hostIP' is supposed to be set upon chart installation: +# helm install pihole --set hostIP="192.168.1.200" +image: + repository: ghcr.io/benphelps/homepage + pullPolicy: IfNotPresent + tag: "" + +service: + main: + enabled: true + ports: + http: + enabled: true + primary: true + port: 3000 + +ingress: + main: + enabled: true + hosts: + - host: libre.pod + +persistence: + bookmarks: + enabled: true + type: configMap + name: '{{ include "librepod.names.fullname" . }}-bookmarks' + mountPath: /app/config/bookmarks.yaml + subPath: bookmarks.yaml + services: + enabled: true + type: configMap + name: '{{ include "librepod.names.fullname" . }}-services' + mountPath: /app/config/services.yaml + subPath: services.yaml + +configmap: + bookmarks: + enabled: true + data: + bookmarks.yaml: | + {{- (.Files.Get "configmap/bookmarks.yaml") | nindent 4 }} + services: + enabled: true + data: + services.yaml: | + {{- (.Files.Get "configmap/services.yaml") | nindent 4 }} + settings: + enabled: true + data: + settings.yaml: | + {{- (.Files.Get "configmap/settings.yaml") | nindent 4 }} + widgets: + enabled: true + data: + widgets.yaml: | + {{- (.Files.Get "configmap/widgets.yaml") | nindent 4 }}