ok
Direktori : /opt/cpanel/ea-profiles-cpanel/bin/ |
Current File : //opt/cpanel/ea-profiles-cpanel/bin/update-available-profiles |
#!/bin/bash # 1. ensure /etc/cpanel/ea4/profiles/cpanel exists and is empty rm -rf /etc/cpanel/ea4/profiles/cpanel rm -rf /etc/cpanel/ea4/profiles/vendor/cloudlinux mkdir -p /etc/cpanel/ea4/profiles/cpanel 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/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 for _type in cpanel cloudlinux; do SERVER_TYPE=$(readlink -n /usr/local/${_type}/server.type); num=`ls -1 /opt/cpanel/ea-profiles-${_type}/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-${_type}/server-type-$SERVER_TYPE-* | perl -n -e 'if (m/server-type-[^-]+-([^-]+\.json)/) { print "$1\n"; }'` do if [ "${_type}" == "cpanel" ]; then ln -s /opt/cpanel/ea-profiles-${_type}/server-type-$SERVER_TYPE-$profile /etc/cpanel/ea4/profiles/${_type}/$profile else ln -s /opt/cpanel/ea-profiles-${_type}/server-type-$SERVER_TYPE-$profile /etc/cpanel/ea4/profiles/vendor/${_type}/$profile fi 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." if [ "${_type}" == "cpanel" ]; then pushd /opt/cpanel/ea-profiles-${_type} > /dev/null else pushd /opt/cpanel/ea-profiles-${_type}/${cl_profile_dir} > /dev/null fi for profile in $(ls *.json | grep -v server-type-); do if [ "${_type}" == "cpanel" ]; then ln -s /opt/cpanel/ea-profiles-${_type}/${profile} /etc/cpanel/ea4/profiles/${_type}/${profile} else ln -s /opt/cpanel/ea-profiles-${_type}/${cl_profile_dir}${profile} /etc/cpanel/ea4/profiles/vendor/${_type}/${profile} fi done popd > /dev/null fi done