Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions cmd/e2e/configs/basic.go
Original file line number Diff line number Diff line change
Expand Up @@ -87,6 +87,8 @@ func Basic(t *testing.T, opts BasicOpts) config.Config {
c.LogBatchThresholdSeconds = 0 // Immediate flush (1ms) for faster tests
c.LogBatchSize = 100
c.DeploymentID = opts.DeploymentID
c.Alert.AutoDisableDestination = true
c.Alert.ConsecutiveFailureCount = 20

// Use signature templates with timestamps for mock server compatibility
c.Destinations.Webhook.SignatureContentTemplate = "{{.Timestamp.Unix}}.{{.Body}}"
Expand Down
8 changes: 2 additions & 6 deletions docs/pages/references/configuration.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,7 @@ Global configurations are provided through env variables or a YAML file. ConfigM
| `GCP_PUBSUB_PROJECT` | GCP Project ID for Pub/Sub. Required if GCP Pub/Sub is the chosen MQ provider. | `nil` | Conditional |
| `GCP_PUBSUB_SERVICE_ACCOUNT_CREDENTIALS` | JSON string or path to a file containing GCP service account credentials for Pub/Sub. Required if GCP Pub/Sub is the chosen MQ provider and not running in an environment with implicit credentials (e.g., GCE, GKE). | `nil` | Conditional |
| `GIN_MODE` | Sets the Gin framework mode (e.g., 'debug', 'release', 'test'). See Gin documentation for details. | `release` | No |
| `HTTP_USER_AGENT` | Custom HTTP User-Agent string for outgoing webhook deliveries. If unset, a default (OrganizationName/Version) is used. | `nil` | No |
| `HTTP_USER_AGENT` | Custom HTTP User-Agent string for outgoing webhook deliveries. If unset, defaults to `Outpost/{version}`. | `nil` | No |
| `IDGEN_ATTEMPT_PREFIX` | Prefix for attempt IDs, prepended with underscore (e.g., 'atm_123'). Default: empty (no prefix) | `nil` | No |
| `IDGEN_DESTINATION_PREFIX` | Prefix for destination IDs, prepended with underscore (e.g., 'dst_123'). Default: empty (no prefix) | `nil` | No |
| `IDGEN_EVENT_PREFIX` | Prefix for event IDs, prepended with underscore (e.g., 'evt_123'). Default: empty (no prefix) | `nil` | No |
Expand All @@ -86,7 +86,6 @@ Global configurations are provided through env variables or a YAML file. ConfigM
| `MAX_DESTINATIONS_PER_TENANT` | Maximum number of destinations allowed per tenant/organization. | `20` | No |
| `MAX_RETRY_LIMIT` | Maximum number of retry attempts for a single event delivery before giving up. Ignored if retry_schedule is provided. | `10` | No |
| `MQS_AUTO_PROVISION` | Whether Outpost should create and manage message queue infrastructure. Set to false if you manage infrastructure externally (e.g., via Terraform). Defaults to true for backward compatibility. | `nil` | No |
| `ORGANIZATION_NAME` | Name of the organization, used for display purposes and potentially in user agent strings. | `nil` | No |
| `OTEL_EXPORTER` | Specifies the OTLP exporter to use for this telemetry type (e.g., 'otlp'). Typically used with environment variables like OTEL_EXPORTER_OTLP_TRACES_ENDPOINT. | `nil` | Conditional |
| `OTEL_PROTOCOL` | Specifies the OTLP protocol ('grpc' or 'http') for this telemetry type. Typically used with environment variables like OTEL_EXPORTER_OTLP_TRACES_PROTOCOL. | `nil` | Conditional |
| `OTEL_SERVICE_NAME` | The service name reported to OpenTelemetry. If set, OpenTelemetry will be enabled. | `nil` | No |
Expand Down Expand Up @@ -271,7 +270,7 @@ disable_telemetry: false
# Sets the Gin framework mode (e.g., 'debug', 'release', 'test'). See Gin documentation for details.
gin_mode: "release"

# Custom HTTP User-Agent string for outgoing webhook deliveries. If unset, a default (OrganizationName/Version) is used.
# Custom HTTP User-Agent string for outgoing webhook deliveries. If unset, defaults to 'Outpost/{version}'.
http_user_agent: ""

idgen:
Expand Down Expand Up @@ -451,9 +450,6 @@ otel:



# Name of the organization, used for display purposes and potentially in user agent strings.
organization_name: ""

portal:
# Primary brand color (hex code) for theming the Outpost Portal (e.g., '#6122E7'). Also referred to as Accent Color in some contexts.
brand_color: ""
Expand Down
3 changes: 1 addition & 2 deletions internal/config/config.go
Original file line number Diff line number Diff line change
Expand Up @@ -59,8 +59,7 @@ type Config struct {
DeploymentID string `yaml:"deployment_id" env:"DEPLOYMENT_ID" desc:"Optional deployment identifier for multi-tenancy. Enables multiple deployments to share the same infrastructure while maintaining data isolation." required:"N"`
AESEncryptionSecret string `yaml:"aes_encryption_secret" env:"AES_ENCRYPTION_SECRET" desc:"A 16, 24, or 32 byte secret key used for AES encryption of sensitive data at rest." required:"Y"`
Topics []string `yaml:"topics" env:"TOPICS" envSeparator:"," desc:"Comma-separated list of topics that this Outpost instance should subscribe to for event processing." required:"N"`
OrganizationName string `yaml:"organization_name" env:"ORGANIZATION_NAME" desc:"Name of the organization, used for display purposes and potentially in user agent strings." required:"N"`
HTTPUserAgent string `yaml:"http_user_agent" env:"HTTP_USER_AGENT" desc:"Custom HTTP User-Agent string for outgoing webhook deliveries. If unset, a default (OrganizationName/Version) is used." required:"N"`
HTTPUserAgent string `yaml:"http_user_agent" env:"HTTP_USER_AGENT" desc:"Custom HTTP User-Agent string for outgoing webhook deliveries. If unset, defaults to 'Outpost/{version}'." required:"N"`

// Infrastructure
Redis RedisConfig `yaml:"redis"`
Expand Down
6 changes: 1 addition & 5 deletions internal/config/destinations.go
Original file line number Diff line number Diff line change
Expand Up @@ -18,11 +18,7 @@ type DestinationsConfig struct {
func (c *DestinationsConfig) ToConfig(cfg *Config) destregistrydefault.RegisterDefaultDestinationOptions {
userAgent := cfg.HTTPUserAgent
if userAgent == "" {
if cfg.OrganizationName == "" {
userAgent = fmt.Sprintf("Outpost/%s", version.Version())
} else {
userAgent = fmt.Sprintf("%s/%s", cfg.OrganizationName, version.Version())
}
userAgent = fmt.Sprintf("Outpost/%s", version.Version())
}

return destregistrydefault.RegisterDefaultDestinationOptions{
Expand Down
1 change: 0 additions & 1 deletion internal/config/logging.go
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,6 @@ func (c *Config) LogConfigurationSummary() []zap.Field {
zap.Bool("audit_log", c.AuditLog),
zap.String("deployment_id", c.DeploymentID),
zap.Strings("topics", c.Topics),
zap.String("organization_name", c.OrganizationName),
zap.String("http_user_agent", c.HTTPUserAgent),

// API
Expand Down
Loading