-
Notifications
You must be signed in to change notification settings - Fork 56
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Use Quarkus Quinoa for serving web UI #165
Open
fabianishere
wants to merge
6
commits into
master
Choose a base branch
from
refactor/web
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Conversation
This file contains 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
This commit updates the OpenDC web server to use Quarkus 3, which changes annotations to use the Jakarta namespace for annotations.
This commit updates the web UI to propagate runtime variables via the next-runtime-env package. Before, we would need to replace the variables in the generated sources by Next.js, next-runtime-env works by loading a JavaScript file when opening the OpenDC web UI which contains the configuration of the web app.
fabianishere
added
kind/cleanup
Cleaning up code, process, or technical debt
area/web
Changes related to OpenDC web components
labels
Oct 29, 2023
This commit updates the OpenDC web server to make use of Quarkus Quinoa for serving the web UI. This allows us to deprecate the complex Quarkus extension for serving the web UI.
This commit moves the web UI into the Quarkus web server module to ensure we follow Quarkus Quinoa's conventions.
This commit merges the existing Quarkus extensions into a single module to prevent build complexity.
This commit migrates the web protocol to Java and removes the dependency on Jandex Gradle.
fabianishere
force-pushed
the
refactor/web
branch
from
October 29, 2023 18:27
6bf3b04
to
f0c12a1
Compare
Codecov Report
@@ Coverage Diff @@
## master #165 +/- ##
============================================
+ Coverage 76.55% 77.08% +0.52%
+ Complexity 2246 2176 -70
============================================
Files 351 351
Lines 9628 9408 -220
Branches 1032 1023 -9
============================================
- Hits 7371 7252 -119
+ Misses 1942 1841 -101
Partials 315 315
📣 We’re building smart automated test selection to slash your CI/CD build times. Learn more |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
area/web
Changes related to OpenDC web components
kind/cleanup
Cleaning up code, process, or technical debt
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.
Summary
This commit updates the OpenDC web application to use Quarkus Quinoa for serving the web UI. Quarkus Quinoa is the way to integrate single page apps (such as React/Next.js apps) into Quarkus. By moving to Quinoa, we can move away from our own custom Quarkus extension which was rather fragile.
Test plan
Launch OpenDC web server as follows:
Nagivate to web UI (in dev mode) at http://localhost:8080, create a project, a topology, a portfolio, and a scenario. Confirm that the simulation job finishes and can be seen in the UI.