98 lines
		
	
	
		
			3.4 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			98 lines
		
	
	
		
			3.4 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| # Feedser configuration template for StellaOps deployments.
 | |
| # Copy to ../etc/feedser.yaml (relative to the web service content root)
 | |
| # and adjust the values to match your environment. Environment variables
 | |
| # (prefixed with FEEDSER_) override these settings at runtime.
 | |
| 
 | |
| storage:
 | |
|   driver: mongo
 | |
|   # Mongo connection string. Use SRV URI or standard connection string.
 | |
|   dsn: "mongodb://feedser:feedser@mongo:27017/feedser?authSource=admin"
 | |
|   # Optional database name; defaults to the name embedded in the DSN or 'feedser'.
 | |
|   database: "feedser"
 | |
|   # Mongo command timeout in seconds.
 | |
|   commandTimeoutSeconds: 30
 | |
| 
 | |
| plugins:
 | |
|   # Feedser resolves plug-ins relative to the content root; override as needed.
 | |
|   baseDirectory: ".."
 | |
|   directory: "PluginBinaries"
 | |
|   searchPatterns:
 | |
|     - "StellaOps.Feedser.Plugin.*.dll"
 | |
| 
 | |
| telemetry:
 | |
|   enabled: true
 | |
|   enableTracing: false
 | |
|   enableMetrics: false
 | |
|   enableLogging: true
 | |
|   minimumLogLevel: "Information"
 | |
|   serviceName: "stellaops-feedser"
 | |
|   # Configure OTLP endpoint when shipping traces/metrics/logs out-of-band.
 | |
|   otlpEndpoint: ""
 | |
|   # Optional headers for OTLP exporters, for example authentication tokens.
 | |
|   otlpHeaders: {}
 | |
|   # Attach additional resource attributes to telemetry exports.
 | |
|   resourceAttributes:
 | |
|     deployment.environment: "local"
 | |
|   # Emit console exporters for local debugging.
 | |
|   exportConsole: true
 | |
| 
 | |
| authority:
 | |
|   enabled: false
 | |
|   # Temporary rollout flag. When true, Feedser logs anonymous access but does not fail requests
 | |
|   # without tokens. Set to false before 2025-12-31 UTC to enforce authentication fully.
 | |
|   allowAnonymousFallback: true
 | |
|   # Issuer advertised by StellaOps Authority (e.g. https://authority.stella-ops.local).
 | |
|   issuer: "https://authority.stella-ops.local"
 | |
|   # Optional explicit metadata address; defaults to {issuer}/.well-known/openid-configuration.
 | |
|   metadataAddress: ""
 | |
|   requireHttpsMetadata: true
 | |
|   backchannelTimeoutSeconds: 30
 | |
|   tokenClockSkewSeconds: 60
 | |
|   audiences:
 | |
|     - "api://feedser"
 | |
|   requiredScopes:
 | |
|     - "feedser.jobs.trigger"
 | |
|   # Outbound credentials Feedser can use to call Authority (client credentials flow).
 | |
|   clientId: "feedser-jobs"
 | |
|   # Prefer storing the secret outside of the config file. Provide either clientSecret or clientSecretFile.
 | |
|   clientSecret: ""
 | |
|   clientSecretFile: ""
 | |
|   clientScopes:
 | |
|     - "feedser.jobs.trigger"
 | |
|   resilience:
 | |
|     # Enable deterministic retry/backoff when Authority is briefly unavailable.
 | |
|     enableRetries: true
 | |
|     retryDelays:
 | |
|       - "00:00:01"
 | |
|       - "00:00:02"
 | |
|       - "00:00:05"
 | |
|     # Allow stale discovery/JWKS responses when Authority is offline (extend tolerance as needed for air-gapped mirrors).
 | |
|     allowOfflineCacheFallback: true
 | |
|     offlineCacheTolerance: "00:10:00"
 | |
|   # Networks allowed to bypass authentication (loopback by default for on-host cron jobs).
 | |
|   bypassNetworks:
 | |
|     - "127.0.0.1/32"
 | |
|     - "::1/128"
 | |
| 
 | |
| sources:
 | |
|   ghsa:
 | |
|     apiToken: "${GITHUB_PAT}"
 | |
|     pageSize: 50
 | |
|     maxPagesPerFetch: 5
 | |
|     requestDelay: "00:00:00.200"
 | |
|     failureBackoff: "00:05:00"
 | |
|     rateLimitWarningThreshold: 500
 | |
|     secondaryRateLimitBackoff: "00:02:00"
 | |
|   cve:
 | |
|     baseEndpoint: "https://cveawg.mitre.org/api/"
 | |
|     apiOrg: ""
 | |
|     apiUser: ""
 | |
|     apiKey: ""
 | |
|     # Optional mirror used when credentials are unavailable.
 | |
|     seedDirectory: "./seed-data/cve"
 | |
|     pageSize: 200
 | |
|     maxPagesPerFetch: 5
 | |
|     initialBackfill: "30.00:00:00"
 | |
|     requestDelay: "00:00:00.250"
 | |
|     failureBackoff: "00:10:00"
 |