diff --git a/coderd/coderd.go b/coderd/coderd.go index e9d7a15a53059..cb069fd6bf29d 100644 --- a/coderd/coderd.go +++ b/coderd/coderd.go @@ -1816,10 +1816,10 @@ func ReadExperiments(log slog.Logger, raw []string) codersdk.Experiments { for _, v := range raw { switch v { case "*": - exps = append(exps, codersdk.ExperimentsAll...) + exps = append(exps, codersdk.ExperimentsSafe...) default: ex := codersdk.Experiment(strings.ToLower(v)) - if !slice.Contains(codersdk.ExperimentsAll, ex) { + if !slice.Contains(codersdk.ExperimentsSafe, ex) { log.Warn(context.Background(), "🐉 HERE BE DRAGONS: opting into hidden experiment", slog.F("experiment", ex)) } exps = append(exps, ex) diff --git a/coderd/experiments.go b/coderd/experiments.go index f7debd8c68bbb..6f03daa4e9d88 100644 --- a/coderd/experiments.go +++ b/coderd/experiments.go @@ -29,6 +29,6 @@ func (api *API) handleExperimentsGet(rw http.ResponseWriter, r *http.Request) { func handleExperimentsSafe(rw http.ResponseWriter, r *http.Request) { ctx := r.Context() httpapi.Write(ctx, rw, http.StatusOK, codersdk.AvailableExperiments{ - Safe: codersdk.ExperimentsAll, + Safe: codersdk.ExperimentsSafe, }) } diff --git a/coderd/experiments_test.go b/coderd/experiments_test.go index 4288b9953fec6..8f5944609ab80 100644 --- a/coderd/experiments_test.go +++ b/coderd/experiments_test.go @@ -69,8 +69,8 @@ func Test_Experiments(t *testing.T) { experiments, err := client.Experiments(ctx) require.NoError(t, err) require.NotNil(t, experiments) - require.ElementsMatch(t, codersdk.ExperimentsAll, experiments) - for _, ex := range codersdk.ExperimentsAll { + require.ElementsMatch(t, codersdk.ExperimentsSafe, experiments) + for _, ex := range codersdk.ExperimentsSafe { require.True(t, experiments.Enabled(ex)) } require.False(t, experiments.Enabled("danger")) @@ -91,8 +91,8 @@ func Test_Experiments(t *testing.T) { experiments, err := client.Experiments(ctx) require.NoError(t, err) require.NotNil(t, experiments) - require.ElementsMatch(t, append(codersdk.ExperimentsAll, "danger"), experiments) - for _, ex := range codersdk.ExperimentsAll { + require.ElementsMatch(t, append(codersdk.ExperimentsSafe, "danger"), experiments) + for _, ex := range codersdk.ExperimentsSafe { require.True(t, experiments.Enabled(ex)) } require.True(t, experiments.Enabled("danger")) @@ -131,6 +131,6 @@ func Test_Experiments(t *testing.T) { experiments, err := client.SafeExperiments(ctx) require.NoError(t, err) require.NotNil(t, experiments) - require.ElementsMatch(t, codersdk.ExperimentsAll, experiments.Safe) + require.ElementsMatch(t, codersdk.ExperimentsSafe, experiments.Safe) }) } diff --git a/coderd/prometheusmetrics/prometheusmetrics.go b/coderd/prometheusmetrics/prometheusmetrics.go index ccd88a9e3fc1d..4fd2cfda607ed 100644 --- a/coderd/prometheusmetrics/prometheusmetrics.go +++ b/coderd/prometheusmetrics/prometheusmetrics.go @@ -655,7 +655,7 @@ func Experiments(registerer prometheus.Registerer, active codersdk.Experiments) return err } - for _, exp := range codersdk.ExperimentsAll { + for _, exp := range codersdk.ExperimentsSafe { var val float64 for _, enabled := range active { if exp == enabled { diff --git a/coderd/prometheusmetrics/prometheusmetrics_test.go b/coderd/prometheusmetrics/prometheusmetrics_test.go index 9911a026ea67a..be804b3a855b0 100644 --- a/coderd/prometheusmetrics/prometheusmetrics_test.go +++ b/coderd/prometheusmetrics/prometheusmetrics_test.go @@ -612,7 +612,7 @@ func TestAgentStats(t *testing.T) { func TestExperimentsMetric(t *testing.T) { t.Parallel() - if len(codersdk.ExperimentsAll) == 0 { + if len(codersdk.ExperimentsSafe) == 0 { t.Skip("No experiments are currently defined; skipping test.") } @@ -624,17 +624,17 @@ func TestExperimentsMetric(t *testing.T) { { name: "Enabled experiment is exported in metrics", experiments: codersdk.Experiments{ - codersdk.ExperimentsAll[0], + codersdk.ExperimentsSafe[0], }, expected: map[codersdk.Experiment]float64{ - codersdk.ExperimentsAll[0]: 1, + codersdk.ExperimentsSafe[0]: 1, }, }, { name: "Disabled experiment is exported in metrics", experiments: codersdk.Experiments{}, expected: map[codersdk.Experiment]float64{ - codersdk.ExperimentsAll[0]: 0, + codersdk.ExperimentsSafe[0]: 0, }, }, { diff --git a/codersdk/deployment.go b/codersdk/deployment.go index cf1952f1b50a2..864a883330776 100644 --- a/codersdk/deployment.go +++ b/codersdk/deployment.go @@ -3258,13 +3258,11 @@ const ( ExperimentDynamicParameters Experiment = "dynamic-parameters" // Enables dynamic parameters when creating a workspace. ) -// ExperimentsAll should include all experiments that are safe for +// ExperimentsSafe should include all experiments that are safe for // users to opt-in to via --experimental='*'. // Experiments that are not ready for consumption by all users should // not be included here and will be essentially hidden. -var ExperimentsAll = Experiments{ - ExperimentDynamicParameters, -} +var ExperimentsSafe = Experiments{} // Experiments is a list of experiments. // Multiple experiments may be enabled at the same time.
Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.
Alternative Proxies: