ShreyeshArangath opened a new issue, #2459:
URL: https://github.com/apache/auron/issues/2459

   **Describe the bug**
   
   Running `auron-build.sh` from anywhere other than the project root fails in 
two quiet ways:
   
   1. `auron-build-info.properties` gets written under the current directory 
instead of the project, so the build never picks it up and the resource is 
missing from the jar.
   2. `project.version` is left out of the file, because the command that looks 
it up fails and the error is discarded.
   
   Neither one stops the build. It runs to completion and produces a jar where 
`AuronBuildInfo.VERSION` is empty.
   
   **To Reproduce**
   
   Steps to reproduce the behavior:
   
   1. `mkdir -p /tmp/elsewhere && cd /tmp/elsewhere`
   2. `bash /path/to/auron/auron-build.sh --release --sparkver 3.1 --scalaver 
2.12`
   3. Look at the build configuration the script prints
   4. Check 
`/tmp/elsewhere/common/src/main/resources/auron-build-info.properties`
   
   ```
   [INFO] Build configuration (from 
common/src/main/resources/auron-build-info.properties):
   [INFO]   spark.version : 3.1
   [INFO]   rust.version : 1.97.1
   [INFO]   java.version : 17.0.19
   [INFO]   scala.version : 2.12
   [INFO]   build.timestamp : 2026-08-08T23:32:59Z
   auron-build.sh: line 611: /tmp/elsewhere/build/mvn: No such file or directory
   ```
   
   `project.version` is missing from that list, and the file itself was created 
under `/tmp/elsewhere` rather than in the project.
   
   **Expected behavior**
   
   The build info file should land in the project regardless of where the 
script is invoked from, `project.version` should always be set, and a failure 
to resolve it should stop the build rather than produce a jar with no version 
in it.
   
   **Screenshots**
   
   N/A
   
   **Additional context**
   
   Three separate one-line causes, all on master:
   
   - `auron-build.sh:526` sets `BUILD_INFO_FILE` relative to the current 
directory rather than to the script.
   - `auron-build.sh:530` runs `./build/mvn` directly instead of the `MVN_CMD` 
that was already resolved back at line 153.
   - That same line sends stderr to `/dev/null`, and the write loop at line 565 
only writes non-empty values, so the failure never shows up in the output or in 
the file.
   
   Resolving the paths from `BASH_SOURCE`, reusing `MVN_CMD`, and failing when 
the version can't be resolved would cover all three. I have this working 
locally and can put up a PR.
   


-- 
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