## Summary - Add TeslaMate k8s deployment with Tailscale ingress at tesla.tail8d86e.ts.net - Add teslamate user to CloudNativePG blumeops-pg cluster - Add TeslaMate PostgreSQL datasource to Grafana - Import 18 TeslaMate Grafana dashboards for charging, drives, efficiency, etc. - Add teslamate database to borgmatic backup configuration ## Deployment and Testing - [ ] Create 1Password items: "TeslaMate DB Password" and "TeslaMate Encryption Key" - [ ] Apply database user secret: `op inject -i argocd/manifests/databases/secret-teslamate.yaml.tpl | kubectl apply -f -` - [ ] Sync blumeops-pg: `argocd app sync blumeops-pg` - [ ] Create teslamate database - [ ] Apply teslamate secrets (encryption key, db connection) - [ ] Apply Grafana datasource secret: `op inject -i argocd/manifests/grafana-config/secret-teslamate-datasource.yaml.tpl | kubectl apply -f -` - [ ] Sync apps and teslamate: `argocd app sync apps teslamate grafana grafana-config` - [ ] Complete Tesla API OAuth flow at https://tesla.tail8d86e.ts.net - [ ] Verify data collection starts - [ ] Verify Grafana dashboards show data 🤖 Generated with [Claude Code](https://claude.com/claude-code) Reviewed-on: https://forge.tail8d86e.ts.net/eblume/blumeops/pulls/47
25 lines
736 B
YAML
25 lines
736 B
YAML
# ArgoCD Application for Tailscale Kubernetes Operator
|
|
# Note: OAuth secret is managed separately (not in git)
|
|
apiVersion: argoproj.io/v1alpha1
|
|
kind: Application
|
|
metadata:
|
|
name: tailscale-operator
|
|
namespace: argocd
|
|
spec:
|
|
project: default
|
|
# Tailscale operator mutates externalName from "placeholder" to actual proxy service
|
|
ignoreDifferences:
|
|
- group: ""
|
|
kind: Service
|
|
jsonPointers:
|
|
- /spec/externalName
|
|
source:
|
|
repoURL: ssh://forgejo@indri.tail8d86e.ts.net:2200/eblume/blumeops.git
|
|
targetRevision: main
|
|
path: argocd/manifests/tailscale-operator
|
|
destination:
|
|
server: https://kubernetes.default.svc
|
|
namespace: tailscale
|
|
syncPolicy:
|
|
syncOptions:
|
|
- CreateNamespace=true
|