52 Commits

Author SHA1 Message Date
iQQBot
b77f687492
[ws-daemon] start backup even pod still report the container is running after 5 minutes (#20382) 2024-11-22 05:13:59 -05:00
Gero Posmyk-Leinemann
355ece1849
[ws-manager] don't ever set PodRejected if WorkspaceConditionEverReady=true (#20372) 2024-11-15 09:33:53 -05:00
Gero Posmyk-Leinemann
99cc66b7cf
[ws-manager] Re-create workspace pods on rejection (#20243)
* [ws-manager] Re-create workspace pods (incl. test)

* [gpctl] Fix "workspaces list"

* [ws-daemon, ws-manager] Review comments, logging cleanups and ordering fix

* [dev/rejector] Add the tool we use to test PodRejection under "dev"

* [bridge] Log nested status shape (and properly scrubbing it)
2024-11-15 07:28:54 -05:00
Kyle Brennan
ca933cb63b
[ws-manager-mk2] include nodeName on failure (#20252) 2024-10-02 08:31:18 -04:00
Pudong
9e07d3cabd
Backup prebuild logs even it's fail (#19808)
* Backup prebuild workspace even it's fail

* skip backup content if headless task failed
2024-05-31 00:27:11 +08:00
Gero Posmyk-Leinemann
b75162c5bb
[ws-manager-mk2] Make WorkspaceRunningCondition.LastTransitionTime stable (#19698) 2024-05-03 20:53:43 +08:00
Kyle Brennan
0d1d0bd9f3
[ws-manager-mk2] logging improvements (#19635)
* [ws-manager-mk2] logging improvements

* Record phase transitions, rather record phase each time we reconcile
* Add OWI to log instances

Also, avoid logging workspace name in workspace_types.go, as it contains org and repo info.

* Fix logger WithValues

* Include OWI with reconciling workspace messages

* Include OWI with timeout logs

* Cleanup

* Rely on OWI on the context

Thanks, @WVerlaek!
2024-04-18 20:52:56 +02:00
Wouter Verlaek
a77139c176
[ws-manager-mk2] Add workspace reconciler tracing (#19537)
* [ws-manager-mk2] Add workspace reconciler tracing

* More tracing
2024-03-18 19:02:27 +01:00
Wouter Verlaek
c5ba13cdf2
[ws-daemon] Take backup once container has stopped (#19411) 2024-02-09 17:02:51 +02:00
Wouter Verlaek
c5d296f8e2
[ws-manager-mk2] Refactor node utilization to count by pod resource requests (#19160) 2023-11-28 22:04:06 +02:00
Thomas Schubart
20164cbb4a
[wsman-mk2] Simplify condition checking (#17961) 2023-06-17 22:59:07 +08:00
Thomas Schubart
e1ddb2e5cc
[ws-manager-mk2] Test prebuilds and imagebuilds (#17899)
* [ws-daemon] Test prebuilds and imagebuilds

* [wsman-mk2] Ensure restore metrics are recorded
2023-06-12 16:58:02 +08:00
Thomas Schubart
a1d2d66d99
[wsman-mk2] Log workspace failure reason (#17752) 2023-05-25 23:43:59 +08:00
Wouter Verlaek
8861acb8a3
[ws-manager-mk2] Remove maintenance CM from installer (#17693) 2023-05-23 17:05:57 +08:00
Wouter Verlaek
da50b8ceb6
[ws-manager-mk2] Cleanup and fail workspaces when node disappears (#17599)
* [ws-manager-mk2] Cleanup and fail workspaces when node disappears

* Cache nodes

* Fix test, and reconcile ws when node gets deleted
2023-05-15 22:53:00 +08:00
Thomas Schubart
a289f08c5e
[wsman-mk2] Use ide and content for workspace readiness (#17449) 2023-05-03 00:18:40 +08:00
Wouter Verlaek
17f39cfe68
[ws-manager-mk2] Fix prebuild start failure false positives (#17465) 2023-05-03 00:17:41 +08:00
Wouter Verlaek
09a1586103
[ws-manager-mk2] Fix abort prebuild failure (#17451)
* [ws-manager-mk2] Fix abort prebuild failure

* Fix: don't set empty phase in extractFailure
2023-05-02 18:02:40 +08:00
Wouter Verlaek
bfa7b301b7
[ws-manager-mk2] Fix headless task failures (#17429) 2023-04-28 19:26:36 +08:00
Wouter Verlaek
ce04b77c29
[ws-manager-mk2] Maintenance continue reconciles (#17136) 2023-04-28 05:42:36 +08:00
Wouter Verlaek
06ec36b564
[ws-manager-mk2] Refactor metrics with EverReady condition (#17114)
* [ws-manager-mk2] Refactor metrics with EverReady condition

* Fix test, default failure message

* Add stop reason metric
2023-04-08 11:57:48 +02:00
Wouter Verlaek
f23737694a
[ws-manager-mk2] Extract headless task failure (WKS-18) (#17091)
* [ws-manager-mk2] Extract headless task failure

* Undo ready status change, refactored #17114
2023-04-03 10:25:43 +02:00
Wouter Verlaek
dc68610c0e
[ws-manager-mk2] Ignore container killed failures (#17118)
* [ws-manager-mk2] Ignore container killed failures

* ClusterRole + Binding
2023-03-31 23:31:41 +02:00
Wouter Verlaek
c14a25cfdf
[ws-manager-mk2] Report content init/dispose failures (#17015) 2023-03-27 17:22:25 +02:00
Thomas Schubart
42a3602fce
[ws-manager-mk2] Emit events for workspaces and snapshots (#16907)
* [wsman-mk2] Emit workspace events

* [installer] Permissions for events

* [ws-man-mk2] Emit snapshot events

* [installer] Update render tests

* [wsman-mk2] Include review comments
2023-03-20 13:59:12 +01:00
Wouter Verlaek
95158eba38
[ws-manager-mk2] Don't dispose image builds (#16902) 2023-03-20 11:34:12 +01:00
Thomas Schubart
ace513ad7e
[ws-manager-mk2] Refactor workspace status conditions (#16896)
* [wsman-mk2] Refactor conditions

* [wsman-mk2] Specify reason
2023-03-20 11:10:12 +01:00
Wouter Verlaek
ee9ea036d7
[ws-manager-mk2] Fix stopped status (#16665) 2023-03-06 16:28:04 +01:00
Wouter Verlaek
6694cf138b
[ws-manager-mk2] Enable tracing, add debug logs (#16643) 2023-03-06 16:22:03 +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
Thomas Schubart
12f3c91599
[ws-manager-mk2] Ensure workspace enters stopped (#16479) 2023-02-27 11:45:57 +01:00
Wouter Verlaek
df3e15a1d4
[ws-manager-mk2] Remove headless from status (#16530) 2023-02-23 17:36:53 +01:00
Wouter Verlaek
7349d1cd3c [ws-manager-mk2] Timeout controller tests 2023-02-17 11:08:21 +01:00
Wouter Verlaek
02f323dcaf [ws-manager-mk2] Fix deployed condition being repeatedly set 2023-02-16 14:30:20 +01:00
Wouter Verlaek
00229da4af [ws-manager-mk2] Add finalizer on workspace, handle deletion 2023-02-15 11:27:19 +01:00
Wouter Verlaek
e62c773362 [ws-manager-mk2] Aborted condition, grace period 2023-02-14 12:04:19 +01:00
Wouter Verlaek
468f7bf016 [ws-manager-mk2] Controller env tests 2023-02-13 22:08:18 +01:00
Wouter Verlaek
172c58c0eb [ws-manager-mk2] Workspace timeouts 2023-02-10 10:49:15 +01:00
Thomas Schubart
ab0ab235d3 [ws-manager-mk2] Ensure values are set despite update conflict 2023-02-09 12:30:14 +01:00
Wouter Verlaek
810e17508d [ws-manager-mk2] Extract ctrl utils to common-go 2023-02-07 11:19:45 +01:00
Thomas Schubart
a485cb69a9 [ws-manager-mk2] Ensure metrics are only counted once 2023-01-30 23:22:38 +01:00
Thomas Schubart
63f168ab38 [ws-manager-mk2] Add metrics 2023-01-30 23:22:38 +01:00
Thomas Schubart
75be62fba0 [ws-daemon] Dispose workspace 2023-01-30 14:59:37 +01:00
Christian Weichel
a991690e8e [ws-manager-mk2] Introduce first controller test 2023-01-23 14:14:30 +01:00
Christian Weichel
99bff04aa5 [ws-manager-mk2] Rework CRD to better match k8s best practice 2023-01-23 14:14:30 +01:00
Christian Weichel
56961e02a1 [ws-manager-mk2] Improve status extraction 2023-01-23 14:14:30 +01:00
Christian Weichel
27dd21b466 [ws-manager-mk2] Support workspace stops 2023-01-23 14:14:30 +01:00
Christian Weichel
2f673a25e1 [ws-daemon] Make ws-manager-mk2 compatible 2023-01-23 14:14:30 +01:00
Christian Weichel
9992d4fa32 [ws-proxy] Support workspace CRD 2023-01-23 14:14:30 +01:00
Christian Weichel
abeea17ab5 Move ws-manager-mk2 CRD to API package 2023-01-23 14:14:30 +01:00