1
0
Fork 0
mirror of https://code.forgejo.org/forgejo/runner.git synced 2025-08-26 18:20:59 +00:00

fix: valueMasker concurrent map write (#5026) (simplify)

This commit is contained in:
Earl Warren 2025-08-07 21:58:23 +02:00
parent 7209a6be39
commit 1d09a294f0
No known key found for this signature in database
GPG key ID: 0579CB2928A78A00

View file

@ -5,6 +5,7 @@ import (
"context" "context"
"fmt" "fmt"
"io" "io"
"maps"
"os" "os"
"strings" "strings"
"sync" "sync"
@ -158,10 +159,7 @@ func withStepLogger(ctx context.Context, stepNumber int, stepID, stepName, stage
type entryProcessor func(entry *logrus.Entry) *logrus.Entry type entryProcessor func(entry *logrus.Entry) *logrus.Entry
func valueMasker(insecureSecrets bool, secrets map[string]string) entryProcessor { func valueMasker(insecureSecrets bool, secrets map[string]string) entryProcessor {
ssecrets := []string{} secrets = maps.Clone(secrets)
for _, v := range secrets {
ssecrets = append(ssecrets, v)
}
return func(entry *logrus.Entry) *logrus.Entry { return func(entry *logrus.Entry) *logrus.Entry {
if insecureSecrets { if insecureSecrets {
return entry return entry
@ -169,7 +167,7 @@ func valueMasker(insecureSecrets bool, secrets map[string]string) entryProcessor
masks := Masks(entry.Context) masks := Masks(entry.Context)
for _, v := range ssecrets { for _, v := range secrets {
if v != "" { if v != "" {
entry.Message = strings.ReplaceAll(entry.Message, v, "***") entry.Message = strings.ReplaceAll(entry.Message, v, "***")
} }