Skip to content

Conversation

bensofficial
Copy link
Member

@bensofficial bensofficial commented Oct 3, 2025

Checklist

General

Server

Motivation and Context

We currently have a bug in an Artemis course with the short name scml2526 on production.

All build jobs for programming exercises are failing because of this error:

Error while executing build job 90836071759487848781: de.tum.cit.aet.artemis.core.exception.LocalCIException: Error while cloning repository scml2526tst-solution with uri https://artemis.tum.de/git/SCML2526TST/scml2526tst-solution.git after 3 attempts

After having a look at the server logs, we discovered that the build agent tried to clone with this URI: ssh://[email protected]:7921/git/SCML2526TSTl2526tst-solution.git. The URI should look like this: ssh://[email protected]:7921/git/SCML2526TST/scml2526tst-solution.git .

The reason for this is that /scm is removed in the SSH clone URI (probably a relic from Bitbucket).

Description

We removed that /scm is replaced with "".

Steps for Testing

Prerequisites:

  • 1 Instructor
  1. Create a new exercise
  2. Check that the build for the template and solution is working correctly

Optionally you can test this locally (when having SSH enabled for the build agent):

  1. Create a new course with the short name scml2526
  2. Create a new exercise in this course
  3. Check that the build for the template and solution is working correctly

Testserver States

You can manage test servers using Helios. Check environment statuses in the environment list. To deploy to a test server, go to the CI/CD page, find your PR or branch, and trigger the deployment.

Review Progress

Code Review

  • Code Review 1
  • Code Review 2

Manual Tests

  • Test 1
  • Test 2

Summary by CodeRabbit

  • Bug Fixes
    • SSH clone URLs now use the full repository path without removing any leading segments. Instances hosted under paths like “/scm” will have that segment retained in the SSH URL.
    • Users copying SSH clone links from the application should be able to clone repositories without manual path adjustments across supported Git platforms.

@github-project-automation github-project-automation bot moved this to Work In Progress in Artemis Development Oct 3, 2025
@github-actions github-actions bot added server Pull requests that update Java code. (Added Automatically!) programming Pull requests that affect the corresponding module labels Oct 3, 2025
@helios-aet helios-aet bot temporarily deployed to artemis-test2.artemis.cit.tum.de October 3, 2025 11:07 Inactive
@helios-aet helios-aet bot temporarily deployed to artemis-test3.artemis.cit.tum.de October 3, 2025 11:07 Inactive
@bensofficial bensofficial added this to the 8.4.1 milestone Oct 3, 2025
@bensofficial bensofficial marked this pull request as ready for review October 3, 2025 11:25
@bensofficial bensofficial requested a review from a team as a code owner October 3, 2025 11:25
Copy link
Contributor

@ekayandan ekayandan left a comment

Choose a reason for hiding this comment

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

Approving code

Copy link
Contributor

coderabbitai bot commented Oct 3, 2025

Walkthrough

Updated SSH URI construction in AbstractGitService.getSshUri to use the repository URI path unchanged, removing previous logic that stripped a leading "/scm" segment.

Changes

Cohort / File(s) Summary
Git SSH URI handling
src/main/java/de/tum/cit/aet/artemis/programming/service/AbstractGitService.java
Modified getSshUri to derive the SSH path directly from repositoryUri.getPath() instead of replacing a leading "/scm". Alters resulting clone URL path construction.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Pre-merge checks and finishing touches

❌ Failed checks (1 warning)
Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. You can run @coderabbitai generate docstrings to improve docstring coverage.
✅ Passed checks (2 passed)
Check name Status Explanation
Title Check ✅ Passed The title clearly and concisely summarizes the primary change, which is fixing SSH URI generation for build agents, and directly relates to the modifications described in the pull request.
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
✨ Finishing touches
  • 📝 Generate docstrings
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch bugfix/programming-exercises/ssh-uri

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link

github-actions bot commented Oct 3, 2025

End-to-End (E2E) Test Results Summary

TestsPassed ✅SkippedFailedTime ⏱
End-to-End (E2E) Test Report1 ran1 passed0 skipped0 failed1s 540ms
TestResultTime ⏱
No test annotations available

@helios-aet helios-aet bot temporarily deployed to artemis-test3.artemis.cit.tum.de October 3, 2025 11:35 Inactive
Copy link

github-actions bot commented Oct 3, 2025

End-to-End (E2E) Test Results Summary

TestsPassed ☑️Skipped ⚠️Failed ❌️Time ⏱
End-to-End (E2E) Test Report205 ran201 passed3 skipped1 failed1h 12m 35s 424ms
TestResultTime ⏱
End-to-End (E2E) Test Report
e2e/exercise/quiz-exercise/QuizExerciseManagement.spec.ts
ts.Quiz Exercise Management › Quiz Exercise Creation › Creates a Quiz with Drag and Drop❌ failure2m 4s 906ms

Copy link
Contributor

@tobias-lippert tobias-lippert 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

@krusche krusche merged commit 7c932aa into develop Oct 3, 2025
42 of 46 checks passed
@krusche krusche deleted the bugfix/programming-exercises/ssh-uri branch October 3, 2025 19:15
@github-project-automation github-project-automation bot moved this from Work In Progress to Merged in Artemis Development Oct 3, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bugfix priority:high programming Pull requests that affect the corresponding module ready for review server Pull requests that update Java code. (Added Automatically!)
Projects
Status: Merged
Development

Successfully merging this pull request may close these issues.

4 participants