Files
qt6-migration-pipeline/RELEASE_2_VALIDATION_PLAN.md
T
torstenandCopilot b47bdca1aa Remove Lts/Services from Release 2 DEB packaging scope
- Exclude all svc* services from sources package
- Align packaging with Release 2 scope (AP3, AP4, AP9 only)
- Services not required for Release 2 functionality

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Entire-Checkpoint: 01M7A1KYKYYWE1P633PY1X6EPH
2026-11-13 08:50:34 +00:00

181 lines
4.1 KiB
Markdown

# Release 2 Validation Build Plan
## Objective
Execute final validation build for Release 2 using the adapted `new_docker_build_release2.sh` script.
## Release 2 Scope
### AP3 - Shared Libraries
- LtsUtils
- Widgets (nglwidgets)
- Session (tcpserver)
- Krypto (wms_json_ds)
- PluginManager
### AP4 - DDS Middleware
- ddscore
- svcCoreClient
- ddsftccore
- ddsfts
- ddsgen
- ddsQoS
- ddsconnector
### AP9 - Tools and Translations
- DdsView
- LogViewer
- SqlBrowser
- DaoGenerator
- lupdate toolchain
## Build Targets (35 total)
### DDS Middleware (AP4) - 7 targets
1. ddscore
2. svcCoreClient
3. ddsftccore
4. ddsfts
5. ddsgen
6. ddsQoS
7. ddsconnector
### NGL Libraries (Shared Utilities) - 16 targets
8. NGLLogger
9. nglapplication
10. nglcompression
11. nglcoreapplication
12. ngldb
13. nglguiapplication
14. nglsettings
15. nglsingleapplication
16. nglsinglecoreapplication
17. ngltools
18. ngltranslator
19. nglwidgets
20. qtsingleapplication
21. qtsinglecoreapplication
22. wms_json_ds
23. tcpserver
### Lts/Common Libraries (AP3) - 3 targets
24. LtsCoordTrans
25. LtsLicence
26. LtsUtils
### Test Executables - 2 targets
27. lts_coord_trans_unit_test
28. ngltools_qt_smoke
### Tools (AP9) - 5 targets
29. ddsView
30. logViewer
31. sqlBrowser
32. DaoGenerator
33. lupdate
## Script Adaptations Completed
### Changes Made to new_docker_build_release2.sh
1. ✅ Replaced GROUP* arrays with single RELEASE_BUILD_TARGETS array
2. ✅ Removed ALL svc* services (not in Release 2 scope)
3. ✅ Included only Release 2 scope targets (35 total)
4. ✅ Matched apt package list from reference script
5. ✅ Used same Docker inline script approach
6. ✅ Updated project name to "guez" (default)
7. ✅ Updated Docker image name to "guez-qt6:1.0"
8. ✅ Ensured all flags work:
- --build-prebuilt-image
- --delete-prebuilt-image
- --run-jenkins-builder
- --run-coverage (mutually exclusive with --run-jenkins-builder)
### Script Validation
- ✅ Syntax check passed (bash -n)
- ✅ Line count: 612 lines (similar to reference script's 647 lines)
- ✅ Structure matches reference script from story/release-validation-scope
## Build Execution Plan
### Phase 1: Prebuilt Image Build
```bash
cd qt-migration-legatus/qt6-after/qt6-migrated-legatus
./new_docker_build_release2.sh --build-prebuilt-image
```
Expected duration: 10-15 minutes
Expected outcome: Docker image guez-qt6:1.0 created
### Phase 2: Release Build (Jenkins Builder)
```bash
./new_docker_build_release2.sh --run-jenkins-builder
```
Expected duration: 30-45 minutes
Expected outcome: DEB packages created in packages-out/
### Phase 3: Cleanup
```bash
sudo rm -rf build4_* deb_build_tmp_* deb_stage_* packages-out
```
Note: Requires sudo due to root-owned directories from Docker builds
## Validation Criteria
### Success Criteria
- [ ] All 35 targets build successfully
- [ ] DEB packages created in packages-out/
- [ ] No critical build errors
- [ ] Test executables compile (ctest can run)
- [ ] No missing dependencies
### Known Exclusions (Out of Scope)
- All svc* services (except svcCoreClient which is part of DDS middleware)
- EvalApps
- Test directories
- LastTestAuswertung
- .envrc
## Reporting
### Build Report Sections
1. Build Summary
- Start/end times
- Total duration
- Success/failure status
2. Target Build Status
- List of all 35 targets
- Build status (SUCCESS/FAILED/SKIPPED)
- Build duration per target
3. Package Output
- List of generated DEB packages
- Package sizes
- Location
4. Issues Encountered
- Build errors
- Missing dependencies
- Resolution steps
5. Recommendations
- Next steps
- Known issues
- Follow-up tasks
## Rollback Plan
If build fails:
1. Check build logs in build4_*/ directory
2. Identify failing target
3. Verify target is in Release 2 scope
4. If missing dependency, add to APT_PACKAGES array
5. Re-run build with --delete-prebuilt-image first
## Environment Requirements
- Docker installed and running
- Sufficient disk space (20GB+ recommended)
- rti_license.dat file available
- MIGRATE_PIPELINE_ROOT environment variable set
- Network access for apt package downloads
---
*Created: 2026-11-13*
*Branch: story/create-release-two-delivery-25_11_2026*