I have created a Oozie workflow through the Hue interface. I have few questions associated to this
a. I can see the workflow XML that is created. But I dont see the job.properties file. Where does the Job.properties get stored?
b. There are REST API's to submit Oozie jobs created by writing workflow.xml and job.properties. For the oozie workflow's created through HUE, what will be the REST API? Any sample would help.
Did not want to raise a question and then answer it. But since I had to do search for sometime, the answer might help someone ...
When a Oozie workflow is created using Hue, a workflow xml is created by Hue and placed in an HDFS location. This file can be copied and placed anywhere in the HDFS later.
To make the REST API call to oozie to start a workflow, along with the workflow.xml, a config.xml need to be passed. To get the values to be populated in the config.xml, I used this approach to find the details.
Submit the job via Hue.
Open the Oozie Web UI. (You can get the link from the Ambari. Click on oozie and look at the quick links at the top).
In the Oozie Web UI, the job that is executed will be shown in list view.
One of the tab is the Job Configuration.
The content of the Job Configuration will be the content in the config.xml that need to be passed along with the REST API.
A sample URL would be
http://IP-where-Oozie-server-runs:11000/oozie/v1/jobs?action=start
The actual Workflow to be started is present in the config.xml
<property>
<name>oozie.wf.application.path</name>
<value>hdfs://Named-node-name:8020/location/to/workflow.xml </value>
</property>
The question is still not answered is - is there a job.properties file. Looks like its not present and its not required.
Note: As updated by romain , a job.properties does not exist and is replaced by the POST body content.