Page tree
Skip to end of metadata
Go to start of metadata

Running the release verification script on each major platform

Linux

First, you must make sure your machine is configured as indicated below. Then, run the release verification script:

dev/release/verify-release-candidate.sh $VERSION $RC_NUM


Testing GPU Support

If you have an NVIDIA GPU and CUDA support configured, make nvidia-smi --list-gpus workable or set the environment variable ARROW_HAVE_GPU=yes to also run GPU unit tests when running the release verification script.

Windows 10 (64-bit)

Configure Cmdr (not necessary, but useful)

Control-click in Cmdr and select "Settings". Then click on "Tasks". Create a new Task in Cmdr to launch a command prompt configured with the correct Visual Studio compilation environment. The task command should look like:

cmd /k "%ConEmuDir%\..\init.bat"  -new_console 
cmd /k "C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\Tools\VsDevCmd.bat" -arch=amd64

Another approach you may prefer is to add this to the Cmdr startup, by adding the following to c:\cmdr\vendor\init.bat

"C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\Tools\VsDevCmd.bat" -arch=amd64

Run the release verification script

Download the source tarball from the SVN dist system that you wish to verify . 

dev\release\verify-release-candidate.bat %VERSION% %RC_NUM%


System Configuration Instructions

Ubuntu Linux (14.04 and higher)

Verifying on Ubuntu has a number of system dependencies

  • cmake 3.2 or higher
  • Misc apt-get dependencies (see below)
  • JDK8
  • Recent Apache Maven (3.3.9 and higher)
  • Recent Ruby (2.5.x will do), see instructions below on building from source
  • Bundler gem
  • NodeJS 10.1 and higher

Confirm that the following are in your path after following below steps and work:

  • mvn
  • npm
  • ruby
  • bundle
  • cmake

Install apt dependencies

sudo apt-get install -y cmake  # Do not use on Ubuntu 14.04
sudo apt-get install -y wget curl libboost-all-dev


# GLib build dependencies
sudo apt-get install -y -q autoconf-archive gtk-doc-tools libgirepository1.0-dev

On Ubuntu 14.04, it is necessary to install a newer CMake than what is in apt

CMAKE_PATH=cmake-3.12.0-Linux-x86_64.sh
wget https://cmake.org/files/v3.12/$CMAKE_PATH
sudo sh $CMAKE_PATH -- --skip-license --prefix=/usr
rm $CMAKE_PATH


Installing Oracle JDK8 and setting JAVA_HOME

The following will perform a headless install on Ubuntu 14.04 and higher:

sudo add-apt-repository ppa:webupd8team/java -y
sudo apt-get update -qq
echo "oracle-java8-installer shared/accepted-oracle-license-v1-1 select true" | sudo debconf-set-selections
sudo apt-get install -y oracle-java8-installer
sudo apt-get install -u oracle-java8-set-default

Installing Apache Maven

Download binary zip from https://maven.apache.org/download.cgi. This must be installed somewhere and added to your $PATH. For example:

unzip apache-maven-3.5.4-bin.zip
mkdir -p $HOME/java
mv apache-maven-3.5.4 $HOME/java
export PATH=$HOME/java/apache-maven-3.5.4/bin:$PATH

Install NodeJS

One easy way is to use nvm

curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash

Add the following to your bash profile

export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"  # This loads nvm
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"  # This loads nvm bash_completion

Install NodeJS 10.8.0

nvm install 10.8.0

Install Ruby and Ruby / GLib dependencies

# Build and install Ruby from source
sudo apt-get build-dep -y ruby-defaults
RUBY_VERSION=2.5.1
wget https://cache.ruby-lang.org/pub/ruby/$(echo $RUBY_VERSION | sed -e 's/\.[0-9]*$//')/ruby-$RUBY_VERSION.tar.gz
tar xvf ruby-$RUBY_VERSION.tar.gz
pushd ruby-$RUBY_VERSION
CC=gcc ./configure --prefix=$HOME/ruby
CC=gcc make -j8
make install
popd
rm -rf ruby-$RUBY_VERSION
rm -rf ruby-$RUBY_VERSION.tar.gz

Remember to add this Ruby to your PATH in your Bash profile

# Add Ruby to PATH
export PATH=$HOME/ruby/bin:$PATH

Now install the gem dependencies:

# GLib dependencies
gem install bundler



  • No labels