use of com.hubspot.singularity.runner.base.config.SingularityRunnerBaseModule in project Singularity by HubSpot.
the class SingularityExecutorCleanupRunner method main.
public static void main(String... args) {
final long start = System.currentTimeMillis();
try {
final Injector injector = Guice.createInjector(Stage.PRODUCTION, new SingularityRunnerBaseModule(SingularityExecutorCleanupConfiguration.class, ImmutableSet.of(SingularityS3Configuration.class, SingularityExecutorConfiguration.class)), new SingularityExecutorModule(), new SingularityExecutorCleanupModule(), new SingularityClientModule(), new SingularityMesosClientModule());
final SingularityExecutorCleanupRunner runner = injector.getInstance(SingularityExecutorCleanupRunner.class);
LOG.info("Starting cleanup");
final SingularityExecutorCleanupStatistics statistics = runner.cleanup();
LOG.info("Finished with {} after {}", statistics, JavaUtils.duration(start));
System.exit(0);
} catch (Throwable t) {
LOG.error("Finished after {} with error", JavaUtils.duration(start), t);
System.exit(1);
}
}
use of com.hubspot.singularity.runner.base.config.SingularityRunnerBaseModule in project Singularity by HubSpot.
the class SingularityExecutorRunner method main.
public static void main(String... args) {
final long start = System.currentTimeMillis();
try {
final Injector injector = Guice.createInjector(Stage.PRODUCTION, new SingularityRunnerBaseModule(SingularityExecutorConfiguration.class, ImmutableSet.<Class<? extends BaseRunnerConfiguration>>of(SingularityS3Configuration.class)), new SingularityExecutorModule());
final SingularityExecutorRunner executorRunner = injector.getInstance(SingularityExecutorRunner.class);
final Protos.Status driverStatus = executorRunner.run();
LOG.info("Executor finished after {} with status: {}", JavaUtils.duration(start), driverStatus);
stopLog();
System.exit(driverStatus == Protos.Status.DRIVER_STOPPED ? 0 : 1);
} catch (Throwable t) {
LOG.error("Finished after {} with error", JavaUtils.duration(start), t);
stopLog();
System.exit(1);
}
}
use of com.hubspot.singularity.runner.base.config.SingularityRunnerBaseModule in project Singularity by HubSpot.
the class SingularityExecutorConfigurationTest method loadConfig.
private SingularityExecutorConfiguration loadConfig(String file) {
try {
ObjectMapper mapper = new SingularityRunnerBaseModule(null).providesYamlMapper();
Validator validator = mock(Validator.class);
Field mapperField = SingularityRunnerConfigurationProvider.class.getDeclaredField("objectMapper");
mapperField.setAccessible(true);
Field validatorField = SingularityRunnerConfigurationProvider.class.getDeclaredField("validator");
validatorField.setAccessible(true);
SingularityRunnerConfigurationProvider<SingularityExecutorConfiguration> configProvider = new SingularityRunnerConfigurationProvider<>(SingularityExecutorConfiguration.class, Optional.of(new File(getClass().getClassLoader().getResource(file).toURI()).getAbsolutePath()));
mapperField.set(configProvider, mapper);
validatorField.set(configProvider, validator);
return configProvider.get();
} catch (Exception e) {
throw Throwables.propagate(e);
}
}
Aggregations