All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.hubspot.singularity.runner.base.configuration.SingularityRunnerBaseConfiguration Maven / Gradle / Ivy

There is a newer version: 1.5.0
Show newest version
package com.hubspot.singularity.runner.base.configuration;

import javax.validation.constraints.NotNull;

import org.hibernate.validator.constraints.NotEmpty;

import com.fasterxml.jackson.annotation.JsonProperty;
import com.google.common.base.Optional;
import com.hubspot.singularity.runner.base.constraints.DirectoryExists;

@Configuration(filename = "/etc/singularity.base.yaml", consolidatedField = "base")
public class SingularityRunnerBaseConfiguration extends BaseRunnerConfiguration {
  @DirectoryExists
  @JsonProperty
  private String s3UploaderMetadataDirectory;

  @NotEmpty
  @JsonProperty
  private String s3UploaderMetadataSuffix = ".s3.json";

  @DirectoryExists
  @JsonProperty
  private String logWatcherMetadataDirectory;

  @NotEmpty
  @JsonProperty
  private String logWatcherMetadataSuffix = ".tail.json";

  @NotNull
  @JsonProperty
  private Optional sentryDsn = Optional.absent();

  @NotNull
  @JsonProperty
  private String sentryPrefix = "";

  @NotNull
  @JsonProperty
  private Optional useCompressProgram = Optional.absent();

  public SingularityRunnerBaseConfiguration() {
    super(Optional.absent());
    this.setLoggingDirectory(Optional.of("/var/log/singularity/"));
  }

  public String getS3UploaderMetadataDirectory() {
    return s3UploaderMetadataDirectory;
  }

  public void setS3UploaderMetadataDirectory(String s3UploaderMetadataDirectory) {
    this.s3UploaderMetadataDirectory = s3UploaderMetadataDirectory;
  }

  public String getS3UploaderMetadataSuffix() {
    return s3UploaderMetadataSuffix;
  }

  public void setS3UploaderMetadataSuffix(String s3UploaderMetadataSuffix) {
    this.s3UploaderMetadataSuffix = s3UploaderMetadataSuffix;
  }

  public String getLogWatcherMetadataDirectory() {
    return logWatcherMetadataDirectory;
  }

  public void setLogWatcherMetadataDirectory(String logWatcherMetadataDirectory) {
    this.logWatcherMetadataDirectory = logWatcherMetadataDirectory;
  }

  public String getLogWatcherMetadataSuffix() {
    return logWatcherMetadataSuffix;
  }

  public void setLogWatcherMetadataSuffix(String logWatcherMetadataSuffix) {
    this.logWatcherMetadataSuffix = logWatcherMetadataSuffix;
  }

  public Optional getSentryDsn() {
    return sentryDsn;
  }

  public void setSentryDsn(Optional sentryDsn) {
    this.sentryDsn = sentryDsn;
  }

  public String getSentryPrefix() {
    return sentryPrefix;
  }

  public void setSentryPrefix(String sentryPrefix) {
    this.sentryPrefix = sentryPrefix;
  }

  public Optional getUseCompressProgram() {
    return useCompressProgram;
  }

  public void setUseCompressProgram(Optional useCompressProgram) {
    this.useCompressProgram = useCompressProgram;
  }

  @Override
  public String toString() {
    return "SingularityRunnerBaseConfiguration[" +
            "s3UploaderMetadataDirectory='" + s3UploaderMetadataDirectory + '\'' +
            ", s3UploaderMetadataSuffix='" + s3UploaderMetadataSuffix + '\'' +
            ", logWatcherMetadataDirectory='" + logWatcherMetadataDirectory + '\'' +
            ", logWatcherMetadataSuffix='" + logWatcherMetadataSuffix + '\'' +
            ", useCompressProgram=" + useCompressProgram +
            ']';
  }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy