Compare commits

..

No commits in common. "d4772acd3880d5bb4b5f7b958b4dd2186a85dd94" and "5b96e3a64cef631f149c46a871d161aa9e7c83cb" have entirely different histories.

4 changed files with 264 additions and 307 deletions

View file

@ -1,19 +0,0 @@
{ lib, config, kubenix, ... }: {
kubernetes.helm.releases.cloudflare-exporter = {
namespace = "default";
chart = kubenix.lib.helm.fetch {
repo = "https://lablabs.github.io/cloudflare-exporter";
chart = "cloudflare-exporter";
version = "0.1.9";
sha256 = "sha256-ZTyE6I3vV9tjKRRc84EvoqboS01SPKVb74jYN8prnfA=";
};
values = {
image.tag = "0.0.14";
secretRef = "cloudflare-exporter";
serviceMonitor = {
enabled = true;
labels.release = "prometheus";
};
};
};
}

View file

@ -1,9 +1,4 @@
{ lib, ... }: {
kubernetes.resourceOrder =
[ "CustomResourceDefinition"
"Namespace"
"ConfigMap"
];
kubernetes.customTypes = [
{
name = "servicemonitors";

View file

@ -1,5 +1,42 @@
{ lib, config, kubenix, ... }:
let homepage-config = {
{ lib, config, kubenix, ... }: {
kubernetes.helm.releases.homepage = {
chart = kubenix.lib.helm.fetch {
repo = "https://jameswynn.github.io/helm-charts";
chart = "homepage";
version = "1.2.3";
sha256 = "sha256-tZv/+ePFPifilp8wU4FjogSJhNEERx0PcdHUzsBxfRA=";
};
# arbitrary attrset passed as values to the helm release
values = {
replicaCount = 2;
image = {
repository = "ghcr.io/gethomepage/homepage";
tag = "latest";
};
serviceAccount.create = true;
enableRbac = true;
ingress.main = {
enabled = true;
ingressClassName = "nginx";
hosts = [
{
host = "home.gmem.ca";
paths = [
{
path = "/";
pathType = "Prefix";
}
];
}
];
tls = [
{
hosts = [ "home.gmem.ca" ];
secretName = "gmem-ca-wildcard";
}
];
};
config = {
bookmarks = [];
services = [
{
@ -71,7 +108,7 @@ let homepage-config = {
}
{ NextDNS = {
icon = "nextdns.png";
href = "https://my.nextdns.io/bcee89/setup";
href = "https://my.nextdns.io";
description = "DNS provider";
widget = {
type = "nextdns";
@ -80,10 +117,10 @@ let homepage-config = {
};
};
}
{ "Proxmox" = {
{ "Proxmox Homelab" = {
icon = "proxmox.png";
href = "https://proxmox.gmem.ca";
description = "Homelab proxmox";
description = "Homelabe proxmox";
widget = {
type = "proxmox";
url = "https://proxmox.gmem.ca";
@ -103,17 +140,6 @@ let homepage-config = {
};
};
}
{ "NextDNS Tailscale" = {
icon = "nextdns.png";
href = "https://my.nextdns.io/74c6db/setup";
description = "Tailnet DNS provider";
widget = {
type = "nextdns";
profile = "74c6db";
key = "{{HOMEPAGE_VAR_NEXTDNS_KEY}}";
};
};
}
];
}
{
@ -272,55 +298,11 @@ let homepage-config = {
}
];
};
in
{
kubernetes.helm.releases.homepage = {
chart = kubenix.lib.helm.fetch {
repo = "https://jameswynn.github.io/helm-charts";
chart = "homepage";
version = "1.2.3";
sha256 = "sha256-tZv/+ePFPifilp8wU4FjogSJhNEERx0PcdHUzsBxfRA=";
};
# arbitrary attrset passed as values to the helm release
values = {
replicaCount = 2;
image = {
repository = "ghcr.io/gethomepage/homepage";
tag = "latest";
};
serviceAccount.create = true;
enableRbac = true;
config = homepage-config;
ingress.main = {
enabled = true;
ingressClassName = "nginx";
hosts = [
{
host = "home.gmem.ca";
paths = [
{
path = "/";
pathType = "Prefix";
}
];
}
];
tls = [
{
hosts = [ "home.gmem.ca" ];
secretName = "gmem-ca-wildcard";
}
];
};
};
};
kubernetes.resources.deployments.homepage = {
metadata.namespace = "default";
spec.template = {
metadata.annotations."gmem.ca/homepage-config-hash" = (builtins.hashString "md5" (builtins.toJSON homepage-config));
spec.containers.homepage.envFrom = [ { secretRef.name = "homepage-config"; } ];
};
spec.template.spec.containers.homepage.envFrom = [ { secretRef.name = "homepage-config"; } ];
};
}

View file

@ -9,6 +9,5 @@
(import ./endpoints.nix)
(import ./homepage.nix)
(import ./pterodactyl.nix)
(import ./cloudflare-exporter.nix)
];
}