@Override public JobSpecMonitor forJobCatalog(GobblinInstanceDriver instanceDriver, MutableJobCatalog jobCatalog) throws IOException { Config config = instanceDriver.getSysConfig().getConfig().getConfig(CONFIG_PREFIX).withFallback(DEFAULTS); return forConfig(config, jobCatalog); }
@Override public JobSpecMonitor forJobCatalog(GobblinInstanceDriver instanceDriver, MutableJobCatalog jobCatalog) throws IOException { Config config = instanceDriver.getSysConfig().getConfig().getConfig(CONFIG_PREFIX).withFallback(DEFAULTS); return forConfig(config, jobCatalog); }
@Override public GobblinInstancePlugin createPlugin(GobblinInstanceDriver instance) { return new HadoopKerberosKeytabAuthenticationPlugin(instance.getSysConfig().getConfig(), _loginUser, _loginUserKeytabFile); } }
@Override public GobblinInstancePlugin createPlugin(GobblinInstanceDriver instance) { return createPlugin(instance.getSysConfig().getConfig()); }
@Override protected void startUp() throws Exception { this.metrics.startMetricReporting(getInstance().getSysConfig().getConfigAsProperties()); }
@Test public void testConstructor() { final Config testConfig = ConfigFactory.parseMap(ImmutableMap.<String, Object>builder() .put("hadoop-inject.hadoop.security.authentication", "simple") .put("gobblin.instance.hadoop.loginUser", "foo") .put("gobblin.instance.hadoop.loginUserKeytabFile", "/tmp/bar") .build()); GobblinInstanceDriver instance = Mockito.mock(GobblinInstanceDriver.class); Mockito.when(instance.getSysConfig()).thenReturn(DefaultConfigurableImpl.createFromConfig(testConfig)); HadoopKerberosKeytabAuthenticationPlugin plugin = (HadoopKerberosKeytabAuthenticationPlugin) (new HadoopKerberosKeytabAuthenticationPlugin.ConfigBasedFactory()).createPlugin(instance); Assert.assertEquals(plugin.getLoginUser(), "foo"); Assert.assertEquals(plugin.getLoginUserKeytabFile(), "/tmp/bar"); Assert.assertEquals(plugin.getHadoopConf().get("hadoop.security.authentication"), "simple"); }
@Test public void testMissingOptions() { final Config testConfig1 = ConfigFactory.parseMap(ImmutableMap.<String, Object>builder() .put("hadoop-inject.hadoop.security.authentication", "simple") .put("hadoop.loginUser", "foo") .put("gobblin.instance.hadoop.loginUserKeytabFile", "/tmp/bar") .build()); final GobblinInstanceDriver instance1 = Mockito.mock(GobblinInstanceDriver.class); Mockito.when(instance1.getSysConfig()).thenReturn(DefaultConfigurableImpl.createFromConfig(testConfig1)); Assert.assertThrows(new ThrowingRunnable() { @Override public void run() throws Throwable { (new HadoopKerberosKeytabAuthenticationPlugin.ConfigBasedFactory()).createPlugin(instance1); } }); final Config testConfig2 = ConfigFactory.parseMap(ImmutableMap.<String, Object>builder() .put("hadoop-inject.hadoop.security.authentication", "simple") .put("gobblin.instance.hadoop.loginUser", "foo") .put("hadoop.loginUserKeytabFile", "/tmp/bar") .build()); final GobblinInstanceDriver instance2 = Mockito.mock(GobblinInstanceDriver.class); Mockito.when(instance1.getSysConfig()).thenReturn(DefaultConfigurableImpl.createFromConfig(testConfig2)); Assert.assertThrows(new ThrowingRunnable() { @Override public void run() throws Throwable { (new HadoopKerberosKeytabAuthenticationPlugin.ConfigBasedFactory()).createPlugin(instance2); } }); }
@Override public JobSpecMonitor forJobCatalog(GobblinInstanceDriver instanceDriver, MutableJobCatalog jobCatalog) throws IOException { Config config = instanceDriver.getSysConfig().getConfig().getConfig(CONFIG_PREFIX).withFallback(DEFAULTS); return forConfig(config, jobCatalog); }
@Override public JobSpecMonitor forJobCatalog(GobblinInstanceDriver instanceDriver, MutableJobCatalog jobCatalog) throws IOException { Config config = instanceDriver.getSysConfig().getConfig().getConfig(CONFIG_PREFIX).withFallback(DEFAULTS); return forConfig(config, jobCatalog); }
@Override public GobblinInstancePlugin createPlugin(GobblinInstanceDriver instance) { return new HadoopKerberosKeytabAuthenticationPlugin(instance.getSysConfig().getConfig(), _loginUser, _loginUserKeytabFile); } }
@Override public GobblinInstancePlugin createPlugin(GobblinInstanceDriver instance) { return createPlugin(instance.getSysConfig().getConfig()); }
@Override protected void startUp() throws Exception { this.metrics.startMetricReporting(getInstance().getSysConfig().getConfigAsProperties()); }