python3 - 2to3 + miscell obvious tweaks
[sfa.git] / sfa / managers / eucalyptus / euca_rspec_validator.py
1 #!/usr/bin/env python
2
3
4
5 import sys
6 import os
7 from lxml import etree as ET
8
9 ##
10 # The location of the RelaxNG schema.
11 #
12 EUCALYPTUS_RSPEC_SCHEMA = 'eucalyptus.rng'
13
14
15 def main():
16     with open(sys.argv[1], 'r') as f:
17         xml = f.read()
18         schemaXML = ET.parse(EUCALYPTUS_RSPEC_SCHEMA)
19         rspecValidator = ET.RelaxNG(schemaXML)
20         rspecXML = ET.XML(xml)
21         if not rspecValidator(rspecXML):
22             error = rspecValidator.error_log.last_error
23             message = '%s (line %s)' % (error.message, error.line)
24             print(message)
25         else:
26             print('It is valid')
27
28 if __name__ == "__main__":
29     main()