Oozie shell action: exec and file tags -
i'm newbie in oozie , i've read oozie shell action examples got me confused things.
there examples i've seen there no <file>
tag.
some example, in cloudera here, repeats shell script in file tag:
<shell xmlns="uri:oozie:shell-action:0.2"> <exec>check-hour.sh</exec> <argument>${earthquakeminthreshold}</argument> <file>check-hour.sh</file> </shell>
while in oozie's website, writes shell script (the reference ${exec}
job.properties, points script.sh file) twice, separated #.
<shell xmlns="uri:oozie:shell-action:0.1"> ... <exec>${exec}</exec> <argument>a</argument> <argument>b</argument> <file>${exec}#${exec}</file> </shell>
there examples i've seen path (hdfs or local?) prepended before script.sh#script.sh
within <file>
tag.
<shell xmlns="uri:oozie:shell-action:0.1"> ... <exec>script.sh</exec> <argument>a</argument> <argument>b</argument> <file>/path/script.sh#script.sh</file> </shell>
as understand, shell script file can included in workflow hdfs path (same path workflow.xml resides).
can explain differences in these examples , how <exec>
, <file>
, script.sh#script.sh
, , /path/script.sh#script.sh
used?
<file>hdfs:///apps/duh/mystuff/check-hour.sh</file>
means "download hdfs file current working dir of yarn container runs oozie launcher shell action, using same file name default, can reference ./check-hour.sh
or check-hour.sh
in <exec> element".
<file>check-hour.sh</file>
means "download hdfs file -- user's home dir e.g. hdfs:///user/borat/check-hour.sh
-- etc. etc.".
<file>hdfs:///apps/duh/mystuff/check-hour.sh#youpi</file>
means "download hdfs file etc. etc., renaming youpi
, can reference ./youpi
or youpi
in element".
note hue ui inserts unnecessary #
stuff no actual name change. that's why see often.
Comments
Post a Comment