-
Notifications
You must be signed in to change notification settings - Fork 1.5k
feat: implement claiming of prebuilt workspaces #17458
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from 1 commit
8b9e30d
d9497df
217e46f
c459533
f905219
8266338
4098ed7
50d23e4
546b7ae
85f7926
ee9908c
70bf179
7a72d03
b246589
ff8d3de
fcdbba8
e7b7f80
e7455db
077d7f0
0d426c7
663a8c0
bc31fac
087bd20
9f66169
7f25f24
ff9eeb4
31b873f
4fe770d
8d8fc99
af32325
0826e8a
cbb6c12
e466844
f24557b
fa65564
53b38d7
6c41e03
9173e9a
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
Signed-off-by: Danny Kopping <[email protected]>
- Loading branch information
There are no files selected for viewing
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -81,7 +81,6 @@ const ( | |
| FeatureControlSharedPorts FeatureName = "control_shared_ports" | ||
| FeatureCustomRoles FeatureName = "custom_roles" | ||
| FeatureMultipleOrganizations FeatureName = "multiple_organizations" | ||
| FeatureWorkspacePrebuilds FeatureName = "workspace_prebuilds" | ||
| ) | ||
|
|
||
| // FeatureNames must be kept in-sync with the Feature enum above. | ||
|
|
@@ -104,7 +103,6 @@ var FeatureNames = []FeatureName{ | |
| FeatureControlSharedPorts, | ||
| FeatureCustomRoles, | ||
| FeatureMultipleOrganizations, | ||
| FeatureWorkspacePrebuilds, | ||
| } | ||
|
|
||
| // Humanize returns the feature name in a human-readable format. | ||
|
|
@@ -134,7 +132,6 @@ func (n FeatureName) AlwaysEnable() bool { | |
| FeatureHighAvailability: true, | ||
| FeatureCustomRoles: true, | ||
| FeatureMultipleOrganizations: true, | ||
| FeatureWorkspacePrebuilds: true, | ||
| }[n] | ||
| } | ||
|
|
||
|
|
@@ -396,7 +393,6 @@ type DeploymentValues struct { | |
| TermsOfServiceURL serpent.String `json:"terms_of_service_url,omitempty" typescript:",notnull"` | ||
| Notifications NotificationsConfig `json:"notifications,omitempty" typescript:",notnull"` | ||
| AdditionalCSPPolicy serpent.StringArray `json:"additional_csp_policy,omitempty" typescript:",notnull"` | ||
| Prebuilds PrebuildsConfig `json:"workspace_prebuilds,omitempty" typescript:",notnull"` | ||
| WorkspaceHostnameSuffix serpent.String `json:"workspace_hostname_suffix,omitempty" typescript:",notnull"` | ||
|
|
||
| Config serpent.YAMLConfigPath `json:"config,omitempty" typescript:",notnull"` | ||
|
|
@@ -1038,11 +1034,6 @@ func (c *DeploymentValues) Options() serpent.OptionSet { | |
| Parent: &deploymentGroupNotifications, | ||
| YAML: "webhook", | ||
| } | ||
| deploymentGroupPrebuilds = serpent.Group{ | ||
| Name: "Workspace Prebuilds", | ||
| YAML: "workspace_prebuilds", | ||
| Description: "Configure how workspace prebuilds behave.", | ||
| } | ||
| deploymentGroupInbox = serpent.Group{ | ||
| Name: "Inbox", | ||
| Parent: &deploymentGroupNotifications, | ||
|
|
@@ -3038,41 +3029,6 @@ Write out the current server config as YAML to stdout.`, | |
| Annotations: serpent.Annotations{}.Mark(annotationFormatDuration, "true"), | ||
| Hidden: true, // Hidden because most operators should not need to modify this. | ||
| }, | ||
| { | ||
| Name: "Reconciliation Interval", | ||
| Description: "How often to reconcile workspace prebuilds state.", | ||
| Flag: "workspace-prebuilds-reconciliation-interval", | ||
| Env: "CODER_WORKSPACE_PREBUILDS_RECONCILIATION_INTERVAL", | ||
| Value: &c.Prebuilds.ReconciliationInterval, | ||
| Default: (time.Second * 15).String(), | ||
| Group: &deploymentGroupPrebuilds, | ||
| YAML: "reconciliation_interval", | ||
| Annotations: serpent.Annotations{}.Mark(annotationFormatDuration, "true"), | ||
| }, | ||
| { | ||
| Name: "Reconciliation Backoff Interval", | ||
| Description: "Interval to increase reconciliation backoff by when unrecoverable errors occur.", | ||
| Flag: "workspace-prebuilds-reconciliation-backoff-interval", | ||
| Env: "CODER_WORKSPACE_PREBUILDS_RECONCILIATION_BACKOFF_INTERVAL", | ||
| Value: &c.Prebuilds.ReconciliationBackoffInterval, | ||
| Default: (time.Second * 15).String(), | ||
| Group: &deploymentGroupPrebuilds, | ||
| YAML: "reconciliation_backoff_interval", | ||
| Annotations: serpent.Annotations{}.Mark(annotationFormatDuration, "true"), | ||
| Hidden: true, | ||
| }, | ||
| { | ||
| Name: "Reconciliation Backoff Lookback Period", | ||
| Description: "Interval to look back to determine number of failed builds, which influences backoff.", | ||
| Flag: "workspace-prebuilds-reconciliation-backoff-lookback-period", | ||
| Env: "CODER_WORKSPACE_PREBUILDS_RECONCILIATION_BACKOFF_LOOKBACK_PERIOD", | ||
| Value: &c.Prebuilds.ReconciliationBackoffLookback, | ||
| Default: (time.Hour).String(), // TODO: use https://pkg.go.dev/github.com/jackc/[email protected]#Interval | ||
| Group: &deploymentGroupPrebuilds, | ||
| YAML: "reconciliation_backoff_lookback_period", | ||
| Annotations: serpent.Annotations{}.Mark(annotationFormatDuration, "true"), | ||
| Hidden: true, | ||
| }, | ||
| // Push notifications. | ||
| } | ||
|
|
||
|
|
@@ -3298,7 +3254,6 @@ const ( | |
| ExperimentAutoFillParameters Experiment = "auto-fill-parameters" // This should not be taken out of experiments until we have redesigned the feature. | ||
| ExperimentNotifications Experiment = "notifications" // Sends notifications via SMTP and webhooks following certain events. | ||
| ExperimentWorkspaceUsage Experiment = "workspace-usage" // Enables the new workspace usage tracking. | ||
| ExperimentWorkspacePrebuilds Experiment = "workspace-prebuilds" // Enables the new workspace prebuilds feature. | ||
| ExperimentWebPush Experiment = "web-push" // Enables web push notifications through the browser. | ||
| ExperimentDynamicParameters Experiment = "dynamic-parameters" // Enables dynamic parameters when creating a workspace. | ||
| ) | ||
|
|
@@ -3307,9 +3262,7 @@ const ( | |
| // 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{ | ||
| ExperimentWorkspacePrebuilds, | ||
| } | ||
| var ExperimentsAll = Experiments{} | ||
|
|
||
| // Experiments is a list of experiments. | ||
| // Multiple experiments may be enabled at the same time. | ||
|
|
||
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Uh oh!
There was an error while loading. Please reload this page.