HowTo: debug the quality control : Différence entre versions

De LMDZPedia
Aller à : navigation, rechercher
Ligne 1 : Ligne 1 :
As explained on https://lmdz.lmd.jussieu.fr/le-coin-des-developpeurs/controle-qualite, a number of quality control checks of the code are run every night to ensure that nothing was broken by the most recent commits to the svn depository (note that only the trunk version of the code is tested by this procedure).
+
As explained on the page [https://lmdz.lmd.jussieu.fr/le-coin-des-developpeurs/controle-qualite Contrôle qualité], a number of quality control checks of the code are run every night to ensure that nothing was broken by the most recent commits to the svn depository (note that only the trunk version of the code is tested by this procedure).
  
 
This note explains what to do if those regular tests reveal that the code is broken.
 
This note explains what to do if those regular tests reveal that the code is broken.
  
The checks are launched by the [https://www.lmd.jussieu.fr/~lmdz/Distrib/creation_modipsl.sh following script] which prepares the distribution version of the code and then lauches the [https://www.lmd.jussieu.fr/~lmdz/Distrib/check_version.sh script] that actually launches the quality checks. The results of the tests are synthesized in one line and recorded in the following file https://www.lmd.jussieu.fr/~lmdz/pub/LISMOI.trunk. Each line of this file (besides the comments) gives the version of the code being tested, its corresponding svn revision number and the results of the different checks (as explained in the file and the webpage given above [https://lmdz.lmd.jussieu.fr/le-coin-des-developpeurs/controle-qualite]
+
The checks are launched by the script [https://www.lmd.jussieu.fr/~lmdz/Distrib/creation_modipsl.sh creation_modipsl.sh] which prepares the distribution version of the code and then lauches [https://www.lmd.jussieu.fr/~lmdz/Distrib/check_version.sh check_version.sh], which actually launches the quality checks. The results of the tests are synthesized in one line and recorded in the file [https://www.lmd.jussieu.fr/~lmdz/pub/LISMOI.trunk LISMOI.trunk]. Each line of this file (besides the comments) gives the version of the code being tested, its corresponding svn revision number and the results of the different checks (as explained in the file and the webpage given above [https://lmdz.lmd.jussieu.fr/le-coin-des-developpeurs/controle-qualite]
  
 
=== How to debug a failed quality check ===
 
=== How to debug a failed quality check ===
  
Once a failed quality check is established, one should look in the [https://www.lmd.jussieu.fr/~lmdz/pub/LISMOI.trunk LISMOI.trunk file] to find out which version of the code caused a problem (for example 20211105.trunk). One can then find the output of the quality control check in the
+
Once a failed quality check is established, one should look in the file [https://www.lmd.jussieu.fr/~lmdz/pub/LISMOI.trunk LISMOI.trunk] to find out which version of the code caused a problem (for example 20211105.trunk). One can then find the output of the quality control check in the
  
 
  lmdz-cq:/tmp/lmdz/LMDZ[version_number]
 
  lmdz-cq:/tmp/lmdz/LMDZ[version_number]
Ligne 17 : Ligne 17 :
 
('''''lmdz-cq:/tmp/lmdz/LMDZ20211105.trunk''''' and '''''lmdz-cq:~lmdz/WWW/Distrib/WORK/check.out.20211105.trunk''''' respectively in our example). This output file is also [https://lmdz.lmd.jussieu.fr/Distrib/WORK accessible on internet].
 
('''''lmdz-cq:/tmp/lmdz/LMDZ20211105.trunk''''' and '''''lmdz-cq:~lmdz/WWW/Distrib/WORK/check.out.20211105.trunk''''' respectively in our example). This output file is also [https://lmdz.lmd.jussieu.fr/Distrib/WORK accessible on internet].
  
One can then go through the [https://www.lmd.jussieu.fr/~lmdz/Distrib/check_version.sh check_version.sh script] comparing with the different output to find out what went wrong. Tests of correction can actually be done in the  
+
One can then go through the script [https://www.lmd.jussieu.fr/~lmdz/Distrib/check_version.sh check_version.sh] comparing with the different output to find out what went wrong. Tests of correction can actually be done in the  
 
   lmdz-cq:/tmp/lmdz/LMDZ[version_number]
 
   lmdz-cq:/tmp/lmdz/LMDZ[version_number]
 
directory.
 
directory.

Version du 16 décembre 2022 à 13:13

As explained on the page Contrôle qualité, a number of quality control checks of the code are run every night to ensure that nothing was broken by the most recent commits to the svn depository (note that only the trunk version of the code is tested by this procedure).

This note explains what to do if those regular tests reveal that the code is broken.

The checks are launched by the script creation_modipsl.sh which prepares the distribution version of the code and then lauches check_version.sh, which actually launches the quality checks. The results of the tests are synthesized in one line and recorded in the file LISMOI.trunk. Each line of this file (besides the comments) gives the version of the code being tested, its corresponding svn revision number and the results of the different checks (as explained in the file and the webpage given above [1]

How to debug a failed quality check

Once a failed quality check is established, one should look in the file LISMOI.trunk to find out which version of the code caused a problem (for example 20211105.trunk). One can then find the output of the quality control check in the

lmdz-cq:/tmp/lmdz/LMDZ[version_number]

directory with the actual output file of the check_version.sh script in

lmdz-cq:~lmdz/WWW/Distrib/WORK/check.out.[version_number]

(lmdz-cq:/tmp/lmdz/LMDZ20211105.trunk and lmdz-cq:~lmdz/WWW/Distrib/WORK/check.out.20211105.trunk respectively in our example). This output file is also accessible on internet.

One can then go through the script check_version.sh comparing with the different output to find out what went wrong. Tests of correction can actually be done in the

 lmdz-cq:/tmp/lmdz/LMDZ[version_number]

directory.