浏览代码

HUE-2365 [oozie] Import workflow with pig action ignores <param> tag

Michalis Kongtongk 11 年之前
父节点
当前提交
c212be1

+ 1 - 1
apps/oozie/src/oozie/importlib/xslt/workflows/0.1/nodes/fields/params.xslt

@@ -6,7 +6,7 @@
 
   <field name="params" type="TextField">
     <xsl:text>[</xsl:text>
-    <xsl:for-each select="*[local-name()='param']">
+    <xsl:for-each select="*[local-name()='param'] | *[local-name()='argument']">
       <xsl:choose>
         <xsl:when test="position() &lt; last()">
           <xsl:text><![CDATA[{"type":"]]></xsl:text><xsl:value-of select="local-name()" /><xsl:text><![CDATA[","value":"]]></xsl:text><xsl:value-of select="." /><xsl:text><![CDATA["},]]></xsl:text>

+ 2 - 2
apps/oozie/src/oozie/importlib/xslt/workflows/0.1/nodes/pig.xslt

@@ -3,7 +3,7 @@
 <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:workflow="uri:oozie:workflow:0.1" exclude-result-prefixes="workflow">
 
 <xsl:import href="fields/archives.xslt"/>
-<xsl:import href="fields/arguments.xslt"/>
+<xsl:import href="fields/params.xslt"/>
 <xsl:import href="fields/files.xslt"/>
 <xsl:import href="fields/job_properties.xslt"/>
 <xsl:import href="fields/job_xml.xslt"/>
@@ -15,7 +15,7 @@
   <object model="oozie.pig" pk="0">
 
     <xsl:call-template name="archives"/>
-    <xsl:call-template name="arguments"/>
+    <xsl:call-template name="params"/>
     <xsl:call-template name="files"/>
     <xsl:call-template name="job_properties"/>
     <xsl:call-template name="job_xml"/>

+ 1 - 1
apps/oozie/src/oozie/importlib/xslt/workflows/0.2.5/nodes/fields/params.xslt

@@ -6,7 +6,7 @@
 
   <field name="params" type="TextField">
     <xsl:text>[</xsl:text>
-    <xsl:for-each select="*[local-name()='param']">
+    <xsl:for-each select="*[local-name()='param'] | *[local-name()='argument']">
       <xsl:choose>
         <xsl:when test="position() &lt; last()">
           <xsl:text><![CDATA[{"type":"]]></xsl:text><xsl:value-of select="local-name()" /><xsl:text><![CDATA[","value":"]]></xsl:text><xsl:value-of select="." /><xsl:text><![CDATA["},]]></xsl:text>

+ 2 - 2
apps/oozie/src/oozie/importlib/xslt/workflows/0.2.5/nodes/pig.xslt

@@ -3,7 +3,7 @@
 <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:workflow="uri:oozie:workflow:0.2.5" exclude-result-prefixes="workflow">
 
 <xsl:import href="fields/archives.xslt"/>
-<xsl:import href="fields/arguments.xslt"/>
+<xsl:import href="fields/params.xslt"/>
 <xsl:import href="fields/files.xslt"/>
 <xsl:import href="fields/job_properties.xslt"/>
 <xsl:import href="fields/job_xml.xslt"/>
@@ -15,7 +15,7 @@
   <object model="oozie.pig" pk="0">
 
     <xsl:call-template name="archives"/>
-    <xsl:call-template name="arguments"/>
+    <xsl:call-template name="params"/>
     <xsl:call-template name="files"/>
     <xsl:call-template name="job_properties"/>
     <xsl:call-template name="job_xml"/>

+ 1 - 1
apps/oozie/src/oozie/importlib/xslt/workflows/0.2/nodes/fields/params.xslt

@@ -6,7 +6,7 @@
 
   <field name="params" type="TextField">
     <xsl:text>[</xsl:text>
-    <xsl:for-each select="*[local-name()='param']">
+    <xsl:for-each select="*[local-name()='param'] | *[local-name()='argument']">
       <xsl:choose>
         <xsl:when test="position() &lt; last()">
           <xsl:text><![CDATA[{"type":"]]></xsl:text><xsl:value-of select="local-name()" /><xsl:text><![CDATA[","value":"]]></xsl:text><xsl:value-of select="." /><xsl:text><![CDATA["},]]></xsl:text>

+ 2 - 2
apps/oozie/src/oozie/importlib/xslt/workflows/0.2/nodes/pig.xslt

@@ -3,7 +3,7 @@
 <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:workflow="uri:oozie:workflow:0.2" exclude-result-prefixes="workflow">
 
 <xsl:import href="fields/archives.xslt"/>
-<xsl:import href="fields/arguments.xslt"/>
+<xsl:import href="fields/params.xslt"/>
 <xsl:import href="fields/files.xslt"/>
 <xsl:import href="fields/job_properties.xslt"/>
 <xsl:import href="fields/job_xml.xslt"/>
@@ -15,7 +15,7 @@
   <object model="oozie.pig" pk="0">
 
     <xsl:call-template name="archives"/>
-    <xsl:call-template name="arguments"/>
+    <xsl:call-template name="params"/>
     <xsl:call-template name="files"/>
     <xsl:call-template name="job_properties"/>
     <xsl:call-template name="job_xml"/>

+ 1 - 1
apps/oozie/src/oozie/importlib/xslt/workflows/0.3/nodes/fields/params.xslt

@@ -6,7 +6,7 @@
 
   <field name="params" type="TextField">
     <xsl:text>[</xsl:text>
-    <xsl:for-each select="*[local-name()='param']">
+    <xsl:for-each select="*[local-name()='param'] | *[local-name()='argument']">
       <xsl:choose>
         <xsl:when test="position() &lt; last()">
           <xsl:text><![CDATA[{"type":"]]></xsl:text><xsl:value-of select="local-name()" /><xsl:text><![CDATA[","value":"]]></xsl:text><xsl:value-of select="." /><xsl:text><![CDATA["},]]></xsl:text>

+ 2 - 2
apps/oozie/src/oozie/importlib/xslt/workflows/0.3/nodes/pig.xslt

@@ -3,7 +3,7 @@
 <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:workflow="uri:oozie:workflow:0.3" exclude-result-prefixes="workflow">
 
 <xsl:import href="fields/archives.xslt"/>
-<xsl:import href="fields/arguments.xslt"/>
+<xsl:import href="fields/params.xslt"/>
 <xsl:import href="fields/files.xslt"/>
 <xsl:import href="fields/job_properties.xslt"/>
 <xsl:import href="fields/job_xml.xslt"/>
@@ -15,7 +15,7 @@
   <object model="oozie.pig" pk="0">
 
     <xsl:call-template name="archives"/>
-    <xsl:call-template name="arguments"/>
+    <xsl:call-template name="params"/>
     <xsl:call-template name="files"/>
     <xsl:call-template name="job_properties"/>
     <xsl:call-template name="job_xml"/>

+ 1 - 1
apps/oozie/src/oozie/importlib/xslt/workflows/0.4/nodes/fields/params.xslt

@@ -6,7 +6,7 @@
 
   <field name="params" type="TextField">
     <xsl:text>[</xsl:text>
-    <xsl:for-each select="*[local-name()='param']">
+    <xsl:for-each select="*[local-name()='param'] | *[local-name()='argument']">
       <xsl:choose>
         <xsl:when test="position() &lt; last()">
           <xsl:text><![CDATA[{"type":"]]></xsl:text><xsl:value-of select="local-name()" /><xsl:text><![CDATA[","value":"]]></xsl:text><xsl:value-of select="." /><xsl:text><![CDATA["},]]></xsl:text>

+ 2 - 2
apps/oozie/src/oozie/importlib/xslt/workflows/0.4/nodes/pig.xslt

@@ -3,7 +3,7 @@
 <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:workflow="uri:oozie:workflow:0.4" exclude-result-prefixes="workflow">
 
 <xsl:import href="fields/archives.xslt"/>
-<xsl:import href="fields/arguments.xslt"/>
+<xsl:import href="fields/params.xslt"/>
 <xsl:import href="fields/files.xslt"/>
 <xsl:import href="fields/job_properties.xslt"/>
 <xsl:import href="fields/job_xml.xslt"/>
@@ -15,7 +15,7 @@
   <object model="oozie.pig" pk="0">
 
     <xsl:call-template name="archives"/>
-    <xsl:call-template name="arguments"/>
+    <xsl:call-template name="params"/>
     <xsl:call-template name="files"/>
     <xsl:call-template name="job_properties"/>
     <xsl:call-template name="job_xml"/>

+ 1 - 1
apps/oozie/src/oozie/importlib/xslt/workflows/0.5/nodes/fields/params.xslt

@@ -6,7 +6,7 @@
 
   <field name="params" type="TextField">
     <xsl:text>[</xsl:text>
-    <xsl:for-each select="*[local-name()='param']">
+    <xsl:for-each select="*[local-name()='param'] | *[local-name()='argument']">
       <xsl:choose>
         <xsl:when test="position() &lt; last()">
           <xsl:text><![CDATA[{"type":"]]></xsl:text><xsl:value-of select="local-name()" /><xsl:text><![CDATA[","value":"]]></xsl:text><xsl:value-of select="." /><xsl:text><![CDATA["},]]></xsl:text>

+ 2 - 2
apps/oozie/src/oozie/importlib/xslt/workflows/0.5/nodes/pig.xslt

@@ -3,7 +3,7 @@
 <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:workflow="uri:oozie:workflow:0.5" exclude-result-prefixes="workflow">
 
 <xsl:import href="fields/archives.xslt"/>
-<xsl:import href="fields/arguments.xslt"/>
+<xsl:import href="fields/params.xslt"/>
 <xsl:import href="fields/files.xslt"/>
 <xsl:import href="fields/job_properties.xslt"/>
 <xsl:import href="fields/job_xml.xslt"/>
@@ -15,7 +15,7 @@
   <object model="oozie.pig" pk="0">
 
     <xsl:call-template name="archives"/>
-    <xsl:call-template name="arguments"/>
+    <xsl:call-template name="params"/>
     <xsl:call-template name="files"/>
     <xsl:call-template name="job_properties"/>
     <xsl:call-template name="job_xml"/>

+ 1 - 0
apps/oozie/src/oozie/test_data/workflows/0.4/test-pig.xml

@@ -5,6 +5,7 @@
             <job-tracker>${jobTracker}</job-tracker>
             <name-node>${nameNode}</name-node>
             <script>aggregate.pig</script>
+              <param>KEY=VALUE</param>
               <argument>-param</argument>
               <argument>INPUT=/user/hue/oozie/workspaces/data</argument>
               <argument>-param</argument>

+ 1 - 1
apps/oozie/src/oozie/tests.py

@@ -2220,7 +2220,7 @@ class TestImportWorkflow04(OozieMockBase):
     assert_equal(4, len(Node.objects.filter(workflow=workflow)))
     assert_equal(4, len(Link.objects.filter(parent__workflow=workflow)))
     assert_equal('aggregate.pig', node.script_path)
-    assert_equal('[{"type":"argument","value":"-param"},{"type":"argument","value":"INPUT=/user/hue/oozie/workspaces/data"},{"type":"argument","value":"-param"},{"type":"argument","value":"OUTPUT=${output}"}]', node.params)
+    assert_equal('[{"type":"param","value":"KEY=VALUE"},{"type":"argument","value":"-param"},{"type":"argument","value":"INPUT=/user/hue/oozie/workspaces/data"},{"type":"argument","value":"-param"},{"type":"argument","value":"OUTPUT=${output}"}]', node.params)
     workflow.delete(skip_trash=True)