J'ai un script pouvant rechercher et sortir ou écrire mon numéro de version actuel dans un fichier texte. Maintenant, le seul problème est comment puis-je obtenir ce numéro de version dans une propriété phing. P>
À l'heure actuelle, ma cible de phings construit build.zip et construit.tar, j'aimerais qu'il construit la construction-1.0.0.zip ou tout ce que le script de version décide de la version actuelle. Comment puis-je faire ceci? Devrai-je créer ma propre "tâche"? P>
4 Réponses :
Vous pourriez avoir besoin de créer votre propre tâche pour cela. La tâche peut sembler quelque chose comme ... alors vous définissez la tâche dans votre version xml p> puis appelez la tâche <target name="dist">
<versiontask versionprop="version.number"/>
</target>
Une approche alternative consiste à utiliser l'attribut OutputProperty code> sur l'ExecTask pour fournir une propriété dans votre fichier de construction.
<target name="version">
<exec command="cat version.txt" outputProperty="version.number" />
<echo msg="Version: ${version.number}" />
</target>
Une approche alternative qui fonctionne sur Windows et Linux.
<propertyprompt propertyName="release_version" defaultValue="${version.numver}" promptText="Enter version to be released."/> <exec executable="php"> <arg value="-r" /> <arg value="$file=file_get_contents('version.txt'); $file = str_replace('${version.number}', '${release_version}', $file); file_put_contents('version.txt', $file);" /> </exec> <echo msg="Version number updated." /> <property name="version.number" value="${release_version}" override="true" />
Copié du script de construction CakePHP.
Aussi alternatif et meilleur moyen (mon avis) qui fonctionne à la fois sur Windows et Linux, il utilise une tâche natif aussi vous pouvez utiliser Plus d'informations P> P> loadfileTask code>
filtrage code> p>