andygrove commented on code in PR #6377:
URL: https://github.com/apache/datafusion-comet/pull/6377#discussion_r4146842364


##########
docs/source/contributor-guide/release_process.md:
##########
@@ -323,14 +324,15 @@ Options are:
 Example:
 
 ```shell
-cd dev/release && ./build-release-comet.sh && cd ../..
+cd dev/release && ./build-release-comet.sh -b branch-0.13 && cd ../..
 ```
 
 #### Build output
 
 The build output is installed to a temporary local maven repository. The build 
script will print the name of the
 repository location at the end. This location will be required at the time of 
deploying the artifacts to a staging
-repository
+repository. The script also prints the commit that the artifacts were built 
from, which should be the commit that
+you tag in the next step.

Review Comment:
   Good catch, fixed in 89259b0735. The tag step now tags the commit that the 
script prints (`git tag 0.13.0-rc1 <commit>`) instead of resetting to the 
branch tip, and says why. I also pointed "If the Vote Fails" at the change log 
step instead of the tag step, because repeating from the tag step would tag a 
new commit without rebuilding the jars.



##########
dev/release/build-release-comet.sh:
##########
@@ -87,6 +96,17 @@ if [ "$JAVA_VERSION" -lt 17 ]; then
 fi
 echo "Java version check passed: $JAVA_VERSION"
 
+# Resolve the branch to a single commit, and build both the native binaries 
(in the docker
+# containers) and the jars (in a fresh clone) from that commit, so that they 
match even if
+# the branch moves during the build. Nothing is built from the local checkout 
that this
+# script is run from, so its current branch, local changes and stale build 
output (see
+# https://github.com/apache/datafusion-comet/issues/2232) cannot leak into the 
release.

Review Comment:
   Done in 89259b0735. The Docker build context is now the clone's 
`dev/release/comet-rm`, and `cargo.config` is copied from the clone's 
`dev/cargo.config`, which also stops the script from writing `workdir` into the 
local checkout. That leaves the script itself as the only file taken from the 
local checkout, so the release doc now says to run it from a checkout of the 
release branch.



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


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to