This is an automated email from the ASF dual-hosted git repository.

suvasude pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-gobblin.git


The following commit(s) were added to refs/heads/master by this push:
     new 7b75aa1  [GOBBLIN-782] Add dynamic config to JobSpec
7b75aa1 is described below

commit 7b75aa10e49db2479458aeaf81d0e233af2c186a
Author: Jack Moseley <[email protected]>
AuthorDate: Mon Jun 17 11:08:10 2019 -0700

    [GOBBLIN-782] Add dynamic config to JobSpec
    
    Closes #2645 from jack-moseley/gaas-inject-
    property
---
 .../org/apache/gobblin/service/modules/spec/JobExecutionPlan.java  | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git 
a/gobblin-service/src/main/java/org/apache/gobblin/service/modules/spec/JobExecutionPlan.java
 
b/gobblin-service/src/main/java/org/apache/gobblin/service/modules/spec/JobExecutionPlan.java
index 5433c2f..bb7955f 100644
--- 
a/gobblin-service/src/main/java/org/apache/gobblin/service/modules/spec/JobExecutionPlan.java
+++ 
b/gobblin-service/src/main/java/org/apache/gobblin/service/modules/spec/JobExecutionPlan.java
@@ -33,8 +33,10 @@ import lombok.Data;
 import lombok.EqualsAndHashCode;
 
 import org.apache.gobblin.configuration.ConfigurationKeys;
+import org.apache.gobblin.configuration.DynamicConfigGenerator;
 import org.apache.gobblin.kafka.schemareg.KafkaSchemaRegistryConfigurationKeys;
 import org.apache.gobblin.metrics.kafka.KafkaSchemaRegistry;
+import org.apache.gobblin.runtime.DynamicConfigGeneratorFactory;
 import org.apache.gobblin.runtime.api.FlowSpec;
 import org.apache.gobblin.runtime.api.JobSpec;
 import org.apache.gobblin.runtime.api.SpecExecutor;
@@ -125,6 +127,11 @@ public class JobExecutionPlan {
       //Add tracking config to JobSpec.
       addTrackingEventConfig(jobSpec, sysConfig);
 
+      // Add dynamic config to jobSpec if a dynamic config generator is 
specified in sysConfig
+      DynamicConfigGenerator dynamicConfigGenerator = 
DynamicConfigGeneratorFactory.createDynamicConfigGenerator(sysConfig);
+      Config dynamicConfig = 
dynamicConfigGenerator.generateDynamicConfig(jobSpec.getConfig().withFallback(sysConfig));
+      jobSpec.setConfig(jobSpec.getConfig().withFallback(dynamicConfig));
+
       // Reset properties in Spec from Config
       
jobSpec.setConfigAsProperties(ConfigUtils.configToProperties(jobSpec.getConfig()));
 

Reply via email to