Compare commits
No commits in common. "d4772acd3880d5bb4b5f7b958b4dd2186a85dd94" and "5b96e3a64cef631f149c46a871d161aa9e7c83cb" have entirely different histories.
d4772acd38
...
5b96e3a64c
|
@ -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";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
|
|
@ -1,9 +1,4 @@
|
||||||
{ lib, ... }: {
|
{ lib, ... }: {
|
||||||
kubernetes.resourceOrder =
|
|
||||||
[ "CustomResourceDefinition"
|
|
||||||
"Namespace"
|
|
||||||
"ConfigMap"
|
|
||||||
];
|
|
||||||
kubernetes.customTypes = [
|
kubernetes.customTypes = [
|
||||||
{
|
{
|
||||||
name = "servicemonitors";
|
name = "servicemonitors";
|
||||||
|
|
|
@ -1,5 +1,42 @@
|
||||||
{ lib, config, kubenix, ... }:
|
{ lib, config, kubenix, ... }: {
|
||||||
let homepage-config = {
|
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 = [];
|
bookmarks = [];
|
||||||
services = [
|
services = [
|
||||||
{
|
{
|
||||||
|
@ -71,7 +108,7 @@ let homepage-config = {
|
||||||
}
|
}
|
||||||
{ NextDNS = {
|
{ NextDNS = {
|
||||||
icon = "nextdns.png";
|
icon = "nextdns.png";
|
||||||
href = "https://my.nextdns.io/bcee89/setup";
|
href = "https://my.nextdns.io";
|
||||||
description = "DNS provider";
|
description = "DNS provider";
|
||||||
widget = {
|
widget = {
|
||||||
type = "nextdns";
|
type = "nextdns";
|
||||||
|
@ -80,10 +117,10 @@ let homepage-config = {
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
{ "Proxmox" = {
|
{ "Proxmox Homelab" = {
|
||||||
icon = "proxmox.png";
|
icon = "proxmox.png";
|
||||||
href = "https://proxmox.gmem.ca";
|
href = "https://proxmox.gmem.ca";
|
||||||
description = "Homelab proxmox";
|
description = "Homelabe proxmox";
|
||||||
widget = {
|
widget = {
|
||||||
type = "proxmox";
|
type = "proxmox";
|
||||||
url = "https://proxmox.gmem.ca";
|
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 = {
|
kubernetes.resources.deployments.homepage = {
|
||||||
metadata.namespace = "default";
|
metadata.namespace = "default";
|
||||||
|
spec.template.spec.containers.homepage.envFrom = [ { secretRef.name = "homepage-config"; } ];
|
||||||
spec.template = {
|
|
||||||
metadata.annotations."gmem.ca/homepage-config-hash" = (builtins.hashString "md5" (builtins.toJSON homepage-config));
|
|
||||||
spec.containers.homepage.envFrom = [ { secretRef.name = "homepage-config"; } ];
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -9,6 +9,5 @@
|
||||||
(import ./endpoints.nix)
|
(import ./endpoints.nix)
|
||||||
(import ./homepage.nix)
|
(import ./homepage.nix)
|
||||||
(import ./pterodactyl.nix)
|
(import ./pterodactyl.nix)
|
||||||
(import ./cloudflare-exporter.nix)
|
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue