#!/bin/bash

set -e

SOURCES_DIR=/tmp/artifacts

DISTRIBUTION_ZIP=${KIE_SERVER_DISTRIBUTION_ZIP}
DISTRIBUTION_WAR_DIR=kie-server.war

unzip -q ${SOURCES_DIR}/${DISTRIBUTION_ZIP} -d ${SOURCES_DIR}

ROOT_WAR_DIR=${JBOSS_HOME}/standalone/deployments/ROOT.war
cp -rf ${SOURCES_DIR}/${DISTRIBUTION_WAR_DIR} ${ROOT_WAR_DIR}
touch ${ROOT_WAR_DIR}.dodeploy
chown jboss:root ${ROOT_WAR_DIR}.dodeploy
cp -rf ${SOURCES_DIR}/SecurityPolicy/* ${JBOSS_HOME}/bin/

# https://issues.jboss.org/browse/RHPAM-738
BC_WAR_PATH="${BUSINESS_CENTRAL_DISTRIBUTION_EAP}/standalone/deployments/business-central.war"
ROOT_WEBINF_CLASSES_DIR="${ROOT_WAR_DIR}/WEB-INF/classes"
if [[ -f "${SOURCES_DIR}/${BUSINESS_CENTRAL_DISTRIBUTION_ZIP}" ]] && [[ "${JBPM_WB_KIE_SERVER_BACKEND_JAR}" != "" ]]; then
    unzip -qj "${SOURCES_DIR}/${BUSINESS_CENTRAL_DISTRIBUTION_ZIP}" "${BC_WAR_PATH}/WEB-INF/lib/${JBPM_WB_KIE_SERVER_BACKEND_JAR}" -d "${SOURCES_DIR}"
    if [[ -f "${SOURCES_DIR}/${JBPM_WB_KIE_SERVER_BACKEND_JAR}" ]]; then
        unzip -qj "${SOURCES_DIR}/${JBPM_WB_KIE_SERVER_BACKEND_JAR}" "default-query-definitions.json" -d "${ROOT_WEBINF_CLASSES_DIR}"
        chmod 664 "${ROOT_WEBINF_CLASSES_DIR}/default-query-definitions.json"
    fi
fi

cp -r ${SOURCES_DIR}/slf4j-*.jar ${JBOSS_HOME}/bin/launch

chown -R jboss:root ${ROOT_WAR_DIR}
chmod 0755 ${ROOT_WAR_DIR}

# Dir for optional deps
mkdir -p /opt/kie/dependencies/{jbpm-clustering,jbpm-kafka}

cp ${SOURCES_DIR}/jbpm-event-emitters-kafka-*.jar /opt/kie/dependencies/jbpm-kafka/
cp ${SOURCES_DIR}/kie-server-services-jbpm-cluster-*.jar /opt/kie/dependencies/jbpm-clustering/

# Necessary to permit running with a randomised UID
for dir in ${JBOSS_HOME} /opt/kie; do
    chown -R jboss:root ${dir}
    chmod 0755 ${dir}
    chmod -R g+rwX ${dir}
done

