Skip to content

Conversation

@pstoeckle
Copy link
Collaborator

  • first draft

@pstoeckle pstoeckle marked this pull request as ready for review September 26, 2025 07:32
Copy link

@peggimann peggimann left a comment

Choose a reason for hiding this comment

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

Ich denke als Einführung ist dies durchaus sinnvoll! Ich denke aber auch, dass wir noch etwas genauer beschreiben können wie eine CI funktioniert, oder zumindest den Code Snipped der Pipeline erklären, was ist der Trigger, wieso brauchen wir den etc.

Vielen Dank für den coolen Draft!

### Aufgabe 1: Erstelle ein GitHub Repository

1. Gehe zu [GitHub](https://github.com/new) und erstelle ein neues Repository.
2. Nenne das Repository `ci-example` und setze es auf "Public".

Choose a reason for hiding this comment

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

Gibt es einen bestimmten Grund, wieso das Repo auf Public sein muss? (Ist so oder so default) vielleicht ist es auch eine Option, das Repo private zu lassen und die Accounts der Ausbildner hinzuzufügen?

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

Ich hatte im Hinterkopf, dass es da Beschränkungen für die GitHub Actions gibt, wenn du ein Repo auf private hast. Finde dazu aber auf die Schnelle nichts. Von daher kann das auch weg.

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

Siehe 6e6a454

Copy link
Collaborator

Choose a reason for hiding this comment

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

@andiaeg hat mich mal gebeten die IT-Ninja-Warriors Org aufzusetzen. Denke wir könnten die Repositories dort erstellen, dann hätten alle Praxisbildner direkt access.

@andiaeg was meinst du?

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

@andiaeg was meinst du?

Soll ich das ändern? Also, dass die Lernenden die Repos in der IT-Ninja-Warriors Org aufsetzen sollen?

Copy link
Collaborator

Choose a reason for hiding this comment

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

Höi zäme. Ich denke wir sollten das am MI zusammen besprechen. Grundsätzlich denke ich, dass wir auf Github eine Organisation aufsetzen sollten für die Übungen. Vielleicht nennen wir sie aber IT-Ninjas-YYYY (YYYY für das Ausbildungsjahr). Grund sind die Limitierungen. Wir haben nur 500MB zur Verfügung für die Packages und ich bin mir nicht sicher, wie weit das reicht... Weitere Limitierungen: https://github.com/organizations/it-ninjas/billing/plans. In der Zwischenzeit könnte man ja ein POC machen, ob und es mit der IT-Ninja-Warriors Org machbar ist (Repo öffnen für Patrick, Zugriffsrechte für alle PB, Code Hinzufügen, Actions definieren, main-Branch schützen, ...). Passt das?

@pstoeckle
Copy link
Collaborator Author

Ich denke aber auch, dass wir noch etwas genauer beschreiben können wie eine CI funktioniert, oder zumindest den Code Snipped der Pipeline erklären, was ist der Trigger, wieso brauchen wir den etc.

Alles klar, dann füge ich das noch hinzu

@pstoeckle
Copy link
Collaborator Author

@peggimann So besser?

@pstoeckle
Copy link
Collaborator Author

Ich denke aber auch, dass wir noch etwas genauer beschreiben können wie eine CI funktioniert, oder zumindest den Code Snipped der Pipeline erklären, was ist der Trigger, wieso brauchen wir den etc.

Siehe 6e93f4e

Comment on lines 197 to 211
### Aufgabe 2a: Teste Deine CI! (Optional)

1. Füge dem Java Code einen Fehler hinzu, der verhindert, dass das Java Programm
kompiliert werden kann oder die Tests fehlschlagen lässt.
2. Committe und pushe die Änderungen.
3. Gehe zu deinem GitHub Repository und klicke auf den Reiter `Actions`.
Warte, bis dein Workflow abgeschlossen ist.
Der Workflow sollte fehlschlagen und mit einem ❌ markiert sein.
4. Klicke auf den Workflow, um die Details zu sehen.
5. Klicke auf den Job `java-test` und dann auf den Step `Run JUnit tests using Maven`.
Du solltest die Ausgabe von Maven sehen und dort auf den Fehler
hingewiesen werden, den du gerade eingeführt hast.
6. Fixe den Fehler wieder.
7. Committe und pushe die Änderungen.
8. Der Workflow sollte wieder erfolgreich sein und mit einem ✅ markiert sein.
Copy link
Collaborator

Choose a reason for hiding this comment

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

Vielleicht ist es hier noch eine Überlegung wert die Aufgabe 2a nicht optional zu machen? Die Lernenden sollten an diesem Punkt ja bereits Unit-Tests kennen und fixen können.

Stattdessen würde die Pipeline zuerst fehlschlagen, was direkt zeigt wieso CI wichtig ist. Dann müssten sie die Pipeline fixen, bis sie grün wird.

Copy link
Collaborator Author

@pstoeckle pstoeckle Oct 24, 2025

Choose a reason for hiding this comment

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

Vielleicht ist es hier noch eine Überlegung wert die Aufgabe 2a nicht optional zu machen?

Umgesetzt in 8212c0d

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

Stattdessen würde die Pipeline zuerst fehlschlagen, was direkt zeigt wieso CI wichtig ist. Dann müssten sie die Pipeline fixen, bis sie grün wird.

@MasterEvarior würde ich nicht machen. Wenn die Lernenden nicht genau lesen bzw. die Schritte nicht richtig machen, dann schlägt die Pipeline auch fehl, aber die Lernenden denken, dass alles in Ordnung ist. Und die Lernenden merken den Fehler erst, wenn sie es fixen sollen.

@peggimann
Copy link

@peggimann So besser?

Ja sehr cool vielen Dank!!!!

Copy link

@chrira chrira left a comment

Choose a reason for hiding this comment

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

Kurz und knackig. Finde es gut, danke.

@pstoeckle
Copy link
Collaborator Author

Hoi,
könnt ihr mal ins labs GitHub repo schauen? Ich kann immer noch nicht auf meinen feature/ci branch pushen ... und daher auch nicht die PR kommentare einbauen ...

@MasterEvarior
Copy link
Collaborator

MasterEvarior commented Oct 24, 2025

Hoi, könnt ihr mal ins labs GitHub repo schauen? Ich kann immer noch nicht auf meinen feature/ci branch pushen ... und daher auch nicht die PR kommentare einbauen ...

@pstoeckle Probiers nochmals, ich hab dich hinzugefügt. Evtl. musst du noch eine Einladung annehmen irgendwo.

@pstoeckle
Copy link
Collaborator Author

Hoi, könnt ihr mal ins labs GitHub repo schauen? Ich kann immer noch nicht auf meinen feature/ci branch pushen ... und daher auch nicht die PR kommentare einbauen ...

@pstoeckle Probiers nochmals, ich hab dich hinzugefügt. Evtl. musst du noch eine Einladung annehmen irgendwo.

Ja! jetzt geht es wieder! hab die kommentare addressiert

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.

5 participants