Skip to content

feat: Java LSP flavored IDE - #12

Merged
relaxdiego merged 5 commits into
mainfrom
feat/cert-19806-ide-java-lsp
Aug 25, 2026
Merged

relaxdiego merged 5 commits into
mainfrom
feat/cert-19806-ide-java-lsp

Conversation

@jdavv

@jdavv jdavv commented Aug 17, 2026

Copy link
Copy Markdown
Contributor

📑 What

Adds p3-sandbox-ide-java
Bumps code-server from 4.22.0 - > 4.132.0
Refactors sshfs-init image

❓ Why

Support the FINOS CDM requirements for IDE in LFWS310 course.

⚡ How to Review

✅ Testing

  • I have tested my work
  • I need you to test it too

jdavv added 3 commits August 17, 2026 16:50
… clicks

- Updated the sandbox IDE image to use code-server 4.132.0 instead of 4.22.0.
- Restored mouse click handling for code actions in the quick-fix menu.

Signed-off-by: Jean-Luc Davern <jdavern@linuxfoundation.org>
- Added a Java 21-based sandbox IDE image with the Red Hat Java extension installed.
- Configured code-server and Maven to use the mounted workspace repository offline.
- Added contract tests and documentation for the new image variant.

Signed-off-by: Jean-Luc Davern <jdavern@linuxfoundation.org>
- Removed `sshfs_debug` so `sshfs` no longer stayed in the foreground and blocked mount verification.
- Deleted the unused file watcher, marker path, and its cleanup handling.

BREAKING CHANGE: This commit introduces breaking changes

Signed-off-by: Jean-Luc Davern <jdavern@linuxfoundation.org>
@jdavv
jdavv requested a review from relaxdiego August 17, 2026 22:09

@relaxdiego relaxdiego left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for this @jdavv. Can we redo this so that we don't have a separate directory for the Java variant? The thing that concerns me with the current approach is that we're introducting potential drift for what is effectively just 15 or so lines of code.

Some ideas:

  1. In the same images/p3-sandbox-ide/, a multi-stage Dockerfile: FROM codercom/code-server:4.132.0 AS base, then FROM base AS java for the JDK, the extension, and the two config files.
  2. The java variant is published as p3-sandbox-ide:v1.4.0-java, :v1.4-java, :v1-java — same repo, variant in the tag, the way python:3.12-slim works.
  3. Java config files under a java/ subdirectory (or maybe variants/java?), since both variants ship a file called settings.json.

This may mean a change in one or two places in the build process too, so kindly look into that as well.

- Moved the Java IDE variant into `images/p3-sandbox-ide` as a `java` build target.
- Split dev and release workflows to build and publish Java-suffixed tags.
- Updated CI scripts to build base and Java image variants separately.
- Adjusted the Java contract test to validate the shared base image and new tag.
- Filtered changed-image detection to skip deleted image roots.

Signed-off-by: Jean-Luc Davern <jdavern@linuxfoundation.org>
@jdavv
jdavv requested a review from a team as a code owner August 21, 2026 21:27
- Replaced the optional `TARGET` array with a `BUILD_COMMAND` array to avoid Bash 3.2 issues.
- Preserved the `--target base` behavior for `p3-sandbox-ide` builds.

Signed-off-by: Jean-Luc Davern <jdavern@linuxfoundation.org>
@jdavv
jdavv requested a review from relaxdiego August 24, 2026 21:21
@relaxdiego
relaxdiego merged commit 8c088e6 into main Aug 25, 2026
@relaxdiego
relaxdiego deleted the feat/cert-19806-ide-java-lsp branch August 25, 2026 08:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants