feat: add pgadmin argo app

This commit is contained in:
cătălin 2026-08-19 15:28:46 +02:00
commit 173633c6f1
No known key found for this signature in database
7 changed files with 79 additions and 26 deletions

View file

@ -17,6 +17,7 @@ spec:
valuesObject: valuesObject:
service: service:
type: LoadBalancer type: LoadBalancer
port: 8081
ingress: ingress:
enabled: true enabled: true
className: traefik className: traefik

View file

@ -15,7 +15,6 @@ spec:
targetRevision: 0.11.6 targetRevision: 0.11.6
helm: helm:
valuesObject: valuesObject:
enabled: true enabled: true
pod: pod:
autoscaling: autoscaling:
@ -30,6 +29,7 @@ spec:
memory: 1024Mi memory: 1024Mi
service: service:
type: LoadBalancer type: LoadBalancer
port: 9091
ingress: ingress:
enabled: true enabled: true
className: traefik className: traefik

View file

@ -64,8 +64,8 @@ spec:
minAvailable: 1 minAvailable: 1
service: service:
type: LoadBalancer type: LoadBalancer
servicePortHttp: 9000 servicePortHttp: 9001
servicePortHttps: 9443 servicePortHttps: 9444
annotations: annotations:
traefik.ingress.kubernetes.io/service.serversscheme: https traefik.ingress.kubernetes.io/service.serversscheme: https
traefik.ingress.kubernetes.io/service.serverstransport: apps-fuku-skipverify-authentik@kubernetescrd # yamllint disable rule:line-length traefik.ingress.kubernetes.io/service.serverstransport: apps-fuku-skipverify-authentik@kubernetescrd # yamllint disable rule:line-length

View file

@ -0,0 +1,48 @@
---
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: pgadmin
namespace: argo-cd
spec:
destination:
name: ''
namespace: apps-fuku
server: https://kubernetes.default.svc
project: fuku
sources:
- chart: pgadmin4
repoURL: https://helm.runix.net
targetRevision: 1.49.0
helm:
valuesObject:
image:
tag: "9.7"
service:
type: LoadBalancer
port: 8010
ingress:
enabled: true
ingressClassName: traefik
hosts:
- host: pgadmin.fuku
paths:
- path: /
pathType: Prefix
env:
email: admin@fukurokuju.dev
enhanced_cookie_protection: "False"
existingSecret: secrets-pgadmin
persistentVolume:
enabled: true
existingClaim: pgadmin-pgadmin4
accessModes:
- ReadWriteMany
size: 10Gi
storageClass: truenas-nfs-csi
test:
enabled: false
syncPolicy:
automated:
prune: true
selfHeal: true

View file

@ -20,6 +20,9 @@ spec:
valuesObject: valuesObject:
service: service:
type: LoadBalancer type: LoadBalancer
httpPort: 9002
httpsPort: 9445
edgePort: 8005
ingress: ingress:
enabled: true enabled: true
ingressClassName: traefik ingressClassName: traefik
@ -27,6 +30,7 @@ spec:
- host: containers.fukurokuju.dev - host: containers.fukurokuju.dev
paths: paths:
- path: / - path: /
port: 9002
tls: [] tls: []
persistence: persistence:
storageClass: truenas-nfs-csi storageClass: truenas-nfs-csi

View file

@ -25,6 +25,7 @@ spec:
- ghcr.io/antoniolago/charts - ghcr.io/antoniolago/charts
- https://repo.helmforge.dev - https://repo.helmforge.dev
- https://harish2k01.github.io/helm-charts/ - https://harish2k01.github.io/helm-charts/
- https://helm.runix.net
- git.roboces.dev/catalin/fukuops - git.roboces.dev/catalin/fukuops
- https://kubereboot.github.io/charts - https://kubereboot.github.io/charts
- https://charts.goauthentik.io/ - https://charts.goauthentik.io/

View file

@ -92,6 +92,19 @@ fi
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
K8S_DIR="$(cd "$SCRIPT_DIR/.." && pwd)" K8S_DIR="$(cd "$SCRIPT_DIR/.." && pwd)"
extract_lb_port() {
local file="$1"
local field="$2"
local selector="$3"
local value
value=$(yq -r '.. | objects | select(.type == "LoadBalancer") | '"$selector"' // empty' "$file" 2>/dev/null || true)
if [[ -n "$value" ]] && [[ "$value" != "null" ]] && [[ "$value" =~ ^[0-9]+$ ]]; then
PORTS+=("$value")
[[ $VERBOSE -eq 1 ]] && echo "[DEBUG] Found $field $value in $file"
fi
}
collect_ports() { collect_ports() {
PORTS=() PORTS=()
@ -104,29 +117,15 @@ collect_ports() {
continue continue
fi fi
lb_port=$(yq -r '.. | objects | select(.type == "LoadBalancer") | select(.port != null) | .port // empty' "$file" 2>/dev/null || true) extract_lb_port "$file" ".port" ".port"
if [[ -n "$lb_port" ]] && [[ "$lb_port" != "null" ]] && [[ "$lb_port" =~ ^[0-9]+$ ]]; then extract_lb_port "$file" "servicePortHttp" ".servicePortHttp"
PORTS+=("$lb_port") extract_lb_port "$file" "servicePortHttps" ".servicePortHttps"
[[ $VERBOSE -eq 1 ]] && echo "[DEBUG] Found .port $lb_port in $file" extract_lb_port "$file" "dns.port" ".dns.port"
fi extract_lb_port "$file" "httpPort" ".httpPort"
extract_lb_port "$file" "httpsPort" ".httpsPort"
service_port_http=$(yq -r '.. | objects | select(.type == "LoadBalancer") | .servicePortHttp // empty' "$file" 2>/dev/null || true) extract_lb_port "$file" "edgePort" ".edgePort"
if [[ -n "$service_port_http" ]] && [[ "$service_port_http" != "null" ]] && [[ "$service_port_http" =~ ^[0-9]+$ ]]; then extract_lb_port "$file" "ldapPort" ".ldapPort"
PORTS+=("$service_port_http") extract_lb_port "$file" "servicePort" ".servicePort"
[[ $VERBOSE -eq 1 ]] && echo "[DEBUG] Found servicePortHttp $service_port_http in $file"
fi
service_port_https=$(yq -r '.. | objects | select(.type == "LoadBalancer") | .servicePortHttps // empty' "$file" 2>/dev/null || true)
if [[ -n "$service_port_https" ]] && [[ "$service_port_https" != "null" ]] && [[ "$service_port_https" =~ ^[0-9]+$ ]]; then
PORTS+=("$service_port_https")
[[ $VERBOSE -eq 1 ]] && echo "[DEBUG] Found servicePortHttps $service_port_https in $file"
fi
service_dns_port=$(yq -r '.. | objects | select(.type == "LoadBalancer") | .dns.port // empty' "$file" 2>/dev/null || true)
if [[ -n "$service_dns_port" ]] && [[ "$service_dns_port" != "null" ]] && [[ "$service_dns_port" =~ ^[0-9]+$ ]]; then
PORTS+=("$service_dns_port")
[[ $VERBOSE -eq 1 ]] && echo "[DEBUG] Found dns.port $service_dns_port in $file"
fi
done < <(find "$K8S_DIR/k8s" -name "*.yaml" -type f 2>/dev/null) || true done < <(find "$K8S_DIR/k8s" -name "*.yaml" -type f 2>/dev/null) || true
if command -v kubectl &>/dev/null && kubectl cluster-info &>/dev/null 2>&1; then if command -v kubectl &>/dev/null && kubectl cluster-info &>/dev/null 2>&1; then