config store theia extension#432
Merged
jfaltermeier merged 7 commits intoeclipse-theia:mainfrom Jul 23, 2025
Merged
Conversation
- Add config store with methods to get and set values - Add POST endpoint to set new values from outside theia - Add config change events and notification mechanism - Fix retrieval of backend client in backend binding of ConfigStoreServer - Add README - Add publish workflow for config store extension Example extension: - Add clients listening to changes - Add commands to test set/unset/get values
- Use the slimmed-down example app from the theia folder. - This includes Theia Cloud's monitor and config store Theia extensions. - Remove java and maven from the image because corresponding VS Code extensions are no longer installed. - Fix warnings for ENV format
- Adapt method to return full Session object instead of just the spec - Adapt tests - Adapt session resource - Mark unused method K8sUtil.findExistingSession as deprecated because it is redundant
Adds a REST endpoint to the service's session resource to set a
value in a session pod's config store. This is only allowed for
session pod's belonging to the authenticated user.
- Add new endpoint to SessionResource using Vertx Mutiny for HTTP calls
- Add utils to get cluster URLs to common SessionUtil
- Regenerate OpenAPI spec and client SDK
- Extend testing page to set config keys
TODO
- test in minikube
- service fails to reach session pod. session pod's SERVICE ip is determined.
but fails to connect with timeout.
- unit tests??
- Fix service routing: Change targetPort from 'web' to 'application' in templateService.yaml - Fix JAX-RS endpoint registration: Remove conflicting @Blocking annotation from setConfigValue - Fix JSON format: Send {"key": key, "value": value} instead of {key: value} Signed-off-by: Olaf Lessenich <olessenich@eclipsesource.com>
java/operator/org.eclipse.theia.cloud.operator/src/main/resources/templateService.yaml
Outdated
Show resolved
Hide resolved
* introduce dedicated internal service resource and name convention for each session * add creation, reservation, and cleanup logic for internal service in session handlers * add templateInternalService.yaml and use it in lazy and eager session flows * update SessionUtil and SessionResource to use the internal service for cluster-internal requests * update all label, owner reference, and cleanup routines to support internal services * add .env file for testing page setup
jfaltermeier
approved these changes
Jul 23, 2025
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This requires eclipse-theia/theia-cloud-helm#94.
How to test