Skip to content

Commit

Permalink
updates to configuration
Browse files Browse the repository at this point in the history
  • Loading branch information
ssalinas committed Mar 14, 2017
1 parent dd53e24 commit c0c16da
Show file tree
Hide file tree
Showing 8 changed files with 45 additions and 24 deletions.
Expand Up @@ -42,7 +42,7 @@ public class SingularityAbort implements ConnectionStateListener {


@Inject @Inject
public SingularityAbort(SingularitySmtpSender smtpSender, ServerProvider serverProvider, SingularityConfiguration configuration, SingularityExceptionNotifier exceptionNotifier, @Named(SingularityMainModule.HTTP_HOST_AND_PORT) HostAndPort hostAndPort) { public SingularityAbort(SingularitySmtpSender smtpSender, ServerProvider serverProvider, SingularityConfiguration configuration, SingularityExceptionNotifier exceptionNotifier, @Named(SingularityMainModule.HTTP_HOST_AND_PORT) HostAndPort hostAndPort) {
this.maybeSmtpConfiguration = configuration.getSmtpConfiguration(); this.maybeSmtpConfiguration = configuration.getSmtpConfigurationOptional();
this.serverProvider = serverProvider; this.serverProvider = serverProvider;
this.smtpSender = smtpSender; this.smtpSender = smtpSender;
this.exceptionNotifier = exceptionNotifier; this.exceptionNotifier = exceptionNotifier;
Expand Down
Expand Up @@ -132,7 +132,7 @@ public void configure(Binder binder) {


binder.bind(SingularityDriverManager.class).in(Scopes.SINGLETON); binder.bind(SingularityDriverManager.class).in(Scopes.SINGLETON);
binder.bind(SingularityLeaderController.class).in(Scopes.SINGLETON); binder.bind(SingularityLeaderController.class).in(Scopes.SINGLETON);
if (configuration.getSmtpConfiguration().isPresent()) { if (configuration.getSmtpConfigurationOptional().isPresent()) {
binder.bind(SingularityMailer.class).to(SmtpMailer.class).in(Scopes.SINGLETON); binder.bind(SingularityMailer.class).to(SmtpMailer.class).in(Scopes.SINGLETON);
} else { } else {
binder.bind(SingularityMailer.class).toInstance(NoopMailer.getInstance()); binder.bind(SingularityMailer.class).toInstance(NoopMailer.getInstance());
Expand Down Expand Up @@ -242,7 +242,7 @@ public ZooKeeperConfiguration zooKeeperConfiguration(final SingularityConfigurat
@Provides @Provides
@Singleton @Singleton
public Optional<SentryConfiguration> sentryConfiguration(final SingularityConfiguration config) { public Optional<SentryConfiguration> sentryConfiguration(final SingularityConfiguration config) {
return config.getSentryConfiguration(); return config.getSentryConfigurationOptional();
} }


@Provides @Provides
Expand Down Expand Up @@ -291,13 +291,13 @@ public CustomExecutorConfiguration customExecutorConfiguration(final Singularity
@Provides @Provides
@Singleton @Singleton
public Optional<SMTPConfiguration> smtpConfiguration(final SingularityConfiguration config) { public Optional<SMTPConfiguration> smtpConfiguration(final SingularityConfiguration config) {
return config.getSmtpConfiguration(); return config.getSmtpConfigurationOptional();
} }


@Provides @Provides
@Singleton @Singleton
public Optional<S3Configuration> s3Configuration(final SingularityConfiguration config) { public Optional<S3Configuration> s3Configuration(final SingularityConfiguration config) {
return config.getS3Configuration(); return config.getS3ConfigurationOptional();
} }


@Provides @Provides
Expand Down
Expand Up @@ -81,10 +81,10 @@ private static LdapConnectionPool createConnectionPool(LDAPConfiguration configu
@Inject @Inject
public SingularityLDAPDatastore(SingularityConfiguration configuration, public SingularityLDAPDatastore(SingularityConfiguration configuration,
SingularityExceptionNotifier exceptionNotifier) throws IOException { SingularityExceptionNotifier exceptionNotifier) throws IOException {
checkArgument(configuration.getLdapConfiguration().isPresent(), "LDAP configuration not present"); checkArgument(configuration.getLdapConfigurationOptional().isPresent(), "LDAP configuration not present");


this.connectionPool = createConnectionPool(configuration.getLdapConfiguration().get()); this.connectionPool = createConnectionPool(configuration.getLdapConfigurationOptional().get());
this.configuration = configuration.getLdapConfiguration().get(); this.configuration = configuration.getLdapConfigurationOptional().get();
this.exceptionNotifier = exceptionNotifier; this.exceptionNotifier = exceptionNotifier;


if (configuration.isLdapCacheEnabled()) { if (configuration.isLdapCacheEnabled()) {
Expand Down
Expand Up @@ -10,6 +10,7 @@
import javax.validation.constraints.Min; import javax.validation.constraints.Min;
import javax.validation.constraints.NotNull; import javax.validation.constraints.NotNull;


import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.annotation.JsonProperty; import com.fasterxml.jackson.annotation.JsonProperty;
import com.google.common.base.Optional; import com.google.common.base.Optional;
Expand Down Expand Up @@ -630,7 +631,8 @@ public long getPersistHistoryEverySeconds() {
return persistHistoryEverySeconds; return persistHistoryEverySeconds;
} }


public Optional<S3Configuration> getS3Configuration() { @JsonIgnore
public Optional<S3Configuration> getS3ConfigurationOptional() {
return Optional.fromNullable(s3Configuration); return Optional.fromNullable(s3Configuration);
} }


Expand All @@ -642,14 +644,28 @@ public long getSaveStateEverySeconds() {
return saveStateEverySeconds; return saveStateEverySeconds;
} }


public Optional<SentryConfiguration> getSentryConfiguration(){ @JsonIgnore
public Optional<SentryConfiguration> getSentryConfigurationOptional(){
return Optional.fromNullable(sentryConfiguration); return Optional.fromNullable(sentryConfiguration);
} }


public Optional<SMTPConfiguration> getSmtpConfiguration() { @JsonIgnore
public Optional<SMTPConfiguration> getSmtpConfigurationOptional() {
return Optional.fromNullable(smtpConfiguration); return Optional.fromNullable(smtpConfiguration);
} }


public S3Configuration getS3Configuration() {
return s3Configuration;
}

public SentryConfiguration getSentryConfiguration() {
return sentryConfiguration;
}

public SMTPConfiguration getSmtpConfiguration() {
return smtpConfiguration;
}

public long getStartNewReconcileEverySeconds() { public long getStartNewReconcileEverySeconds() {
return startNewReconcileEverySeconds; return startNewReconcileEverySeconds;
} }
Expand Down Expand Up @@ -1084,7 +1100,12 @@ public void setTaskPersistAfterStartupBufferMillis(long taskPersistAfterStartupB
this.taskPersistAfterStartupBufferMillis = taskPersistAfterStartupBufferMillis; this.taskPersistAfterStartupBufferMillis = taskPersistAfterStartupBufferMillis;
} }


public Optional<LDAPConfiguration> getLdapConfiguration() { public LDAPConfiguration getLdapConfiguration() {
return ldapConfiguration;
}

@JsonIgnore
public Optional<LDAPConfiguration> getLdapConfigurationOptional() {
return Optional.fromNullable(ldapConfiguration); return Optional.fromNullable(ldapConfiguration);
} }


Expand Down
Expand Up @@ -361,14 +361,14 @@ private void prepareCustomExecutor(final TaskInfo.Builder bldr, final Singularit


String defaultS3Bucket = ""; String defaultS3Bucket = "";
String s3UploaderKeyPattern = ""; String s3UploaderKeyPattern = "";
if (configuration.getS3Configuration().isPresent()) { if (configuration.getS3ConfigurationOptional().isPresent()) {
if (task.getRequest().getGroup().isPresent() && configuration.getS3Configuration().get().getGroupOverrides().containsKey(task.getRequest().getGroup().get())) { if (task.getRequest().getGroup().isPresent() && configuration.getS3ConfigurationOptional().get().getGroupOverrides().containsKey(task.getRequest().getGroup().get())) {
defaultS3Bucket = configuration.getS3Configuration().get().getGroupOverrides().get(task.getRequest().getGroup().get()).getS3Bucket(); defaultS3Bucket = configuration.getS3ConfigurationOptional().get().getGroupOverrides().get(task.getRequest().getGroup().get()).getS3Bucket();
LOG.trace("Setting defaultS3Bucket to {} for task {} executorData", defaultS3Bucket, taskId.getId()); LOG.trace("Setting defaultS3Bucket to {} for task {} executorData", defaultS3Bucket, taskId.getId());
} else { } else {
defaultS3Bucket = configuration.getS3Configuration().get().getS3Bucket(); defaultS3Bucket = configuration.getS3ConfigurationOptional().get().getS3Bucket();
} }
s3UploaderKeyPattern = configuration.getS3Configuration().get().getS3KeyFormat(); s3UploaderKeyPattern = configuration.getS3ConfigurationOptional().get().getS3KeyFormat();
} }


if (task.getPendingTask().getCmdLineArgsList().isPresent() && !task.getPendingTask().getCmdLineArgsList().get().isEmpty()) { if (task.getPendingTask().getCmdLineArgsList().isPresent() && !task.getPendingTask().getCmdLineArgsList().get().isEmpty()) {
Expand All @@ -382,9 +382,9 @@ private void prepareCustomExecutor(final TaskInfo.Builder bldr, final Singularit
executorDataBldr.setExtraCmdLineArgs(extraCmdLineArgsBuilder.build()); executorDataBldr.setExtraCmdLineArgs(extraCmdLineArgsBuilder.build());
} }


List<SingularityS3UploaderFile> uploaderAdditionalFiles = configuration.getS3Configuration().isPresent() ? configuration.getS3Configuration().get().getS3UploaderAdditionalFiles() : Collections.<SingularityS3UploaderFile>emptyList(); List<SingularityS3UploaderFile> uploaderAdditionalFiles = configuration.getS3ConfigurationOptional().isPresent() ? configuration.getS3ConfigurationOptional().get().getS3UploaderAdditionalFiles() : Collections.<SingularityS3UploaderFile>emptyList();
Optional<String> maybeS3StorageClass = configuration.getS3Configuration().isPresent() ? configuration.getS3Configuration().get().getS3StorageClass() : Optional.<String>absent(); Optional<String> maybeS3StorageClass = configuration.getS3ConfigurationOptional().isPresent() ? configuration.getS3ConfigurationOptional().get().getS3StorageClass() : Optional.<String>absent();
Optional<Long> maybeApplyAfterBytes = configuration.getS3Configuration().isPresent() ? configuration.getS3Configuration().get().getApplyS3StorageClassAfterBytes() : Optional.<Long>absent(); Optional<Long> maybeApplyAfterBytes = configuration.getS3ConfigurationOptional().isPresent() ? configuration.getS3ConfigurationOptional().get().getApplyS3StorageClassAfterBytes() : Optional.<Long>absent();


final SingularityTaskExecutorData executorData = new SingularityTaskExecutorData(executorDataBldr.build(), uploaderAdditionalFiles, defaultS3Bucket, s3UploaderKeyPattern, final SingularityTaskExecutorData executorData = new SingularityTaskExecutorData(executorDataBldr.build(), uploaderAdditionalFiles, defaultS3Bucket, s3UploaderKeyPattern,
configuration.getCustomExecutorConfiguration().getServiceLog(), configuration.getCustomExecutorConfiguration().getServiceFinishedTailLog(), task.getRequest().getGroup(), configuration.getCustomExecutorConfiguration().getServiceLog(), configuration.getCustomExecutorConfiguration().getServiceFinishedTailLog(), task.getRequest().getGroup(),
Expand Down
Expand Up @@ -50,7 +50,7 @@ public class SingularityMailPoller extends SingularityLeaderOnlyPoller {


@Override @Override
protected boolean isEnabled() { protected boolean isEnabled() {
return configuration.getSmtpConfiguration().isPresent(); return configuration.getSmtpConfigurationOptional().isPresent();
} }


private enum ShouldSendMailState { private enum ShouldSendMailState {
Expand Down
Expand Up @@ -53,7 +53,7 @@ public class MailTemplateHelpers {
public MailTemplateHelpers(SandboxManager sandboxManager, SingularityConfiguration singularityConfiguration) { public MailTemplateHelpers(SandboxManager sandboxManager, SingularityConfiguration singularityConfiguration) {
this.uiBaseUrl = singularityConfiguration.getUiConfiguration().getBaseUrl(); this.uiBaseUrl = singularityConfiguration.getUiConfiguration().getBaseUrl();
this.sandboxManager = sandboxManager; this.sandboxManager = sandboxManager;
this.smtpConfiguration = singularityConfiguration.getSmtpConfiguration(); this.smtpConfiguration = singularityConfiguration.getSmtpConfigurationOptional();
if (this.smtpConfiguration.isPresent()) { if (this.smtpConfiguration.isPresent()) {
this.taskDatePattern = Optional.of(this.smtpConfiguration.get().getMailerDatePattern()); this.taskDatePattern = Optional.of(this.smtpConfiguration.get().getMailerDatePattern());
this.timeZone = Optional.of(this.smtpConfiguration.get().getMailerTimeZone()); this.timeZone = Optional.of(this.smtpConfiguration.get().getMailerTimeZone());
Expand Down
Expand Up @@ -93,7 +93,7 @@ public SmtpMailer(
@Named(SingularityMainModule.DISASTERS_TEMPLATE) JadeTemplate disastersTemplate) { @Named(SingularityMainModule.DISASTERS_TEMPLATE) JadeTemplate disastersTemplate) {


this.smtpSender = smtpSender; this.smtpSender = smtpSender;
this.smtpConfiguration = configuration.getSmtpConfiguration().get(); this.smtpConfiguration = configuration.getSmtpConfigurationOptional().get();
this.configuration = configuration; this.configuration = configuration;
this.taskManager = taskManager; this.taskManager = taskManager;
this.metadataManager = metadataManager; this.metadataManager = metadataManager;
Expand Down Expand Up @@ -531,7 +531,7 @@ public void run() {
} }


private void prepareDisasterMail(final SingularityDisastersData disastersData) { private void prepareDisasterMail(final SingularityDisastersData disastersData) {
final List<SingularityEmailDestination> emailDestination = configuration.getSmtpConfiguration().get().getEmailConfiguration().get(SingularityEmailType.DISASTER_DETECTED); final List<SingularityEmailDestination> emailDestination = configuration.getSmtpConfigurationOptional().get().getEmailConfiguration().get(SingularityEmailType.DISASTER_DETECTED);
if (emailDestination.isEmpty() || !emailDestination.contains(SingularityEmailDestination.ADMINS) || smtpConfiguration.getAdmins().isEmpty()) { if (emailDestination.isEmpty() || !emailDestination.contains(SingularityEmailDestination.ADMINS) || smtpConfiguration.getAdmins().isEmpty()) {
LOG.info("Not configured to send disaster detected mail"); LOG.info("Not configured to send disaster detected mail");
return; return;
Expand Down

0 comments on commit c0c16da

Please sign in to comment.