Type: New Feature
Affects Version/s: trunk
Fix Version/s: 4.3.0
The oozie validate command runs an XML validator against a workflow, coordinator, or bundle XML file to check that it's valid with any of the XSD schema files we have.
Currently, this is implemented in the Oozie CLI (OozieCLI.validateCommand(...), which has some downsides:
- It's only available to OozieCLI users; anyone using the REST API can't use it
- It's currently hardcoded to the specific XSD files we ship with Oozie
- Whenever we add a new schema, we have to also manually update this, which is easy to forget
- Users can't validate custom schemas that the Oozie server would accept
We should move this to the Oozie server, perhaps at a new "validate" endpoint. It should be able to accept a local file path (the current behavior) and perhaps also an HDFS file while we're at it. For the local XML file, it can just be uploaded as part of the REST call.
Also, the description for the command needs to be updated to mention that it also handles coordinators and bundles.