-
Notifications
You must be signed in to change notification settings - Fork 297
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
Programming exercises
: Add online IDE settings
#8965
Merged
bassner
merged 69 commits into
develop
from
feature/programming-exercises/add-exercise-wide-online-ide-settings
Sep 2, 2024
Merged
Programming exercises
: Add online IDE settings
#8965
bassner
merged 69 commits into
develop
from
feature/programming-exercises/add-exercise-wide-online-ide-settings
Sep 2, 2024
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
…g-exercises/add-online-ide-button-to-exercise-details
…exercise-details' into feature/programming-exercises/add-exercise-wide-online-ide-settings
Solution: - extend one of our AbtractSpringTest classes so that a Spring server providing the dependency injection mechanism is available - start the superclass with the `theia` profile so that `application-theia.yml` is loaded. Note: dependending on what is planned or required a different superclass like `AbstractSpringIntegrationLocalCILocalVCTest` might be required. - add a setter method to the configuration class with the two changes above the `TheiaConfiguration` can already be detected as injectable, but the construction fails with an error message describing that a setter method is missing
JohannesWt
approved these changes
Aug 30, 2024
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Code reapprove 👍
SimonEntholzer
approved these changes
Aug 30, 2024
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Works as described 👍
janthoXO
temporarily deployed
to
artemis-test9.artemis.cit.tum.de
August 30, 2024 12:30 — with
GitHub Actions
Inactive
github-actions
bot
added
lock:artemis-test9
and removed
deploy:artemis-test9
Testserver for Project Theia
labels
Aug 30, 2024
bassner
changed the title
Sep 2, 2024
Programming exercise
: Add online IDE settingsProgramming exercises
: Add online IDE settings
bassner
deleted the
feature/programming-exercises/add-exercise-wide-online-ide-settings
branch
September 2, 2024 09:08
MichaelOwenDyer
pushed a commit
that referenced
this pull request
Sep 3, 2024
kaancayli
pushed a commit
that referenced
this pull request
Sep 5, 2024
This was referenced Sep 22, 2024
JohannesWt
pushed a commit
that referenced
this pull request
Sep 23, 2024
This was referenced Sep 24, 2024
This was referenced Oct 4, 2024
Merged
13 tasks
13 tasks
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
client
Pull requests that update TypeScript code. (Added Automatically!)
component:Programming
config-change
Pull requests that change the config in a way that they require a deployment via Ansible.
database
Pull requests that update the database. (Added Automatically!). Require a CRITICAL deployment.
feature
ready for review
server
Pull requests that update Java code. (Added Automatically!)
server-api
Improves the server API
tests
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.
All Theia PRs must be tested on TS9 otherwise the profile is not active :)
Checklist
General
Server
Client
Changes affecting Programming Exercises
Motivation and Context
Fixes #8785
For incorporating the online IDE into Artemis, instructors must have the opportunity to
Description
I added configuration files to the server containing all available Theia images and their respective programming language. Those are published to the Client via a new API endpoint.
On the client, I enlarged the editing options for a programming exercise from
Offline IDE
andOnline Editor
by the newOnline IDE
for regular exercises - my changes intentionally exclude exam components for now.Once the Online IDE has been allowed, the user can choose the configuration (image) in the
language
section. This can happen during creation and modification of an exercise as an instructor should be able to 'hot-swap' the online IDE.Steps for Testing
For testing on TS9, you can use the following login data:
test_user
test_user
Prerequisites:
Java-17
for Java,C
for C, nothing for other)Exam Mode Testing
Verify that in exam mode, none of the features are accessible or required.
Testserver States
Note
These badges show the state of the test servers.
Green = Currently available, Red = Currently locked
Click on the badges to get to the test servers.
Review Progress
Performance Review
Code Review
Manual Tests
Exam Mode Test
Test Coverage
Screenshots
Activating the Online IDE Setting during exercise creation or modification
Selecting a Image/Configuration for the Online IDE based on Language preference
Informing the user about an (yet) incompatible language for the online IDE
Summary by CodeRabbit
Summary by CodeRabbit
New Features
Enhancements
Bug Fixes
Tests