Remove all shadow run related files from reconcile module and save desired config on workspace create
Issue: Persist desired kubernetes configuration on wor... (#541907 - closed)
What does this MR do and why?
Removes all shadow run related files from reconcile module.
These files were introduced for shadow run to freeze desired_config in Introduce create desired_config chain in the "c... (!194589 - merged) • Ashvin Sharma • 18.2 and are no longer needed.
In addition to this, this MR also saves the desired_config on whenever a workspace is created, as opposed to generating desired_config on each reconciliation.
References
Related epic— Simplify freezing of Kubernetes resources for w... (&17483)
How to set up and validate locally
-
Open
gdk.test:3000 -
Create a workspace.
-
Note that the workspace is created and confirm that this workspace has a corresponding row in
workspace_agentk_statestable by running.RemoteDevelopment::WorkspaceAgentkState.last -
Open rails console using
bin/rails c -
Delete the frozen config like so
RemoteDevelopment::WorkspaceAgentkState.all.delete_all -
Delete workspace deployments
kubectl delete deployment -n <namespace> <deployment name> -
Restart agentk (because I do not know how else to trigger a reconcile for existing workspace, happy to know other way) and note that deployment comes back again despite the absent frozen desired_config.
MR acceptance checklist
Evaluate this MR against the MR acceptance checklist. It helps you analyze changes to reduce risks in quality, performance, reliability, security, and maintainability.