Projet

Général

Profil

Anomalie #4945

Logs d'erreur en série sur tentative d'exécution de la commande git log

Ajouté par Thomas Belliard il y a plus de 10 ans.

Statut:
Nouveau
Priorité:
Normal
Assigné à:
-
Catégorie:
-
Version cible:
Début:
17/09/2013
Echéance:
% réalisé:

0%

Temps estimé:
Resolution:

Description

Dans header_template.inc.php on a ça :

                if(!getSettingAOui('ne_pas_tester_version_via_git_log')) {
                    try {
                        @exec('cd '.dirname(__FILE__).'; git log -1 --format=format:"%ct" '.$gepiGitCommit, $output);
                        if (isset($output[0])) {
                            $date = new DateTime('@'.$output[0]);
                            $version_gepi .= ' '.$date->format('d/m/Y H:i');
                        }
                    } catch (Exception $e) {
                    }
                }

La valeur par défaut de l'option 'ne_pas_tester_version_via_git_log' est à 'n' (ou bien tout simplement le setting est absent.

En conséquence, à chaque déclenchement de la command 'exec' des logs d'erreur sont générés dans Apache (/var/log/apache2/error_log) si le code de Gepi n'est pas un dépôt git, ou bien si la commande 'git' n'est pas disponible sur le serveur.

Ce comportement par défaut est anormal :
- une application web, d'une manière générale, n'a pas vocation à utiliser des commandes systèmes
- si le mécanisme est potentiellement utile, des tests supplémentaires devraient être mis en place, pour d'une part limiter les appels, et surtout ne pas essayer d'exécuter la commande si celle-ci n'est pas disponible ou bien si le répertoire de Gepi ne correspond pas un dépôt git (test sur l'existence de .git).

Aucune donnée à afficher

Formats disponibles : Atom PDF