sync: migrate ai-operator to Gitea (2026-08-10)
This commit is contained in:
@@ -0,0 +1,60 @@
|
||||
package config
|
||||
|
||||
import (
|
||||
"net/url"
|
||||
"strings"
|
||||
)
|
||||
|
||||
func MaskSecret(value string) string {
|
||||
if strings.TrimSpace(value) == "" {
|
||||
return "***EMPTY***"
|
||||
}
|
||||
return "***MASKED***"
|
||||
}
|
||||
|
||||
func MaskOpenAIKey(value string) string {
|
||||
if strings.TrimSpace(value) == "" {
|
||||
return "***EMPTY***"
|
||||
}
|
||||
if strings.HasPrefix(value, "sk-") {
|
||||
return "sk-***MASKED***"
|
||||
}
|
||||
return "***MASKED***"
|
||||
}
|
||||
|
||||
func MaskURLCredentials(value string) string {
|
||||
if strings.TrimSpace(value) == "" {
|
||||
return "***EMPTY***"
|
||||
}
|
||||
parsed, err := url.Parse(value)
|
||||
if err != nil || parsed.User == nil {
|
||||
return value
|
||||
}
|
||||
if username := parsed.User.Username(); username != "" {
|
||||
parsed.User = url.UserPassword("***MASKED***", "***MASKED***")
|
||||
}
|
||||
return parsed.String()
|
||||
}
|
||||
|
||||
func MaskEndpoint(value string) string {
|
||||
v := strings.TrimSpace(value)
|
||||
if v == "" {
|
||||
return ""
|
||||
}
|
||||
if strings.Contains(v, "@") {
|
||||
parts := strings.Split(v, "@")
|
||||
return "***MASKED***@" + parts[len(parts)-1]
|
||||
}
|
||||
return v
|
||||
}
|
||||
|
||||
func MaskPhoneNumber(value string) string {
|
||||
v := strings.TrimSpace(value)
|
||||
if len(v) < 6 {
|
||||
return "***MASKED***"
|
||||
}
|
||||
if len(v) <= 7 {
|
||||
return v[:3] + "***"
|
||||
}
|
||||
return v[:4] + "***" + v[len(v)-4:]
|
||||
}
|
||||
Reference in New Issue
Block a user