This upgrade makes no changes to the cdrs, so "enswitch upgrade" should run quickly even on large systems.

Before installing cpan packages check that there are no PERL environment variables set. If there are, packages may be installed into root's home directory and processes may not work when started on system boot. You should remove the variables from /root/.bashrc (or wherever set them) and then logout and login to the shell to clear the variables. To check for PERL environment variables run:

  • env | grep PERL

To upgrade from Enswitch 3.11 to Enswitch 3.12

  1. If using database replication, check for the following lines in /etc/my.cnf or /etc/mysql/my.cnf and add them if missing. Restart the mysql server and check replication is working after making changes.
    • auto_increment_increment = 2
    • auto_increment_offset = 1 on the primary machine, and auto_increment_offset = 2 on the backup machine.
  2. On all Debian or Ubuntu machines, do:
    • apt-get install cpanminus
  3. On all CentOS, Fedora, or Redhat Enterprise machines, do:
    • wget --no-check-certificate -O - http://cpanmin.us | perl - App::cpanminus
  4. On all CentOS or Redhat Enterprise machines older than CentOS/RHEL 7 or Fedora machines older than 19, do:
    • cpanm Socket
  5. On all machines, check out /opt/enswitch/branches/3.12.
  6. On all machines, update the /opt/enswitch/current symlink.
  7. On the primary database machine, do:
    • enswitch upgrade
    • enswitch install_provisioning yealink_t41p yealink_t42g yealink_t46g yealink_w52p
  8. On all machines, do:
    • enswitch restart
  9. Test calls and the web interface.
  10. Set the "Web URL base" custom setting for the system rate plan.
  11. To enable check and cleaning of stale recording files versus database entries:
    • grep enswitch_integrity /etc/crontab
    • # Do not continue if lines already exist
    • cat /opt/enswitch/current/install/etc/crontabs/files >>/etc/crontab
  12. On the primary database machine, do:
    • enswitch after_upgrade