Skip to main content

Aggiornamento dal terminale

Prerequisiti

Prima di procedere con l'aggiornamento, assicurarsi che siano soddisfatte le seguenti condizioni:

  1. vtenext deve essere aggiornato alla versione 25.02.2. Solo a partire da questa versione è possibile procedere con il passaggio successivo dell'aggiornamento.
  2. Deve essere presente una licenza valida e attiva.

La seguente procedura è dis

Aggiornamento con vteUpdater

Poiché questa versione di vtenext supporta esclusivamente PHP 8.3 o superiore, sono disponibili due modalità di aggiornamento:

  • Spostare l'intera installazione su un nuovo server con PHP 8.3 (è consigliato Ubuntu Server 24.04), completo di tutti i pacchetti necessari (fare riferimento alla pagina Requisiti di Installazione). In questo caso, verificare che i parametri di connessione presenti nel file config.inc.php siano corretti nel nuovo server.

  • Aggiornare il sistema operativo del server attuale a una versione che includa PHP 8.3. In questo caso è fortemente consigliato eseguire uno snapshot del sistema prima di avviare la procedura di aggiornamento.

Dopo questo, è possibile avviare la procedura di aggiornamento:

  1. Accedere tramite SSH al server che ospita vtenext e posizionarsi nella relativa directory.
  2. Se vengono rilevati errori, verrà mostrato un log che consentirà di valutarli e scegliere se ripristinare il sistema utilizzando i backup creati in precedenza oppure proseguire e completare l'aggiornamento.
    Proseguendo l'aggiornamento in presenza di errori, la fase di post-update verrà saltata e dovrà essere eseguita manualmente con il comando:
    ./vteUpdater.sh --only-delete
    Questa fase viene eseguita automaticamente se non vengono rilevati errori.
    Questa fase elimina i file obsoleti e applica gli script al termine dell'aggiornamento.
  3. Eseguire ./vteUpdater.sh (rendendolo eseguibile, se necessario) e seguire le istruzioni.
    L'output dovrebbe essere simile al seguente:
    root@testhost:/var/www/html/vte3001upd# ./vteUpdater.sh
    
    VTE Automatic Updater -- version 1.72
    [INFO] Checking for upgrades of this script...
    [INFO] Found VTE at revision 3001
    [INFO] Checking for latest available version...
    
    You can update to revision ????, . Do you want to proceed? (Y/N) : y
    
    Please type your username : **********
    Password: *****************
    [INFO] Validating credentials...
    [INFO] Downloading package...
    [INFO] Packages downloaded succesfully
    [INFO] Updating VTE to revision ????
    mysql: [Warning] Using a password on the command line interface can be insecure.
    mysql: [Warning] Using a password on the command line interface can be insecure.
    [INFO] Database size is 140 MB, (biggest table is sdk_language, 15 MB)
    
    The user and group for the web server have been detected as www-data:www-data. Is this correct? (Y/N) : y
    [INFO] Starting file comparison...
    File comparison: [########################################] 100%
    [INFO] No differences found
    [INFO] Waiting 2 minutes for cron processes to finish...
    [INFO] Creating backup of VTE files...
    Do you want to backup the database? (Y/N) : y
    [INFO] Creating backup of database...
    [INFO] Starting update...
    [INFO] Files copied. Executing schema update...
    [INFO] Removing obsolete files...
    [WARNING] The file ./config.template.php might have some custom code, left untouched
    [INFO] Removed 6289 files and 1126 directories
    [INFO] Executing post-delete scripts...
    [INFO] Update notes:
    [INFO] The obsolete module Dashboard has been eliminated, as well as the method SDK::setDashboard
    [INFO] If you were still using Dashboards, please migrate them to Charts or custom Iframe
    [INFO] 
    [INFO] Classes Vtiger_Net_Client and Vtiger_Feed_Parser have been eliminated.
    [INFO] Please review the custom code if they were still used
    [INFO] 
    [... redacted ...]
    [INFO] 
    [INFO] Update successful!

    Se si verificano errori, è possibile consultare il log per valutarne la gravità e scegliere se ripristinare il sistema utilizzando i backup creati in precedenza oppure proseguire e completare l'aggiornamento.

    Se vengono rilevati errori e si decide di proseguire, la fase di post-update verrà saltata e dovrà essere eseguita manualmente con il comando:

    ./vteUpdater.sh --only-delete

    Questa fase viene eseguita automaticamente se non vengono rilevati errori.

    Questa fase elimina i file obsoleti e applica gli script una volta completato con successo l'aggiornamento.


  4. Nel caso siano presenti modifiche personalizzate al codice, queste dovranno essere riportate manualmente nella nuova versione e verificate per assicurarsi che siano compatibili con PHP 8.3. Fare riferimento al manuale per gli sviluppatori per conoscere le modifiche introdotte.

    È inoltre disponibile una review skill utilizzabile con gli agenti AI all'interno del proprio IDE, che aiuta ad adattare il codice alla nuova versione.

    Maggiori dettagli sono disponibili nella documentazione.