159 lines
5.4 KiB
Plaintext
159 lines
5.4 KiB
Plaintext
###
|
|
# ~~~~~~licensing~~~~~~
|
|
# platform
|
|
# ==========
|
|
# Copyright (C) 2020 - 2024 EmDev LLC
|
|
# ==========
|
|
# You may not use this file except in accordance with the License Terms of the Copyright
|
|
# Holder located at: https://entaxy.ru/eula . All copyrights, all intellectual property
|
|
# rights to the Software and any copies are the property of the Copyright Holder. Unless
|
|
# it is explicitly allowed the Copyright Holder, the User is prohibited from using the
|
|
# Software for commercial purposes to provide services to third parties.
|
|
#
|
|
# The Copyright Holder hereby declares that the Software is provided on an "AS IS".
|
|
# Under no circumstances does the Copyright Holder guarantee or promise that the
|
|
# Software provided by him will be suitable or not suitable for the specific purposes
|
|
# of the User, that the Software will meet all commercial and personal subjective
|
|
# expectations of the User, that the Software will work properly, without technical
|
|
# errors, quickly and uninterruptedly.
|
|
#
|
|
# Under no circumstances shall the Copyright Holder or its Affiliates is not liable
|
|
# to the User for any direct or indirect losses of the User, his expenses or actual
|
|
# damage, including, downtime; loss of bussines; lost profit; lost earnings; loss
|
|
# or damage to data, property, etc.
|
|
# ~~~~~~/licensing~~~~~~
|
|
###
|
|
echo
|
|
echo
|
|
echo "************"
|
|
echo "Welcome to Entaxy platform installation script"
|
|
echo "************"
|
|
|
|
echo
|
|
echo "** Checking feature repository: ru.entaxy.esb/platform/${project.version}/xml/features ..."
|
|
|
|
_repo = (feature:repo-list | grep ru.entaxy.esb/platform/)
|
|
_repo_length = ($_repo length)
|
|
if { $_repo_length'' equals "0" } {
|
|
echo "\>\> Installing Entaxy repository..."
|
|
feature:repo-add mvn:ru.entaxy.esb/platform/${project.version}/xml/features
|
|
echo "\>\> ... installed"
|
|
} else {
|
|
echo "\>\> Entaxy repository is already installed"
|
|
}
|
|
|
|
echo
|
|
echo "** Checking entaxy-underlying-configuration feature ..."
|
|
|
|
service = (service:get org.apache.karaf.features.FeaturesService)
|
|
|
|
_config_feature = ($service getFeature entaxy-underlying-configuration)
|
|
_config_id = $_config_feature getId
|
|
_status = ($service getState $_config_id) toString
|
|
|
|
_in_shutdown = "0"
|
|
|
|
if { $_status equals "Uninstalled" } {
|
|
echo "\>\> Installing feature..."
|
|
feature:install entaxy-underlying-configuration
|
|
echo "\>\> ... installed"
|
|
echo
|
|
if { $1'' equals "skipReboot" } {
|
|
echo "** the system will skip reboot for applying JRE exports"
|
|
echo " \( see etc/jre.properties \)"
|
|
echo " due to 'skipReboot argument'"
|
|
echo "** If further installation will fail with errors please reboot"
|
|
} else {
|
|
echo "** the system will reboot now to apply JRE exports"
|
|
echo " \( see etc/jre.properties \)"
|
|
echo
|
|
echo "** PLEASE RUN THE SCRIPT AGAIN AFTER RESTART **"
|
|
_in_shutdown = "1"
|
|
shutdown -r -f
|
|
}
|
|
} else {
|
|
echo "\>\> Entaxy configuration is already installed"
|
|
}
|
|
|
|
if { $_in_shutdown equals "0" } {
|
|
|
|
echo
|
|
_status = ( ($service getState $_config_id) toString )
|
|
|
|
if { NOT { $_status equals "Started" } } {
|
|
echo "** Current configuration feature status is not [Started]"
|
|
echo "** Please check the feature [entaxy-underlying-configuration]"
|
|
echo "or clean the container and run installation again "
|
|
} else {
|
|
echo "** Installing Entaxy subplatform components in silent mode..."
|
|
|
|
echo "*** entaxy-karaf-basic .."
|
|
_basic_feature = ($service getFeature entaxy-karaf-basic)
|
|
_basic_id = $_basic_feature getId
|
|
_basic_status = ( ($service getState $_basic_id) toString )
|
|
if { NOT { $_basic_status equals "Started" } } {
|
|
try { feature:install entaxy-karaf-basic } { echo ".. ERROR" } { echo ".. done" }
|
|
} else {
|
|
echo ".. already installed"
|
|
}
|
|
|
|
echo "*** entaxy-karaf-runtime .."
|
|
|
|
_runtime_feature = ($service getFeature entaxy-karaf-runtime)
|
|
_runtime_id = $_runtime_feature getId
|
|
_runtime_status = ( ($service getState $_runtime_id) toString )
|
|
if { NOT { $_runtime_status equals "Started" } } {
|
|
echo
|
|
echo "** NOTICE **"
|
|
echo " Karaf will refresh bundles during install, so the script may be terminated"
|
|
echo " if you see karaf prompt or any other information on the screen"
|
|
echo " PLEASE RUN THE SCRIPT AGAIN"
|
|
echo "** ** **"
|
|
echo
|
|
sleep 10
|
|
try { feature:install entaxy-karaf-runtime } { echo ".. ERROR" } { echo ".. done" }
|
|
} else {
|
|
echo ".. already installed"
|
|
}
|
|
|
|
while { NOT { $_runtime_status equals "Started" } } {
|
|
echo "... waiting ..."
|
|
sleep 5
|
|
_runtime_status = ( ($service getState $_runtime_id) toString )
|
|
}
|
|
echo "\>\> ... installed"
|
|
echo
|
|
echo "** Installing Entaxy platform in verbose mode..."
|
|
|
|
_platform_feature = ($service getFeature entaxy-platform)
|
|
_platform_id = $_platform_feature getId
|
|
_status = ( ($service getState $_platform_id) toString )
|
|
if { $_status equals "Uninstalled" } {
|
|
feature:install -v -r entaxy-platform
|
|
echo
|
|
echo "\>\> ... installed"
|
|
} else {
|
|
echo "\>\> Entaxy platform is already installed"
|
|
}
|
|
}
|
|
|
|
echo
|
|
echo "Inactive bundles:"
|
|
inactive
|
|
echo
|
|
echo "** NOTICE **"
|
|
echo " If you see some bundles above in [Failure] or [GracePeriod] state please"
|
|
echo " (a) restart (bundle:stop and bundle:start) bundles in [Failure] state "
|
|
echo " or"
|
|
echo " (b) restart the container "
|
|
echo "** ** **"
|
|
echo
|
|
echo "** Thank you!"
|
|
|
|
_platform_manager_core_bundleInfo = (find platform-manager-core)
|
|
_platform_manager_core_bundleId = [(($_platform_manager_core_bundleInfo trim) split ' ')] get 0
|
|
stop $_platform_manager_core_bundleId
|
|
start $_platform_manager_core_bundleId
|
|
|
|
}
|