-
-
Notifications
You must be signed in to change notification settings - Fork 1.9k
Description
Self-Hosted Version
25.10.0
CPU Architecture
x86_64
Docker Version
28.3.2
Docker Compose Version
28.3.2
Machine Specification
- My system meets the minimum system requirements of Sentry
Steps to Reproduce
- Run
./install.sh - Change
SENTRY_EVENT_RETENTION_DAYSin.env - Re-run
./install.sh
Expected Result
The new SENTRY_EVENT_RETENTION_DAYS set in .env is used.
Actual Result
AFAICT with the new seaweedfs container the lifecycle policy is only set during initial setup in install/bootstrap-s3-nodestore.sh
The setup for the lifecycle policy is behind this if
self-hosted/install/bootstrap-s3-nodestore.sh
Lines 10 to 12 in 976e065
| if [[ $(echo "$bucket_list" | tail -1 | awk '{print $3}') != 's3://nodestore' ]]; then | |
| apply_config_changes_nodestore=0 | |
| # Only touch if no existing nodestore config is found |
and the else branch is just a no-op
self-hosted/install/bootstrap-s3-nodestore.sh
Lines 66 to 89 in 976e065
| # XXX(aldy505): Should we refactor this? | |
| lifecycle_policy=$( | |
| cat <<EOF | |
| <?xml version="1.0" encoding="UTF-8"?> | |
| <LifecycleConfiguration> | |
| <Rule> | |
| <ID>Sentry-Nodestore-Rule</ID> | |
| <Status>Enabled</Status> | |
| <Filter></Filter> | |
| <Expiration> | |
| <Days>$SENTRY_EVENT_RETENTION_DAYS</Days> | |
| </Expiration> | |
| </Rule> | |
| </LifecycleConfiguration> | |
| EOF | |
| ) | |
| $dc exec seaweedfs sh -c "printf '%s' '$lifecycle_policy' > /tmp/nodestore-lifecycle-policy.xml" | |
| $s3cmd --access_key=sentry --secret_key=sentry --no-ssl --region=us-east-1 --host=localhost:8333 --host-bucket='localhost:8333/%(bucket)' setlifecycle /tmp/nodestore-lifecycle-policy.xml s3://nodestore | |
| echo "Making sure the bucket lifecycle policy is all set up correctly..." | |
| $s3cmd --access_key=sentry --secret_key=sentry --no-ssl --region=us-east-1 --host=localhost:8333 --host-bucket='localhost:8333/%(bucket)' getlifecycle s3://nodestore | |
| else | |
| echo "Node store already exists, skipping..." | |
| fi |
This is probably a bit of an edge case, and some additional documentation about changing the retention period might be enough. I just noticed the issue while looking at the script, while manually upgrading to 25.10.0 after skipping the nodestore change for 25.9.0.
Event ID
No response
Metadata
Metadata
Assignees
Projects
Status
Status