Removes intermediate built moving prompt from repo
This commit is contained in:
1 file changed
-239
@@ -1,239 +0,0 @@
|
||||
Du arbeitest in einem bestehenden C++/Qt-Projekt, das von Qt5 nach Qt6 migriert wird. Deine Aufgabe ist, die Build- und CI/CD-Infrastruktur technisch sauber und robust an eine neue Verzeichnisstruktur anzupassen. Fokus: Linux/Ubuntu 26.04, CMake, Dockerfile, Shell-Skripte und CI-Pipeline.
|
||||
|
||||
## Ausgangslage
|
||||
|
||||
Die Repository-/Build-Struktur wurde geändert:
|
||||
|
||||
- Die bisherigen Folder und Files:
|
||||
```
|
||||
drwxrwxrwx 2 torsten torsten 4096 Jul 17 17:03 cmake/
|
||||
-rwxrwxrwx 1 torsten torsten 15357 Jul 22 12:32 CMakeLists.txt*
|
||||
-rw-rw-rw- 1 torsten torsten 92 Jul 14 13:55 CTestCustom.ctest
|
||||
drwxrwxrwx 2 torsten torsten 4096 Jul 14 14:12 doxygen/
|
||||
-rw-rw-rw- 1 torsten torsten 0 Aug 13 19:33 .gitkeep
|
||||
drwxrwxrwx 8 torsten torsten 4096 Jul 21 15:43 Lts/
|
||||
-rw-rw-rw- 1 torsten torsten 14908 Jul 21 15:45 lts-cc.conf
|
||||
drwxrwxrwx 3 torsten torsten 4096 Jul 18 15:22 specs/
|
||||
drwxrwxrwx 4 root root 4096 Jul 14 21:53 strix_runs/
|
||||
drwxrwxrwx 4 torsten torsten 4096 Aug 14 11:46 tests/
|
||||
drwxrwxrwx 5 torsten torsten 4096 Jul 14 12:14 TetraIF/
|
||||
drwxrwxrwx 2 torsten torsten 4096 Jul 14 14:45 translations/
|
||||
drwxrwxrwx 3 torsten torsten 4096 Jul 14 23:50 Z/
|
||||
```
|
||||
wurden nach `qt-migration-legatus/qt6-after/qt6-migrated-legatus/` verschoben.
|
||||
- `qt-migration-legatus/` ist jetzt ein **Git-Submodule**.
|
||||
- Innerhalb von `qt-migration-legatus/` gibt es zusätzlich:
|
||||
- `qt5-before` → enthält die bisherigen Qt5-Eingabefolder, die früher manuell schrittweise ins Projekt kopiert wurden.
|
||||
- `qt6-after` → enthält die bisherigen Ergebnisse bzw. Zielstände der Qt6-Portierung.
|
||||
|
||||
## Ziel
|
||||
|
||||
Passe alle relevanten Build-, CI- und Container-Pfade auf die neue Struktur an, sodass der Build unter Ubuntu 26.04 reproduzierbar, robust und wartbar funktioniert.
|
||||
|
||||
## Technischer Scope
|
||||
|
||||
Untersuche und aktualisiere ausschließlich technische Build-/Infra-Aspekte, insbesondere:
|
||||
|
||||
- GitHub Actions / GitLab CI / andere Linux-CI-Konfigurationen
|
||||
- Shell-Skripte (`.sh`)
|
||||
- `Dockerfile`
|
||||
- `.dockerignore`
|
||||
- CMake-Dateien:
|
||||
- `CMakeLists.txt`
|
||||
- `*.cmake`
|
||||
- Toolchain-/Preset-Dateien, falls vorhanden
|
||||
- Qt-bezogene Ressourcen-/Include-/Source-/MOC-/UIC-/RCC-Pfade
|
||||
- Copy-/Sync-/Stage-/Artifact-Schritte
|
||||
- Submodule-Checkout und Build-Kontext
|
||||
- Relative Pfade im Repo, im Build-Verzeichnis und im Container
|
||||
|
||||
Nicht im Scope:
|
||||
- PowerShell
|
||||
- Windows-spezifische Anpassungen
|
||||
- Fachliche/refaktorierende Codeänderungen außerhalb buildrelevanter Pfade
|
||||
- Unnötige Modernisierung jenseits der Pfad-/Infra-Migration
|
||||
|
||||
## Konkrete Aufgaben
|
||||
|
||||
1. Suche systematisch nach allen Referenzen auf die alten Folder
|
||||
```
|
||||
drwxrwxrwx 2 torsten torsten 4096 Jul 17 17:03 cmake/
|
||||
-rwxrwxrwx 1 torsten torsten 15357 Jul 22 12:32 CMakeLists.txt*
|
||||
-rw-rw-rw- 1 torsten torsten 92 Jul 14 13:55 CTestCustom.ctest
|
||||
drwxrwxrwx 2 torsten torsten 4096 Jul 14 14:12 doxygen/
|
||||
-rw-rw-rw- 1 torsten torsten 0 Aug 13 19:33 .gitkeep
|
||||
drwxrwxrwx 8 torsten torsten 4096 Jul 21 15:43 Lts/
|
||||
-rw-rw-rw- 1 torsten torsten 14908 Jul 21 15:45 lts-cc.conf
|
||||
drwxrwxrwx 3 torsten torsten 4096 Jul 18 15:22 specs/
|
||||
drwxrwxrwx 4 root root 4096 Jul 14 21:53 strix_runs/
|
||||
drwxrwxrwx 4 torsten torsten 4096 Aug 14 11:46 tests/
|
||||
drwxrwxrwx 5 torsten torsten 4096 Jul 14 12:14 TetraIF/
|
||||
drwxrwxrwx 2 torsten torsten 4096 Jul 14 14:45 translations/
|
||||
drwxrwxrwx 3 torsten torsten 4096 Jul 14 23:50 Z/
|
||||
```
|
||||
|
||||
in:
|
||||
- CI-Konfigurationen
|
||||
- CMake-Dateien
|
||||
- Dockerfile
|
||||
- Shell-Skripten
|
||||
- Copy-/Install-/Packaging-Schritten
|
||||
|
||||
2. Ermittle für jede Referenz die korrekte neue Zielstruktur:
|
||||
- `qt-migration-legatus/...`
|
||||
- `qt-migration-legatus/qt5-before/...`
|
||||
- `qt-migration-legatus/qt6-after/...`
|
||||
|
||||
3. Stelle sicher, dass das Git-Submodule `qt-migration-legatus/` in allen relevanten Build-Kontexten korrekt berücksichtigt wird:
|
||||
- lokaler CI-Checkout
|
||||
- Container-Build-Kontext
|
||||
- reproduzierbarer Checkout in der Pipeline
|
||||
|
||||
4. Aktualisiere Build-Logik und Pfade so, dass:
|
||||
- keine impliziten Annahmen über alte Repo-Layouts bestehen,
|
||||
- keine fragilen `../..`-Konstruktionen ohne Not bestehen bleiben,
|
||||
- Pfade zentralisiert oder klar abgeleitet werden, wo sinnvoll.
|
||||
|
||||
5. Prüfe speziell für CMake:
|
||||
- `add_subdirectory(...)`
|
||||
- `include(...)`
|
||||
- `target_include_directories(...)`
|
||||
- `target_sources(...)`
|
||||
- `configure_file(...)`
|
||||
- `file(COPY ...)`, `file(GLOB ...)`, `install(...)`
|
||||
- Pfade zu `.ui`, `.qrc`, Headern, Quellen und generierten Assets
|
||||
- Variablen, die noch auf alte Layouts zeigen
|
||||
|
||||
6. Prüfe speziell für `app/Dockerfile`:
|
||||
- `COPY`
|
||||
- `ADD`
|
||||
- `WORKDIR`
|
||||
- Build-Argumente / Umgebungsvariablen
|
||||
- Annahmen über vorhandene Verzeichnisse im Build-Kontext
|
||||
- Submodule-Verfügbarkeit im Container-Build
|
||||
- ggf. `.dockerignore`, falls dadurch `qt-migration-legatus/` oder relevante Unterordner ausgeschlossen werden
|
||||
|
||||
7. Prüfe speziell für CI/CD:
|
||||
- Submodule-Checkout/Init/Update
|
||||
- Cache-Pfade
|
||||
- Artifact-Pfade
|
||||
- Test-/Packaging-/Deploy-Stages mit alten Pfadannahmen
|
||||
- Script-Schritte mit Copy-/Move-/Sync-Operationen
|
||||
- Container-Build-Aufrufe mit korrektem Context
|
||||
|
||||
8. Trenne logisch zwischen:
|
||||
- Qt5-Altmaterial unter `qt-migration-legatus/qt5-before`
|
||||
- Qt6-Portierungsstand unter `qt-migration-legatus/qt6-after`
|
||||
|
||||
Diese beiden Bereiche dürfen nicht versehentlich vermischt werden. Wenn die aktuelle Pipeline beides nutzt, dokumentiere die Entscheidung explizit.
|
||||
|
||||
## Technische Qualitätsanforderungen
|
||||
|
||||
- Zielplattform ist **Ubuntu 26.04**.
|
||||
- Bevorzuge POSIX-nahe Shell-Lösungen (`bash`), keine PowerShell.
|
||||
- Änderungen sollen **minimal-invasiv**, aber **strukturell robust** sein.
|
||||
- Keine stillen Magic Paths.
|
||||
- Wo sinnvoll:
|
||||
- zentrale Pfadvariablen in CMake,
|
||||
- klare ENV-/ARG-Namen im Dockerfile,
|
||||
- explizite Submodule-Schritte in CI.
|
||||
- Keine unnötigen Refactorings ohne direkten Nutzen für die Migration.
|
||||
- Bestehendes Verhalten möglichst erhalten.
|
||||
- Wenn Annahmen nötig sind, markiere sie klar.
|
||||
|
||||
## Erwartete Ausgabe
|
||||
|
||||
Liefere in dieser Reihenfolge:
|
||||
|
||||
1. **Analyse**
|
||||
- Welche Dateien/Build-Stellen noch auf
|
||||
```
|
||||
drwxrwxrwx 2 torsten torsten 4096 Jul 17 17:03 cmake/
|
||||
-rwxrwxrwx 1 torsten torsten 15357 Jul 22 12:32 CMakeLists.txt*
|
||||
-rw-rw-rw- 1 torsten torsten 92 Jul 14 13:55 CTestCustom.ctest
|
||||
drwxrwxrwx 2 torsten torsten 4096 Jul 14 14:12 doxygen/
|
||||
-rw-rw-rw- 1 torsten torsten 0 Aug 13 19:33 .gitkeep
|
||||
drwxrwxrwx 8 torsten torsten 4096 Jul 21 15:43 Lts/
|
||||
-rw-rw-rw- 1 torsten torsten 14908 Jul 21 15:45 lts-cc.conf
|
||||
drwxrwxrwx 3 torsten torsten 4096 Jul 18 15:22 specs/
|
||||
drwxrwxrwx 4 root root 4096 Jul 14 21:53 strix_runs/
|
||||
drwxrwxrwx 4 torsten torsten 4096 Aug 14 11:46 tests/
|
||||
drwxrwxrwx 5 torsten torsten 4096 Jul 14 12:14 TetraIF/
|
||||
drwxrwxrwx 2 torsten torsten 4096 Jul 14 14:45 translations/
|
||||
drwxrwxrwx 3 torsten torsten 4096 Jul 14 23:50 Z/
|
||||
```
|
||||
verweisen
|
||||
- Welche Stellen wegen des neuen Submodules `qt-migration-legatus/` kritisch sind
|
||||
- Welche Stellen speziell für Qt5-/Qt6-Trennung relevant sind
|
||||
|
||||
2. **Konkrete Änderungen**
|
||||
- als präzise Diffs pro Datei
|
||||
|
||||
3. **Begründung**
|
||||
- kurz und technisch pro wesentlicher Änderung
|
||||
|
||||
4. **Risiken / offene Punkte**
|
||||
- z. B. unklare Zuordnung zwischen `qt5-before` und `qt6-after`
|
||||
- mögliche Probleme im Docker-Build-Kontext
|
||||
- Pipeline-Schritte, die vom Runner-Layout abhängen
|
||||
|
||||
5. **Validierung**
|
||||
- konkrete Checks, z. B.:
|
||||
- Submodule erfolgreich ausgecheckt
|
||||
- CMake configure/build erfolgreich
|
||||
- Docker build erfolgreich
|
||||
- relevante Copy-/Artifact-Pfade vorhanden
|
||||
- keine Restreferenzen auf
|
||||
```
|
||||
drwxrwxrwx 2 torsten torsten 4096 Jul 17 17:03 cmake/
|
||||
-rwxrwxrwx 1 torsten torsten 15357 Jul 22 12:32 CMakeLists.txt*
|
||||
-rw-rw-rw- 1 torsten torsten 92 Jul 14 13:55 CTestCustom.ctest
|
||||
drwxrwxrwx 2 torsten torsten 4096 Jul 14 14:12 doxygen/
|
||||
-rw-rw-rw- 1 torsten torsten 0 Aug 13 19:33 .gitkeep
|
||||
drwxrwxrwx 8 torsten torsten 4096 Jul 21 15:43 Lts/
|
||||
-rw-rw-rw- 1 torsten torsten 14908 Jul 21 15:45 lts-cc.conf
|
||||
drwxrwxrwx 3 torsten torsten 4096 Jul 18 15:22 specs/
|
||||
drwxrwxrwx 4 root root 4096 Jul 14 21:53 strix_runs/
|
||||
drwxrwxrwx 4 torsten torsten 4096 Aug 14 11:46 tests/
|
||||
drwxrwxrwx 5 torsten torsten 4096 Jul 14 12:14 TetraIF/
|
||||
drwxrwxrwx 2 torsten torsten 4096 Jul 14 14:45 translations/
|
||||
drwxrwxrwx 3 torsten torsten 4096 Jul 14 23:50 Z/
|
||||
```
|
||||
|
||||
## Arbeitsweise
|
||||
|
||||
Gehe in dieser Reihenfolge vor:
|
||||
|
||||
1. Finde alle Referenzen auf
|
||||
```
|
||||
drwxrwxrwx 2 torsten torsten 4096 Jul 17 17:03 cmake/
|
||||
-rwxrwxrwx 1 torsten torsten 15357 Jul 22 12:32 CMakeLists.txt*
|
||||
-rw-rw-rw- 1 torsten torsten 92 Jul 14 13:55 CTestCustom.ctest
|
||||
drwxrwxrwx 2 torsten torsten 4096 Jul 14 14:12 doxygen/
|
||||
-rw-rw-rw- 1 torsten torsten 0 Aug 13 19:33 .gitkeep
|
||||
drwxrwxrwx 8 torsten torsten 4096 Jul 21 15:43 Lts/
|
||||
-rw-rw-rw- 1 torsten torsten 14908 Jul 21 15:45 lts-cc.conf
|
||||
drwxrwxrwx 3 torsten torsten 4096 Jul 18 15:22 specs/
|
||||
drwxrwxrwx 4 root root 4096 Jul 14 21:53 strix_runs/
|
||||
drwxrwxrwx 4 torsten torsten 4096 Aug 14 11:46 tests/
|
||||
drwxrwxrwx 5 torsten torsten 4096 Jul 14 12:14 TetraIF/
|
||||
drwxrwxrwx 2 torsten torsten 4096 Jul 14 14:45 translations/
|
||||
drwxrwxrwx 3 torsten torsten 4096 Jul 14 23:50 Z/
|
||||
```
|
||||
|
||||
2. Identifiziere alle Build-/CI-/Docker-Stellen, die `D` als Submodule korrekt einbinden müssen.
|
||||
3. Leite pro Fundstelle den neuen Zielpfad ab.
|
||||
4. Schlage minimal robuste Änderungen vor.
|
||||
5. Liefere die Änderungen als Diffs.
|
||||
6. Formuliere am Ende eine kurze Validierungs-Checkliste für Ubuntu-26.04-CI.
|
||||
|
||||
## Zusätzliche Vorgaben
|
||||
|
||||
- Wenn du alte Pfade durch neue ersetzt, tue das nicht blind global, sondern kontextabhängig.
|
||||
- Wenn CMake- oder Dockerfile-Logik bisher auf manuell kopierte Inhalte ausgelegt ist, passe sie so an, dass die neue Struktur explizit und nachvollziehbar verwendet wird.
|
||||
- Wenn ein Build-Schritt semantisch eher auf „Eingabe vor Portierung“ verweist, nutze bevorzugt `qt-migration-legatus/qt5-before`.
|
||||
- Wenn ein Build-Schritt auf bereits portierte Qt6-Artefakte oder Zielstände verweist, nutze bevorzugt `qt-migration-legatus/qt6-after`.
|
||||
- Wenn die vorhandene Logik diese Entscheidung nicht eindeutig macht, dokumentiere die Annahme direkt bei der Änderung.
|
||||
- Ergänze nur dort knappe Kommentare, wo die neue Struktur sonst schwer verständlich wäre.
|
||||
|
||||
Beginne mit einer vollständigen Bestandsaufnahme aller relevanten Pfadreferenzen und liefere danach die minimalen robusten Änderungen für CI/CD, CMake und Dockerfile unter Ubuntu 26.04.
|
||||
Reference in new issue
Block a user