die Cpanel::Exception::create( 'InvalidParameter', "Programmer Error: The left merge tree is unable to merge a setting because it's missing section: “[_1]”.", [ $node_section->name() ] );
#!/usr/local/cpanel/3rdparty/bin/perl
# cpanel - ea_convert_php_ini Copyright(c) 2016 cPanel, Inc.
# copyright@cpanel.net http://cpanel.net
# This code is subject to the cPanel license. Unauthorized copying is prohibited
# !!! This should only be run during migration !!!
# Updates each user's 'php.ini' file so it's compatible with EA4.
# Conditions (ALL must be met for this script to run)
# 1. This is being run by the migrate_ea3_to_ea4 script.
# 2. The system default PHP version is assigned to the mod_suphp
# 3. User is assigned to the system default PHP version.
# 4. The user has defined the 'suPHP_ConfigPath' setting within
# an .htaccess file in the docroot of a vhost.
# You'll notice 4 packages in this script. These are separate
# 1. It's overkill right now to create a whole new RPM package
# which would contain the code we need to correctly parse
# PHP ini files, get it into cpanel & whm, etc.
# 2. This used to be broken up into 2 scripts and designed to
# allow future cmd-line execution. However, it was too slow.
# In an effort to speed it up (1.5 hrs to 5 mins against
# 10k accounts), the files were merged (/bin/cat a b > c) and
# it was easier to combine the files and keep the packages
# The 4 packages in here are as follows:
# - Parse::PHP::Ini -- logic to parse/merge/render PHP ini files
# - ea_convert_php_ini_file -- logic to convert a single php ini file
# - ea_convert_php_ini_system -- logic to convert an entire
# - main -- main script interface
# 1. Allow user to manually run this script to convert the system at-will.
# 2. Allow script to convert a vhost's ini files assigned to a php version