@@ -110,7 +110,10 @@ class OozieApi(object):
)
if pig_script.use_hcatalog and self.oozie_api.security_enabled:
- action.credentials = [{'name': 'hcat', 'value': True}]
+ action.credentials.append([{'name': 'hcat', 'value': True}])
+ action.save()
+ if pig_script.use_hbase and self.oozie_api.security_enabled:
+ action.credentials.append([{'name': 'hbase', 'value': True}])
action.save()
action.add_node(workflow.end)
@@ -84,6 +84,12 @@ class PigScript(Document):
return ('org.apache.hcatalog.pig.HCatStorer' in script or 'org.apache.hcatalog.pig.HCatLoader' in script) or \
('org.apache.hive.hcatalog.pig.HCatLoader' in script or 'org.apache.hive.hcatalog.pig.HCatStorer' in script) # New classes
+ @property
+ def use_hbase(self):
+ script = self.dict['script']
+ return 'org.apache.pig.backend.hadoop.hbase.HBaseStorage' in script
+
def create_or_update_script(id, name, script, user, parameters, resources, hadoopProperties, is_design=True):
try:
pig_script = PigScript.objects.get(id=id)