mengw15 opened a new pull request, #6319:
URL: https://github.com/apache/texera/pull/6319

   ### What changes were proposed in this PR?
   
   Add a boot smoke test for `texera-web` to the `amber-integration` job: build 
the amber dist in-job and launch the packaged `bin/texera-web-application` via 
`.github/scripts/smoke-boot.sh` (from #6220), asserting it reaches a listening 
state (port 8080) without a runtime classpath/linkage crash.
   
   `texera-web` was left out of #6274's `platform-integration` checks because 
it's built in the `amber` job, not `platform`; its boot check belongs in the 
infra-provisioned `amber-integration` job (mirroring how `platform-integration` 
hosts the platform boot checks).
   
   - **Self-contained**: the dist is built in-job (`sbt 
WorkflowExecutionService/dist`), not shipped as an artifact — so 
`amber-integration` stays independent of `amber` and runs in parallel (the 
`platform-integration` ∥ `platform` shape from #6274). The compile is already 
warm from the integration-test run.
   - **postgres-only**: `texera-web` boots via `TexeraWebApplication.run` → 
`SqlServer.initConnection` (+ `createAdminUser`); no S3 / LakeFS at boot, so 
`amber-integration`'s postgres suffices. Config resolves through 
`Utils.amberHomePath` (a working-dir search for a dir named `amber`), finding 
`./amber` from the checkout root and reading 
`amber/src/main/resources/web-config.yml`.
   - **ubuntu-only**: the boot is pure-JVM and OS-independent, so it doesn't 
also run on the macOS leg.
   
   Concrete regression it catches: #6204 (Hadoop 3.4 → Jersey 
`NoClassDefFoundError`) — compiled and unit-tested clean but crashed 
`texera-web` on boot.
   
   ### Any related issues, documentation, discussions?
   
   Closes #6276. Boot script from #6220; mirrors the `platform-integration` 
boot checks in #6274.
   
   ### How was this PR tested?
   
   - Verified `texera-web`'s boot path touches postgres only 
(`SqlServer.initConnection` + `AuthResource.createAdminUser`; no S3 / LakeFS / 
MinIO anywhere in the class).
   - Confirmed `FileAssetsBundle("../../frontend/dist", …)` registers lazily 
(its `run()` only constructs + registers the servlet; the filesystem check is 
request-time), so the absent frontend build in CI doesn't block boot.
   - Confirmed the launcher name (`bin/texera-web-application`, per the prod 
image `CMD`) and port (8080, per `web-config.yml`).
   - Exercised end-to-end by this workflow's own `amber-integration` CI run 
(ubuntu leg).
   
   ### Was this PR authored or co-authored using generative AI tooling?
   
   Generated-by: Claude Code (claude-opus-4-8)
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to