mirror of
https://github.com/hanzoai/status.git
synced 2026-10-30 18:21:48 +00:00
White-labelable status monitoring service with all Gatus branding removed. Defaults to neutral "Status" text. Branding is driven entirely by the ui section in config YAML. - Pure Go build (CGO_ENABLED=0, modernc.org/sqlite) - Multi-stage Dockerfile (node frontend + go backend + alpine runtime) - K8s kustomize overlays for hanzo and lux deployments - GitHub Actions CI for GHCR image push - Pre-built Vue frontend with zero upstream branding
22 lines
597 B
Go
22 lines
597 B
Go
package key
|
|
|
|
import "strings"
|
|
|
|
// ConvertGroupAndNameToKey converts a group and a name to a key
|
|
func ConvertGroupAndNameToKey(groupName, name string) string {
|
|
return sanitize(groupName) + "_" + sanitize(name)
|
|
}
|
|
|
|
func sanitize(s string) string {
|
|
s = strings.TrimSpace(strings.ToLower(s))
|
|
s = strings.ReplaceAll(s, "/", "-")
|
|
s = strings.ReplaceAll(s, "_", "-")
|
|
s = strings.ReplaceAll(s, ".", "-")
|
|
s = strings.ReplaceAll(s, ",", "-")
|
|
s = strings.ReplaceAll(s, " ", "-")
|
|
s = strings.ReplaceAll(s, "#", "-")
|
|
s = strings.ReplaceAll(s, "+", "-")
|
|
s = strings.ReplaceAll(s, "&", "-")
|
|
return s
|
|
}
|