|
Server : LiteSpeed System : Linux server104.web-hosting.com 4.18.0-513.24.1.lve.1.el8.x86_64 #1 SMP Thu May 9 15:10:09 UTC 2024 x86_64 User : saleoqej ( 6848) PHP Version : 8.0.30 Disable Function : NONE Directory : /opt/cpanel/ea-profiles-cloudlinux/bin/ |
#!/bin/bash
# 1. ensure /etc/cpanel/ea4/profiles/vendor/cloudlinux exists and is empty
rm -rf /etc/cpanel/ea4/profiles/vendor/cloudlinux
mkdir -p /etc/cpanel/ea4/profiles/vendor/cloudlinux
cl_profile_dir=""
if [ -d /opt/cpanel/ea-profiles-cloudlinux ]; then
if [ -e /etc/cloudlinux-edition-solo ]; then
cl_profile_dir="clsolo/"
else
cl_profile_dir="clshared/"
fi
fi
# remove mod_hostinglimits inside container
if [ -e /etc/cloudlinux-container -a -d /opt/cpanel/ea-profiles-cloudlinux/${cl_profile_dir} ]; then
sed -i '/mod_hostinglimits/d' /opt/cpanel/ea-profiles-cloudlinux/${cl_profile_dir}/*.json
fi
# 2. Make symlinks in /etc/cpanel/ea4/profiles/vendor/cloudlinux/ to profiles in /opt/cpanel/ea-profiles-cloudlinux/
# - The symlinks are what will be available to EA4 UI/CLI.
# - There should always be /etc/cpanel/ea4/profiles/vendor/cloudlinux/default.json
SERVER_TYPE=$(readlink -n /usr/local/cpanel/server.type);
num=`ls -1 /opt/cpanel/ea-profiles-cloudlinux/server-type-$SERVER_TYPE-*.json 2> /dev/null | wc -l`
if (( $num > 0 )); then
# 2. Make symlinks in /etc/cpanel/ea4/profiles/cpanel/ to profiles with the name likeness of server-type-$SERVER-TYPE-*.json
# - The symlinks are what will be available to EA4 UI/CLI.
# - There should always be /etc/cpanel/ea4/profiles/cpanel/default.json
# - if the name is server-type-XYZ-default.json, the final profile will have the name default.json
echo "Doing “${SERVER_TYPE}” mode EA4 default profile."
for profile in `ls -1 /opt/cpanel/ea-profiles-cloudlinux/server-type-${SERVER_TYPE}-* | perl -n -e 'if (m/server-type-[^-]+-([^-]+\.json)/) { print "$1\n"; }'`; do
ln -s /opt/cpanel/ea-profiles-cloudlinux/server-type-${SERVER_TYPE}-${profile} /etc/cpanel/ea4/profiles/vendor/cloudlinux/${profile}
done
else
# 2. Make symlinks in /etc/cpanel/ea4/profiles/cpanel/ to profiles in /opt/cpanel/ea-profiles-cpanel/
# - The symlinks are what will be available to EA4 UI/CLI.
# - There should always be /etc/cpanel/ea4/profiles/cpanel/default.json
echo "Doing standard EA4 profiles."
pushd /opt/cpanel/ea-profiles-cloudlinux/${cl_profile_dir} > /dev/null
for profile in $(ls *.json | grep -v server-type-); do
ln -s /opt/cpanel/ea-profiles-cloudlinux/${cl_profile_dir}${profile} /etc/cpanel/ea4/profiles/vendor/cloudlinux/${profile}
done
popd > /dev/null
fi