jamulussoftware / jamulussoftware/jamulus
Automatic Client/Server Smoke Test in CI
- Vorherrschende Sprache
- C
- Sterne
- 1.1k
- Forks
- 248
- Ø Merge
- 2 T. 3 Std.
- Gemergte PRs (30 T.)
- 9
Beschreibung
**Has this feature been discussed and generally agreed?**
@pljones and @ann0see raised the idea to run automatic client/server smoke tests in CI (#2423). I second this idea.
At least with Ubuntu/Debian this should be very doable.
**Describe the solution you'd like**
- Start a Docker container, install jamulus-headless, start it as server
- Start another Docker container, install jamulus-headless, start it as headless client
- Verify that the client connected properly (#1975 might help)
- Exit.
- Repeat for all supported Ubuntu/Debian releases
It's probably sufficient to run this on all (pre-)releases, but not on every push or PR. It would be nice to have that for all platforms, but let's start with the simple stuff. This would already confirm that packaging works and basic Jamulus functionality is there without crashing right away.
Testing for compatibility (old server + new client, old client + new server) would also be interesting.
**Describe alternatives that have been considered**
Rely on manual testing and see it break as we don't cover all platforms... :)
Beitragsleitfaden
Rechercherichtung
Beginne mit dem Lesen des Vorschlags in #2423 und des Kontexts zur Verbindungsüberprüfung in #1975 und untersuche anschließend die vorhandene Docker-, Packaging- und CI-Konfiguration des Repositories. Definiere einen CI-Job, der Server- und Client-Container von jamulus-headless für unterstützte Ubuntu/Debian-Versionen startet und die Client-Verbindung vor dem Beenden überprüft. Erledigt ist die Aufgabe, wenn der Smoke-Test nach dem festgelegten Release-Zeitplan ausgeführt wird und fehlschlägt, wenn das Packaging oder der grundlegende Start von Client/Server fehlerhaft ist.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- debian, docker, github-actions, ubuntu
- Bereich
- build-system, ci-cd, devops, testing-qa
- Issue-Typ
- Feature
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Aktivitätsstatus
- Ruhig
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 48/100