44 Commits

Author SHA1 Message Date
Pudong
10fe5b9699
[sshgateway] use ssh CA to auth (#19147)
* [sshgateway] use ssh CA to auth

* change name

* add error log

* fix

* mark volume optional

* [installer] validate ssh-ca secret

* Revert "[installer] validate ssh-ca secret"

This reverts commit ca6ede78a7b5a720fd315eca32eb277cb5063069.

We must support the scenario where the installer has the secret, but, it is not in the cluster yet.

---------

Co-authored-by: Kyle Brennan <kyle@gitpod.io>
2023-11-30 19:17:08 +02:00
Pudong
b983b6276f
[ws-manager] use workspace class description (#19164) 2023-11-29 14:11:06 +02:00
Christian Weichel
bb51f07988
Collect workspace classes from workspace cluster (#19003)
* Extend ws-manager API to support workspace class descriptions

fixes ENG-1065

* Extend  DescribeCluster in ws-manager-mk2

to acurately report the available workspace classes

fixes ENG-1066

* Add workspace classes to cluster in DB

* Intergrate workspace cluster collection in ws-manager-bridge

* Feature flag off discovered workspace class usage

* Fix build

* Add unittest for getSupportedWorkspaceClasses

* Fix workspace class storage

* Adress review feedback
2023-11-10 13:13:48 +02:00
Christian Weichel
f482e0a02d
Add subassembly service API (#18834)
* Add subassembly service API

* Make workspacekit image configurable
2023-09-28 14:55:07 +03:00
Kyle Brennan
34b4602286
[ws-manager-mk2] remove experimental mode feature (#18513)
* [installer] remove experimental mode

* [ws-manager-mk2] remove experimental node selector

* [ws-manager-api] remove ExperimentalMode from configuration

* Add `ws-manager-api` to vscode workspace

* [preview] remove experimental & bump deps

Depends on https://github.com/gitpod-io/gitpod-packer-gcp-image/pull/246

* [preview] LocalStorageCapacityIsolation is GA, no needed as a gate in 1.27
2023-08-15 06:37:41 +02:00
Manuel Alejandro de Brito Fontes
de4bbbea1c
Add a new trust bundle for custom SSL certificates (#18450)
* Add a new trust bundle for custom SSL certificates

* Mount the customer certificate in the workspace

* Use the custom certificate in components

* Cleanup

* Set env variables and mount the crt in a different file

* rename custom ca cert file name

* Fix the filename in env vars

* Enable custom SSL certificate conditionally

---------

Co-authored-by: nandajavarma <nandaja.varma@gmail.com>
2023-08-08 16:46:34 +02:00
Thomas Schubart
4584f8fda9
[wsman-mk2] Change default class to g1-standard (#17950)
* [wsman-mk2] Change default class to g1-standard

* [preview] Update workspace classes
2023-06-15 20:23:05 +08:00
Thomas Schubart
2cab1406dd
[ws-manager-mk2] Remove persistent volume claim feature (#17860)
* [ws-daemon] Remove PVC

* [installer] Remove PVC

* [workspacekit] Remove PVC

* [content] Remove PVC

* [preview] Remove PVC

* [wsman-api] Remove PVC

* [ws-daemon-api] Remove PVC

* [workspacekit] Mount workspace directory

* [supervisor] Remove PVC

* [test] Remove PVC

* Fix build
2023-06-13 18:35:04 +08:00
Thomas Schubart
697d81ecbf
[ws-manager-mk2] Introduce experimental mode (#17048)
* [installer] Add experimental mode for mk2

* [wsman-mk2] Use ExperimentalMode flag
2023-03-28 17:56:26 +02:00
Wouter Verlaek
57840fc6ed
[ws-manager-mk2] Refactor maintenance mode to end at a timestamp (#16925)
* [ws-manager-mk2] Maintenance until

* Fix configmap

* Always show field

* Remove todo
2023-03-22 16:39:14 +01:00
Manuel Alejandro de Brito Fontes
5b30eb5b8c
Remove unused caCertSecret (#16793)
* Add trust.cert-manager.io for to bundle CA certificates

Signed-off-by: Manuel de Brito Fontes <aledbf@gmail.com>

* Configure CA volume and volumemount in components

* Update ws-manager golden files

* Deploy trust manager in preview

* Remove duplicated volume

* Update installer golden files

* Generate a bundle only for registry-facade

* Update golden files

* Fix initcontainer volume mounts

* Update golden files

* Fix registry-facade certificate

* Update golden files

* Disable skip_verify

* Enable force conflict with apply server side

Signed-off-by: Manuel de Brito Fontes <aledbf@gmail.com>

* Avoid random werft namespace errors

Signed-off-by: Manuel de Brito Fontes <aledbf@gmail.com>

---------

Signed-off-by: Manuel de Brito Fontes <aledbf@gmail.com>
2023-03-21 11:44:13 +01:00
Thomas Schubart
c800175c72
[ws-manager-mk2] Protect tokens (#16806)
* [wsman-mk2] Create token secret

* [installer] Fix casing for namespace type metadata

* [installer] Create secrets namespace

* [installer] Configure roles and bindings

* [installer] Move namespace constant to common pkg

* [installer] Create permissions for ws-daemon

* [wsman-mk2] Watch on multiple ns

* [ws-daemon] Use token secret

* [wsman-mk2] Remove secret from initializer

* [wsman-mk2] Test token secret

* [werft] Fix document index

* [installer] Update render tests

* [wsman-mk2] Fix imports

* [wsman-mk2] Ensure maintenance controller required permissions

* [wsman-mk2] Retry deleting secret

* [installer] Ensure objects in secrets namespace are only created with mk2 option
2023-03-15 12:57:07 +01:00
Wouter Verlaek
25220bb30b
[ws-manager-mk2] Maintenance mode (#16702)
* [ws-manager-mk2] Maintenance mode reconciler

* [ws-manager-mk2] Check for maintenance mode

* [ws-manager-mk2] Default to maintenance mode on startup

* [ws-manager-mk2] Disable maintenance on unmarshal failure
2023-03-09 17:25:45 +01:00
Wouter Verlaek
1631a4a038
[ws-manager-mk2] Loadgen fixes, concurrent reconciliation (#16613)
* [ws-manager-mk2] Loadgen fixes, concurrent reconciliation

* [ws-manager-mk2] Update tests with content readiness

* Simplify content ready check

* Fix json tags

* Revert poll interval
2023-03-06 15:18:04 +01:00
Wouter Verlaek
172c58c0eb [ws-manager-mk2] Workspace timeouts 2023-02-10 10:49:15 +01:00
Wouter Verlaek
3651262ba2 [ws-manager-mk2] Configure health probes and leader election 2023-01-27 04:12:34 +01:00
JenTing Hsiao
4af9af4a1e Apply suggestions from code review
Co-authored-by: Pavel Tumik <18602811+sagor999@users.noreply.github.com>
2023-01-03 23:48:43 +01:00
JenTing Hsiao
af04243b3b If dryRun, return gRPC FailedPrecondition
If dryRun enables on StartWorkspace/StopWorkspace/TakeSnapshot,
return gRPC FailedPrecondition status code and error message
`under maintenance mode`.

Signed-off-by: JenTing Hsiao <hsiaoairplane@gmail.com>
2023-01-03 23:48:43 +01:00
Wouter Verlaek
72d9152a71 [image-builder] Enable TLS in workspace clusters
Fix cyclic import cycle

Update altnames

Update golden testdata, todo

Update grpc opts

Testing

Remove blocking dial

Only add TLS in ws cluster

Conditional TLS

Add comments
2022-12-20 02:45:29 -03:00
Christian Weichel
478a75e744 Switch license to AGPL 2022-12-08 13:05:19 -03:00
JenTing Hsiao
a4dacef491 ws-manager: add prebuild PVC configuration
Signed-off-by: JenTing Hsiao <hsiaoairplane@gmail.com>
2022-11-09 14:58:39 +01:00
Milan Pavlik
8b94c543e9 [ws-manager] Remove Probe workspace type 2022-09-29 10:25:30 +02:00
Thomas Schubart
b257cd8f2c [ws-manager] Update tests 2022-08-05 11:42:49 -03:00
Thomas Schubart
ee20a83d80 [ws-manager] Add cpu constraint annotations 2022-08-05 11:42:49 -03:00
Thomas Schubart
0571d40d16 [installer] Configure resource limits 2022-08-05 11:42:49 -03:00
Thomas Schubart
d537b24994 [installer] Add display name to workspace class 2022-06-30 21:26:38 +05:30
Pavel Tumik
be4da3eb37 [ws-manager] add config setting that allows to debug workspaces 2022-06-03 21:24:52 +05:30
Christian Weichel
a9849a61f1 [ws-manager] Avoid invalid workspace class names 2022-05-10 16:43:25 +05:30
Christian Weichel
acd2eaf810 [ws-manager] Rename default workspace class
from "" to "default"
2022-05-10 16:43:25 +05:30
Pavel Tumik @ GitPod
02a95899ec [installer] add snapshot class into PVC config for ws-manager 2022-05-06 16:01:21 +05:30
Pavel Tumik
0ffc77d16a PR feedback fixes 2022-05-04 03:08:19 +05:30
Pavel Tumik
301190db53 Add persistent volume support for workspaces
fix
2022-05-04 03:08:19 +05:30
Christian Weichel
fc1b0ac4a6 [ws-daemon] Support storage quota per class 2022-04-29 14:24:15 +05:30
Christian Weichel
4640721e75 [installer] Add support for workspace classes 2022-04-29 14:24:15 +05:30
Christian Weichel
0150cf8cce [ws-manager] Introduce workspace classes 2022-04-29 14:24:15 +05:30
Christian Weichel
4b48505356 [ws-manager] Proxy to image-builder 2022-04-19 21:47:32 +05:30
Christian Weichel
dcf82f628e [ws-manager] Support custom CA certs 2022-04-05 21:28:19 +05:30
Manuel Alejandro de Brito Fontes
90fe82a508 Remove ghost from the codebase 2022-02-28 14:17:07 +05:30
Prince Rachit Sinha
4d48ccb997 Add maximum lifetime constraint for a workspace 2022-02-22 16:25:02 +05:30
Manuel Alejandro de Brito Fontes
82d786e2bb Remove ws-scheduler 2022-01-24 20:08:17 +01:00
Manuel Alejandro de Brito Fontes
6d33af4106 Add support for ephemeral storage 2021-12-09 13:34:34 +01:00
Christian Weichel
df120dc4ef [installer] Add support for workspace templates 2021-10-08 04:45:54 -03:00
Christian Weichel
b5b5d537c1 [ws-manager] Add service config to API 2021-09-13 10:51:38 +05:30
Christian Weichel
e5551dcd1b [ws-manager] Make config part of the API 2021-09-13 10:51:38 +05:30