You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@calcite.apache.org by GitBox <gi...@apache.org> on 2019/11/07 22:02:24 UTC

[GitHub] [calcite-avatica] F21 commented on issue #104: CALCITE-3158: Avatica: migrate build system to Gradle

F21 commented on issue #104: CALCITE-3158: Avatica: migrate build system to Gradle
URL: https://github.com/apache/calcite-avatica/pull/104#issuecomment-551286604
 
 
   @vlsi Thanks for working on this! I pulled in your latest commits and achieve my first successful build in a docker container. Speed was also quite good:
   
   ```
   BUILD SUCCESSFUL in 4m 21s
   104 actionable tasks: 64 executed, 40 up-to-date
   ```
   
   The reason I am using a docker container for making a release is because I usually don't have a Java environment set up on my machine (which is on Windows as well). Docker containers also allow me to swap between Java/JDK versions easily and there is usually nothing to install as the image is already built.
   
   I did have to use the JDK flavor instead of the JRE flavor of the Gradle container, otherwise it complains about JDK being missing.
   
   These are the commands I used to build:
   ```
   docker run -v "$PWD":/home/gradle/project:rw -v "/c/Users/Francis Chuang/AppData/Roaming/gnupg":/.gnupg -w /home/gradle/project --network="host" -it gradle:5.6-jdk sh
   apt update
   apt install gnupg2
   mkdir -p /root/.gnupg
   cp -r /.gnupg/ /root/
   chmod -R 700 /root/.gnupg/
   rm -rf /root/.gnupg/*.lock
   export GPG_TTY=/dev/console
   touch /root/.gnupg/gpg-agent.conf
   echo 'default-cache-ttl 10000' >> /root/.gnupg/gpg-agent.conf
   echo 'max-cache-ttl 10000' >> /root/.gnupg/gpg-agent.conf
   "test" | gpg2 --local-user 635665E0BE3F72552910CB74BBE44E923A970AB7 --output /dev/null --sign -
   gradle prepareVote -PasfTestSvnUsername=test -PasfTestSvnPassword=test -PasfTestNexusUsername=test -PasfTestNexusPassword=test -PasfTestGitSourceUsername=test -PasfTestGitSourcePassword=test -PallowUncommittedChanges -Prc=0 -PuseGpgCmd -Psigning.gnupg.keyName=635665E0BE3F72552910CB74BBE44E923A970AB7
   ```
   
   I agree that the `docker.sh` file can be massively simplified. One of my initial motivations with the script is to make it interactive. This is so that the release manager will not need to mess around with command line arguments and properties. I think for releasing using docker, the interactive aspects in the script to select the GPG key and set the appropriate command line parameters should be kept, but the redundant parts that are now being managed within the gradle tasks should be removed.
   
   I have only tried the `prepareVote` task so far. Are there any other ones I should try?

----------------------------------------------------------------
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.
 
For queries about this service, please contact Infrastructure at:
users@infra.apache.org


With regards,
Apache Git Services