System update

01 updates install from file

The process of system update is simpler than the installation or migration process, so every YetiForce CRM administrator should be able to cope with it. One of the most important things that you need to remember is that before attempting to update the system, you should always make a backup copy and begin the process on the testing environment. Updates performed directly on production are one of the most common mistakes made by young administrators. 

When a backup copy has been created and run on the testing environment, it is possible to start the update process. Follow the steps below: 

Download an update package

It can be downloaded from various locations but it is recommended to download it from here. There are update packages for all versions. Select a package that will be appropriate for your version. Updates should be performed in a certain sequence. If you have 1.1. version and would like to update the system to 2.0, you should download the following update packages:  

  1. 1.1.0RC_to_1.2.0RC
  2. 1.2.0RC_to_1.3.0RC
  3. 1.3.0RC_to_1.4.0RC
  4. 1.4.0RC_to_2.0.0
There are built-in mechanisms that do not allow to upload incorrect packs, but they can be omitted. Although it is obviously not recommended, some might be tempted by the fact that it can save time. Default packages allow to update only from stable versions [e.g. 1.2.0, 1.4.0] and it's impossible to update the system with versions that are in between [called minor versions, e.g. 1.2.54, 1.4.11]. This can happen in the following cases: 
  1. Unstable version has been downloaded [e.g. directly from the main GitHub folder]. It should be downloaded from here:
  2. Update package for a minor version has been uploaded. It might be downloaded from the developer tree: 
Regardless of the reason, it's important to remember to: 
  1. Open this file: on the server where your CRM is located; 
  2. Change version number to the number of a stable version, e.g. from 1.4.55 version to 1.4.0 [always reduce the number].
Although YetiForce team verifies updates of minor versions, it might be possible to encounter some problems. Therefore, it is recommended to work only with stable version if there is no programmer in a company.  

Enable system logs

It is essential to enable system logs because the update might not display any errors in the interface, instead a notification informing that an update is successful will appear. Only logs provide data informing whether an update was successful or not. Therefore, reading the article about debugging is also recommended.

Update of YetiForce CRM software

Below is a step-by-step process for updates: 
  1. Go to the Module Manager;
  2. Use a tool "Install from file";
  3. Select a file that has been downloaded according to the section "Download an update package";
  4. Select "Import";
  5. If everything has been done properly, a window informing from which version to which version you update will appear [this window appears only since 2.0] together with a list of changes that the update contains and that may affect the process. If logs are enabled and everything is ready, accept the license and click "Yes" and the update will begin. 
Please note that if you update the system from 1.4 to 2.0, bear in mind that 2.0 requires at least PHP 5.4 [recommended is 5.6]. Additionally, if you configure your PHP version, please remember that YetiForce updates also its own .htaccess file so it is necessary to adjust it after the update process or to move the configurations to the higher directory so YetiForce won't overwrite them during updates.  
The update process shouldn't be very time-consuming. The entire process shouldn't take more than 10 seconds on well-configured servers with an appropriate power. However, there are many circumstances that can extend the process. 

Verify update 

  1. First check logs and search for any errors or warnings. Log files can sometimes contain 20 thousand lines of code so it is recommended to us key words, e.g. error, warning. 
  2. Secondly, test whether everything works from the visual perspective [whether it's possible to edit, modify, delete records]. These changes should be made from a user account without any privileges.  
  3. Perform also other tests that are connected to e.g. sending emails, generating PDF documents, editing roles or sharing rules. 
  4. Finally, verify the communication with external systems, e.g. systems integrating via API. 
During the update process YetiForce can also update config/api.php file that activated/deactivated integration with external systems, e.g. with the Customer Portal. If YetiForce modifies something in API files, it disables them by default [for security purposes] so it's necessary to enable them again.

How to cope with problems

The most important thing is to know how to analyze logs because 99% of solutions can be found there. Not only application logs are important but also server logs are an excellent source of information.  The second step might be a description of a problem on GitHub where our community and YetiForce team provide free assistance. Before you add an issue here: you should prepare a step-by-step description, relevant logs, important screenshots that will help us to reproduce the error. An issue with insufficient description will extend the process of solving a problem.   It is also possible to ask for professional and paid support from YetiForce team, visit our online shop to see what we offer.
  • czwartek, 10 sierpień 2017