diff --git a/.zuul.yaml b/.zuul.yaml new file mode 100644 index 0000000000000..74308e11f433f --- /dev/null +++ b/.zuul.yaml @@ -0,0 +1,14 @@ +- project: + name: theopenlab/spark + check: + jobs: + - spark-build-and-python-test-arm64 + +- job: + name: spark-build-and-python-test-arm64 + parent: init-test + description: | + The spark build and test other modules in openlab cluster. + run: .zuul/playbooks/spark-build/run_python_tests.yaml + nodeset: ubuntu-xenial-arm64 + timeout: 86400 diff --git a/.zuul/playbooks/spark-build/run_python_tests.yaml b/.zuul/playbooks/spark-build/run_python_tests.yaml new file mode 100644 index 0000000000000..ea34d982ac88a --- /dev/null +++ b/.zuul/playbooks/spark-build/run_python_tests.yaml @@ -0,0 +1,52 @@ +- hosts: all + tasks: + - name: Build spark master using mvn with hadoop 2.7 + shell: + cmd: | + set -exo pipefail + sudo apt-get update -y + + # Install java + sudo apt-get install default-jre -y + sudo apt-get install default-jdk -y + java_home=$(dirname $(dirname $(update-alternatives --list javac))) + echo "export JAVA_HOME=${java_home}" >> ~/.profile + echo "export PATH=${java_home}/bin:$PATH" >> ~/.profile + source ~/.profile + + # Install maven + wget http://www.us.apache.org/dist/maven/maven-3/3.6.2/binaries/apache-maven-3.6.2-bin.tar.gz + tar -xvf apache-maven-3.6.2-bin.tar.gz + export PATH=$PWD/apache-maven-3.6.2/bin:$PATH + + # fix kafka authfail tests + sudo sed -i "s|127.0.0.1 $(hostname) localhost|127.0.0.1 localhost $(hostname)|" /etc/hosts + + cd {{ ansible_user_dir }}/{{ zuul.project.src_dir }} + + ./build/mvn install -DskipTests -Phadoop-2.7 -Pyarn -Phive -Phive-thriftserver -Pkinesis-asl -Pmesos + + # use leveldbjni arm supporting jar + wget https://repo1.maven.org/maven2/org/openlabtesting/leveldbjni/leveldbjni-all/1.8/leveldbjni-all-1.8.jar + mvn install:install-file -DgroupId=org.fusesource.leveldbjni -DartifactId=leveldbjni-all -Dversion=1.8 -Dpackaging=jar -Dfile=leveldbjni-all-1.8.jar + + # install python3.6 + sudo add-apt-repository ppa:jonathonf/python-3.6 -y + sudo apt-get update -y + sudo apt-get install python3.6 -y + sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.6 1 + sudo apt-get install python3.6-dev -y + + # install pip(pip3) + curl https://bootstrap.pypa.io/get-pip.py | sudo python3.6 + + # install packages needed + sudo pip2 install coverage numpy + sudo pip install coverage numpy + + # run python tests + python/run-tests --python-executables=python2.7,python3.6 + + chdir: '/home/zuul/src' + executable: /bin/bash + environment: '{{ global_env }}' \ No newline at end of file