Refactor detect_changes to use common-ci-configuration template
Summary
- Replace ~140 lines of custom change detection with
.haf_app_detect_changestemplate from common-ci-configuration - Move cache lookup logic to sync job where it belongs
- Sync job now gracefully falls back to full sync if no cache available in AUTO_SKIP_SYNC mode (QUICK_TEST still requires explicit cache)
- Create NFS symlinks when using compatible cache so services can find data
Technical Details
The previous detect_changes job did both change detection AND cache lookup with Docker image verification. This has been split:
-
detect_changes - Now uses template for basic change detection, exports
AUTO_SKIP_SYNC=truewhen only tests/docs changed -
sync job - Handles cache lookup itself, searches for compatible caches when
AUTO_SKIP_SYNC=true
Service Compatibility Fix
Services don't see dotenv artifact overrides (they use variables evaluated at job creation time). When sync finds a compatible cache with a different key, an NFS symlink is created so the e2e service can find data at the expected path.
Net Change
- ~80 fewer lines of CI config
- Cleaner separation of concerns
- Uses standardized template from common-ci-configuration