MCPcopy Index your code
hub / github.com/coder/coder / ReadExperiments

Function ReadExperiments

coderd/coderd.go:2539–2556  ·  view source on GitHub ↗

nolint:revive

(log slog.Logger, raw []string)

Source from the content-addressed store, hash-verified

2537
2538// nolint:revive
2539func ReadExperiments(log slog.Logger, raw []string) codersdk.Experiments {
2540 exps := make([]codersdk.Experiment, 0, len(raw))
2541 for _, v := range raw {
2542 switch v {
2543 case "*":
2544 exps = append(exps, codersdk.ExperimentsSafe...)
2545 default:
2546 ex := codersdk.Experiment(strings.ToLower(v))
2547 if !slice.Contains(codersdk.ExperimentsKnown, ex) {
2548 log.Warn(context.Background(), "ignoring unknown experiment", slog.F("experiment", ex))
2549 } else if !slice.Contains(codersdk.ExperimentsSafe, ex) {
2550 log.Warn(context.Background(), "🐉 HERE BE DRAGONS: opting into hidden experiment", slog.F("experiment", ex))
2551 }
2552 exps = append(exps, ex)
2553 }
2554 }
2555 return exps
2556}
2557
2558var multipleSlashesRe = regexp.MustCompile(`/+`)
2559

Callers 7

NewOptionsFunction · 0.92
setupFunction · 0.92
enablePrometheusFunction · 0.92
ServerMethod · 0.92
proxyServerMethod · 0.92
NewFunction · 0.85

Calls 2

ExperimentTypeAlias · 0.92
ContainsFunction · 0.92

Tested by 1

setupFunction · 0.74