Observation
The EC2 Image Builder component's baked signals.service unit
(deploy/aws/imagebuilder/signals-collector-component.yaml) passes only
-e SIGNALS_API_TOKEN to the container. Other SIGNALS_* environment
variables a buyer might place in /etc/signals/signals.env are not
forwarded to the collector.
Found during the #235 AMI launch-test: a non-TLS test DB needs the dev-only
SIGNALS_ALLOW_INSECURE_PG_TLS=true, which the unit does not forward, so the
collector failed closed (correct behaviour) and the unit crash-looped. The
designed production path (RDS over verify-full TLS, config in
signals.yaml) is unaffected — this only bites dev/non-TLS or future tuning
env.
Options
- Forward the whole
signals.env via systemd EnvironmentFile semantics to the
container (e.g. --env-file /etc/signals/signals.env), OR
- Explicitly document the unit as TLS-production-oriented (token is the only
runtime env; all other config via signals.yaml).
Non-blocking for the AMI product (production RDS use works). Mirror any change in
deploy/aws/terraform for INV-AMI-03 parity.
Acceptance criteria
Observation
The EC2 Image Builder component's baked
signals.serviceunit(
deploy/aws/imagebuilder/signals-collector-component.yaml) passes only-e SIGNALS_API_TOKENto the container. OtherSIGNALS_*environmentvariables a buyer might place in
/etc/signals/signals.envare notforwarded to the collector.
Found during the #235 AMI launch-test: a non-TLS test DB needs the dev-only
SIGNALS_ALLOW_INSECURE_PG_TLS=true, which the unit does not forward, so thecollector failed closed (correct behaviour) and the unit crash-looped. The
designed production path (RDS over
verify-fullTLS, config insignals.yaml) is unaffected — this only bites dev/non-TLS or future tuningenv.
Options
signals.envvia systemdEnvironmentFilesemantics to thecontainer (e.g.
--env-file /etc/signals/signals.env), ORruntime env; all other config via
signals.yaml).Non-blocking for the AMI product (production RDS use works). Mirror any change in
deploy/aws/terraformfor INV-AMI-03 parity.Acceptance criteria
SIGNALS_*var in signals.env reaches the collector.