Update error from 1.2.2. to 1.2.5 (main::setupRebuildCustomerFiles:)

  • Hi, I tried to update from i-MSCP 1.2.2 to 1.2.5.


    Stoped the three services (ismscp_panel, imscp_daemon, imscp_network) then try to exec "perl imscp-autoinstall -d".


    I've got this error message (from 70% of update):


    main::setupRebuildCustomerFiles:
    │ [WARN] iMSCP::Config::FETCH: Accessing non existing config value
    │ CMD_CHMOD from the /etc/imscp/imscp.conf file (see file
    │ /var/www/imscp/gui/plugins/SpamAssassin/backend/SpamAssassin.pm at line
    │ 425)
    │ iMSCP::Debug::__ANON__: Use of uninitialized value
    │ $imscpConfig{"CMD_CHMOD"} in concatenation (.) or string at
    │ /var/www/imscp/gui/plugins/SpamAssassin/backend/SpamAssassin.pm line 425.



    [ERROR] main::setupRebuildCustomerFiles:
    [WARN] iMSCP::Config::FETCH: Accessing non existing config value CMD_CHMOD from the /etc/imscp/imscp.conf file (see file /var/www/imscp/gui/plugins/SpamAssassin/backend/SpamAssassin.pm at line 425)


    After that unexpected exit, the mail services stopped.
    What can I do?

    Files

  • You have read the errata?


    "Major changes were made in the plugin API, which break compatibility with old plugins versions. Therefore, before updating to this new version, you must delete all plugins."

  • I think you haven't disabled all your plugins before upgrade ;) Please do and then rerun the installer..

  • By reading your last post, I understand that you:


    - Updated the plugin
    - Update the panel



    The best way to do, I think, is the way say in the Errata file, which tell to remove all plugins, then update the panel, and at the end, add the plugin in their latest version (when those plugins are updated to the latest API >= i-MSCP 1.2.3)

  • Unfortunately I started the update process and when it failed I can't log in to the admin panel.


    So I deleted the plugin from the filesystem manually. The update process failed again (searched the Spamassassin plugin).
    After that I downloaded the latest plugin manually then put into the plugins directory.
    I started the installer again and it's run without any error.

  • Not the good way to handle it.


    The way to manage such issue is to connect to the database (cmd line in your case if PhpMyAdmin was unreachable at that time) and then, manually set the line of each plugins to disabled/to remove (don't know the exact command, @Nuxwin will know better than I).


    By updating just the files, I'm afraid that this can broke the SQL entries, but I'm not an expert in the update process of plugins.