Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Intégration Continue Discussion :

Problème avec PHPDocumentor


Sujet :

Intégration Continue

  1. #1
    Membre du Club
    Problème avec PHPDocumentor
    Bonjour,

    Je rencontre actuellement un petit problème pour générer automatiquement la documentation d'un application PHP lors de l'intégration de celle-ci avec Jenkins.

    Voici le build.xml correspondant à phpDoc :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    <project name="Test" default="build" basedir="./">
    
    	<property name="output" location="${basedir}/docs" />
    	<property environment="env"/>
    
    	<target name="phpdoc">
    		<exec executable="phpdoc.bat">
    			<arg value="-d" />
    			<arg path="${basedir}/application,${basedir}/library" />
    			<arg value="-t" />
    			<arg path="${output}/phpdoc" />
    			<arg value="--sourcecode" />
    		</exec>
    	</target>
    
    </project
    Et voici le résultat que j'obtient en console :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    phpdoc:
         [exec] phpDocumentor version 2.0.0a2
         [exec] 
         [exec] Result: 255
    A noter que lorsque j'exécute cette ligne de commande manuelle tout se passe correctement :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    phpdoc -d application -t docs\phpdoc
    Auriez-vous une idée d'où cela pourrait provenir ou une piste que je pourrais creuser. Je commence à être à cours d'idée

    Merci !

  2. #2
    Membre éclairé
    Voici quelques pistes afin de trouver l'erreur
    - La commande exécutée en ligne de commande et celle exécutée à travers Ant.
    * Il manque l'argument --sourcecode
    - Mauvais argument
    * Il y a une virgule dans la valeur de l'attribut path de la balise arg. Il faut ':' ou ';'
    http://ant.apache.org/manual/Tasks/exec.html

  3. #3
    Membre du Club
    Bonjour gboissinot et merci pour ta réponse.

    J'ai étudié tes pistes mais malheureusement ce n'est pas de là que provient le problème.

    Je suis allé jusqu'à essayer ce code mais sans succès :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    	<target name="phpdoc">
    		<exec executable="phpdoc.bat">
    			<arg value="-d" />
    			<arg path="${basedir}/application" />
    			<arg value="-t" />
    			<arg path="${output}/phpdoc" />
    		</exec>
    	</target>
    Normalement l'attribut sourcecode ne devrait pas poser problème car il n'a pas d'argument, mais dans le doute j'ai essayé sans, sans plus de succès.

    Est-ce qu'il n'existerait pas un log plus détaillé que la sortie console standard de l'interface Web Jenkins ?

  4. #4
    Membre du Club
    Après avoir cherché dans le fichier jenkins.err.log, je n'ai trouvé aucune exception ou message qui laisserai pensé que quelquechose s'est mal passé.

    Par contre ce que je trouve étonnant ce que phpdoc ne génère pas correctement les fichier HTML mais arrive à générer un fichier structure.xml dans le répertoire phpdoc. Celui-ci contient bien toutes les informations nécessaire à la génération de la documentation.

  5. #5
    Futur Membre du Club
    arg path ?
    Salut,

    A la place de :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <arg value="-d" />
    <arg path="${basedir}/application,${basedir}/library" />
    Essaye :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    <arg value="-d ${basedir}/application,${basedir}/library" />
    Quand j'ai ce genre de problèmes je remplace executable="phpdoc.bat" par executable="echo" pour voir la commande exécutée (pas sûr que cela fonctionne sous windows).