This is an automated email from the ASF dual-hosted git repository. sneethir pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/ranger.git
commit 855801506820d491b1fe33ecfb8b38f599579fc1 Author: Selvamohan Neethiraj <[email protected]> AuthorDate: Fri Dec 16 11:17:57 2022 -0500 RANGER-4017: added to run ranger-kms as part of the pack AND also, used docker to build RANGER --- dev-support/ranger-docker/Dockerfile.ranger-base | 4 +- .../ranger-docker/docker-compose.ranger-build.yml | 6 +- ranger_in_docker | 64 ++++++++++++++++------ 3 files changed, 51 insertions(+), 23 deletions(-) diff --git a/dev-support/ranger-docker/Dockerfile.ranger-base b/dev-support/ranger-docker/Dockerfile.ranger-base index a4bb9008f..52154868d 100644 --- a/dev-support/ranger-docker/Dockerfile.ranger-base +++ b/dev-support/ranger-docker/Dockerfile.ranger-base @@ -15,7 +15,7 @@ # limitations under the License. FROM ubuntu:20.04 - +ARG TARGETARCH # Install tzdata, Python, Java, python-requests RUN apt-get update && \ @@ -25,7 +25,7 @@ RUN apt-get update && \ pip3 install requests # Set environment variables -ENV JAVA_HOME /usr/lib/jvm/java-8-openjdk-amd64 +ENV JAVA_HOME /usr/lib/jvm/java-8-openjdk-${TARGETARCH} ENV RANGER_DIST /home/ranger/dist ENV RANGER_SCRIPTS /home/ranger/scripts ENV RANGER_HOME /opt/ranger diff --git a/dev-support/ranger-docker/docker-compose.ranger-build.yml b/dev-support/ranger-docker/docker-compose.ranger-build.yml index f0b5b05e0..700bdc630 100644 --- a/dev-support/ranger-docker/docker-compose.ranger-build.yml +++ b/dev-support/ranger-docker/docker-compose.ranger-build.yml @@ -10,11 +10,11 @@ services: networks: - ranger volumes: - - ~/.m2:/home/ranger/.m2:delegated + - ${HOME:-~}/.m2:/home/ranger/.m2:delegated - ./scripts:/home/ranger/scripts - ./patches:/home/ranger/patches - - ./dist:/home/ranger/dist - - ./../../:/home/ranger/src:delegated + - ./dist:/home/ranger/dist:delegated + - ${RANGER_HOME:-./../../}:/home/ranger/src:delegated depends_on: - ranger-base environment: diff --git a/ranger_in_docker b/ranger_in_docker index 9fecb3892..847b16560 100755 --- a/ranger_in_docker +++ b/ranger_in_docker @@ -35,6 +35,15 @@ # Also, you can force rebuild of ranger image by setting RANGER_REBUILD=1 # By default, the script will check if a ranger image does not exists and will do ranger build and docker image build. # +# Also, you can force rebuild of ranger using local maven and java based build +# instead of building it using Docker based buid by setting DOCKER_MAVEN_BUILD=1. +# + +# +# This is needed to build ranger-base build based on architecture +# +DOCKER_BUILDKIT=1 +export DOCKER_BUILDKIT if [ $# -eq 1 ] then @@ -66,12 +75,9 @@ then exit 1 fi -mvn --version > /dev/null 2>&1 - -if [ $? -ne 0 ] +if [ -z "${DOCKER_MAVEN_BUILD}" ] then - echo "ERROR: You must have MAVEN tool installed on your system to do a ranger build. (error running mvn command)" - exit 1 + DOCKER_MAVEN_BUILD=0 fi if [ -z "${RANGER_HOME}" ] @@ -126,18 +132,6 @@ then build_ranger=1 fi - if [ ${build_ranger} -eq 1 ] - then - cd ${RANGER_HOME} - mvn clean package -DskipTests - if [ $? -ne 0 ] - then - echo "ERROR: Unable to complete RANGER build. Exiting ...." - exit 1 - fi - cp target/ranger-* ${RD_HOME}/dist - cp target/version ${RD_HOME}/dist - fi cd ${RD_HOME} @@ -155,8 +149,40 @@ then echo "+ docker-compose -f docker-compose.ranger-base.yml build --no-cache" docker-compose -f docker-compose.ranger-base.yml build --no-cache fi + + if [ ${build_ranger} -eq 1 ] + then + if [ ${DOCKER_MAVEN_BUILD} -eq 0 ] + then + cd ${RD_HOME} + + echo "+ docker-compose -f docker-compose.ranger-base.yml -f docker-compose.ranger-build.yml down --remove-orphans" + docker-compose -f docker-compose.ranger-base.yml -f docker-compose.ranger-build.yml down --remove-orphans + + echo "+ docker-compose -f docker-compose.ranger-base.yml -f docker-compose.ranger-build.yml up" + docker-compose -f docker-compose.ranger-base.yml -f docker-compose.ranger-build.yml up + if [ $? -ne 0 ] + then + echo "ERROR: Unable to complete RANGER build using DOCKER. Exiting ...." + exit 1 + fi + else + cd ${RANGER_HOME} + mvn clean package -DskipTests + if [ $? -ne 0 ] + then + echo "ERROR: Unable to complete RANGER build. Exiting ...." + exit 1 + fi + cp target/ranger-* ${RD_HOME}/dist + cp target/version ${RD_HOME}/dist + fi + + fi fi +cd ${RD_HOME} + export RANGER_DB_TYPE=postgres docker-compose -f docker-compose.ranger-base.yml \ @@ -168,7 +194,9 @@ docker-compose -f docker-compose.ranger-base.yml \ -f docker-compose.ranger-hbase.yml \ -f docker-compose.ranger-kafka.yml \ -f docker-compose.ranger-hive.yml \ - -f docker-compose.ranger-knox.yml ${DOCKER_ACTION} ${DOCKER_COMPOSE_FLAGS} + -f docker-compose.ranger-knox.yml \ + -f docker-compose.ranger-kms.yml \ + ${DOCKER_ACTION} ${DOCKER_COMPOSE_FLAGS} echo echo "################### LIST OF DOCKER PROCESSES EXPOSING PORTS #####################"
