Mon entreprise passe de la fabrication à la commercialisation. Une partie de notre processus make consiste à appeler xmllint sur un certain nombre de fichiers xml pour les valider par rapport à un schéma.Utilisation de scons pour effectuer la validation
J'ai ce qui suit dans mon SConstruct:
import os;
Env = DefaultEnvironment()
pwd = Dir('.').path
xmlValidator = Builder(action = 'xmllint --noout --schema '+pwd+'/path/schema.xsd '+pwd+'file.xml')
Env.Append(BUILDERS = {'ValidateXML' : xmlValidator})
Env.ValidateXML()
Quand je lance:
scons -Q
je reçois:
scons: `.' is up to date.
Mais aucune validation est exécutée.
Qu'est-ce que je fais mal? Je suis complètement nouveau à Scons, et modérément familier avec Python.
Merci beaucoup. Cela a fonctionné parfaitement sauf que le commutateur --noout doit être supprimé lors de l'utilisation du commutateur --output dans le second exemple. –
OK, bon à savoir. J'ai édité l'exemple, donc c'est logique, juste au cas où. – richq