Package generate contains HTTP handler for triggering data generation into the databae.



    This section is empty.


    This section is empty.


    This section is empty.


    type Config

    type Config struct {
    	Database              database.Config
    	SecretManager         secrets.Config
    	ObservabilityExporter observability.Config
    	Port                         string        `env:"PORT, default=8080"`
    	NumExposures                 int           `env:"NUM_EXPOSURES_GENERATED, default=10"`
    	KeysPerExposure              int           `env:"KEYS_PER_EXPOSURE, default=14"`
    	MaxKeysOnPublish             uint          `env:"MAX_KEYS_ON_PUBLISH, default=15"`
    	MaxSameStartIntervalKeys     uint          `env:"MAX_SAME_START_INTERVAL_KEYS, default=2"`
    	SimulateSameDayRelease       bool          `env:"SIMULATE_SAME_DAY_RELEASE, default=false"`
    	MaxIntervalAge               time.Duration `env:"MAX_INTERVAL_AGE_ON_PUBLISH, default=360h"`
    	MaxMagnitudeSymptomOnsetDays uint          `env:"MAX_SYMPTOM_ONSET_DAYS, default=14"`
    	MaxSymptomOnsetReportDays    uint          `env:"MAX_VALID_SYMPTOM_ONSET_REPORT_DAYS, default=28"`
    	CreatedAtTruncateWindow      time.Duration `env:"TRUNCATE_WINDOW, default=1h"`
    	DefaultRegion                string        `env:"DEFAULT_REGION, default=US"`
    	ChanceOfKeyRevision          int           `env:"CHANCE_OF_KEY_REVISION, default=30"` // 0-100 are valid values.
    	ChanceOfTraveler             int           `env:"CHANCE_OF_TRAVELER, default=20"`     // 0-100 are valid values
    	KeyRevisionDelay             time.Duration `env:"KEY_REVISION_DELAY, default=2h"`     // key revision will be forward dates this amount.
    	SymptomOnsetDaysAgo          uint          `env:"DEFAULT_SYMPTOM_ONSET_DAYS_AGO, default=4"`

      Config represents the configuration and associated environment variables for the publish components.

      func (*Config) DatabaseConfig

      func (c *Config) DatabaseConfig() *database.Config

      func (*Config) DebugReleaseSameDayKeys

      func (c *Config) DebugReleaseSameDayKeys() bool

      func (*Config) DefaultSymptomOnsetDaysAgo

      func (c *Config) DefaultSymptomOnsetDaysAgo() uint

      func (*Config) MaxExposureKeys

      func (c *Config) MaxExposureKeys() uint

      func (*Config) MaxIntervalStartAge

      func (c *Config) MaxIntervalStartAge() time.Duration

      func (*Config) MaxSameDayKeys

      func (c *Config) MaxSameDayKeys() uint

      func (*Config) MaxSymptomOnsetDays

      func (c *Config) MaxSymptomOnsetDays() uint

      func (*Config) MaxValidSymptomOnsetReportDays

      func (c *Config) MaxValidSymptomOnsetReportDays() uint

      func (*Config) ObservabilityExporterConfig

      func (c *Config) ObservabilityExporterConfig() *observability.Config

      func (*Config) SecretManagerConfig

      func (c *Config) SecretManagerConfig() *secrets.Config

      func (*Config) TruncateWindow

      func (c *Config) TruncateWindow() time.Duration

      type Server

      type Server struct {
      	// contains filtered or unexported fields

      func NewServer

      func NewServer(cfg *Config, env *serverenv.ServerEnv) (*Server, error)

      func (*Server) Routes

      func (s *Server) Routes(ctx context.Context) *mux.Router

        Routes returns the router for this server.