Skip to content
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 platform independent dejagnu template #8029

Merged
merged 25 commits into from
Mar 20, 2024

Conversation

reschandreas
Copy link
Contributor

@reschandreas reschandreas commented Feb 13, 2024

Checklist

General

Server

  • Important: I implemented the changes with a very good performance and prevented too many (unnecessary) database calls.
  • I strictly followed the server coding and design guidelines.
  • I documented the Java code using JavaDoc style.

Changes affecting Programming Exercises

  • High priority: I tested all changes and their related features with all corresponding user types on a test server configured with the integrated lifecycle setup (LocalVC and LocalCI). -> LocalVC and LocalCI lacks the ability to parse the results for this type
  • I tested all changes and their related features with all corresponding user types on a test server configured with Gitlab and Jenkins.
  • I tested all changes and their related features with all corresponding user types on a test server configured with Bitbucket and Bamboo. -> lacks the ability to parse the results for this type

Motivation and Context

Currently, we don't yet have an aeolus template for maven black-box exercises, this PR adds that.

Description

I translated the dejagnu groovy script to bash in order to fit it into a windfile and possibly use it in other CI platforms.
Note: the type: I added to some results are necessary for Jenkins and fix the static code analysis that is currently not working for Jenkins when using Aeolus.

Steps for Testing

Prerequisites:

  • 1 Artemis Setup Jenkins and Aeolus enabled
  1. Log in to Artemis
  2. create a PE with a custom build plan using dejagnu as a project type
  3. make sure the results are the same as with the established approach

Exam Mode Testing

same code is used, so no additional testing required

Testserver States

Note

These badges show the state of the test servers.
Green = Currently available, Red = Currently locked







Review Progress

Performance Review

  • I (as a reviewer) confirm that the server changes (in particular related to database calls) are implemented with a very good performance

Code Review

  • Code Review 1
  • Code Review 2

Manual Tests

  • Test 1
  • Test 2

Test Coverage

Summary by CodeRabbit

  • New Features
    • Introduced integration with Aeolus external system for enhanced project management.
    • Added support for MAVEN_BLACKBOX project type, including specialized build scripts for improved automation and testing.
  • Improvements
    • Enhanced project type detection logic for more accurate handling of different project scenarios.
    • Streamlined the build process with new bash scripts, facilitating easier Java project builds and static code analysis.
  • Refactor
    • Improved code readability and maintainability in the AeolusTemplateService.
  • Tests
    • Expanded template testing with new configurations for Java Maven Blackbox projects.

@artemis-bot artemis-bot added this to In progress in Artemis Development Feb 13, 2024
@github-actions github-actions bot added server Pull requests that update Java code. (Added Automatically!) template labels Feb 13, 2024
@reschandreas reschandreas force-pushed the feature/add-dejagnu-template branch 4 times, most recently from 3e198ac to b8a9564 Compare February 13, 2024 21:17
@github-actions github-actions bot added the tests label Mar 10, 2024
@Mtze Mtze removed the template label Mar 12, 2024
@reschandreas reschandreas marked this pull request as ready for review March 12, 2024 20:33
@krusche krusche added the too-long-open !!! This is an antipattern, we should aim for small PRs that are only open for a short time !!! label Mar 19, 2024
milljoniaer
milljoniaer previously approved these changes Mar 19, 2024
Copy link
Contributor

@milljoniaer milljoniaer left a comment

Choose a reason for hiding this comment

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

"Abfahrt" demonstrated in testing session 🚀

rstief
rstief previously approved these changes Mar 19, 2024
Copy link
Contributor

@rstief rstief left a comment

Choose a reason for hiding this comment

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

Code looks good :)

laurenzfb
laurenzfb previously approved these changes Mar 19, 2024
Copy link
Contributor

@laurenzfb laurenzfb left a comment

Choose a reason for hiding this comment

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

code lgtm. tested in testion session. also worked

chrisknedl
chrisknedl previously approved these changes Mar 19, 2024
Copy link
Contributor

@chrisknedl chrisknedl left a comment

Choose a reason for hiding this comment

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

Tested on a Test Server at the Uni Passau. Looks really good, thanks for the great work.

Copy link
Contributor

@milljoniaer milljoniaer left a comment

Choose a reason for hiding this comment

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

reapprove after changes 👍

Copy link
Contributor

@laurenzfb laurenzfb left a comment

Choose a reason for hiding this comment

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

reapprove after merge conflicts

Copy link
Contributor

@rstief rstief left a comment

Choose a reason for hiding this comment

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

Reapprove

Copy link
Contributor

@chrisknedl chrisknedl left a comment

Choose a reason for hiding this comment

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

reapprove

@krusche krusche added this to the 6.9.4 milestone Mar 20, 2024
@krusche krusche changed the title Programming exercises: Add platform-independent dejagnu template Programming exercises: Add platform independent dejagnu template Mar 20, 2024
@krusche krusche merged commit 6d42342 into develop Mar 20, 2024
18 of 25 checks passed
@krusche krusche deleted the feature/add-dejagnu-template branch March 20, 2024 16:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
ready to merge server Pull requests that update Java code. (Added Automatically!) template tests too-long-open !!! This is an antipattern, we should aim for small PRs that are only open for a short time !!!
Projects
Archived in project
Artemis Development
  
In progress
Development

Successfully merging this pull request may close these issues.

None yet

8 participants