gotosocial/internal
vdyotte 0e698a49fb [feature] Add S3 key prefix (#4200)
Been running these changes on on my live instance without any issues as far as I can tell. It's been playing nice with multiple instances in the same bucket.

# Description

This lets users prefix their object storage files.
Useful for when you want to host multiple GTS instances inside
the same bucket. Providers like Backblaze limit the number of buckets
you can have on your account so grouping by prefix may be more desirable
in this situation.

closes #1371

## Checklist

Please put an x inside each checkbox to indicate that you've read and followed it: `[ ]` -> `[x]`

If this is a documentation change, only the first checkbox must be filled (you can delete the others if you want).

- [x] I/we have read the [GoToSocial contribution guidelines](https://codeberg.org/superseriousbusiness/gotosocial/src/branch/main/CONTRIBUTING.md).
- [x] I/we have discussed the proposed changes already, either in an issue on the repository, or in the Matrix chat.
- [x] I/we have not leveraged AI to create the proposed changes.
- [x] I/we have performed a self-review of added code.
- [x] I/we have written code that is legible and maintainable by others.
- [x] I/we have commented the added code, particularly in hard-to-understand areas.
- [x] I/we have made any necessary changes to documentation.
- [ ] I/we have added tests that cover new code.
- [ ] I/we have run tests and they pass locally with the changes.
- [x] I/we have run `go fmt ./...` and `golangci-lint run`.

Reviewed-on: https://codeberg.org/superseriousbusiness/gotosocial/pulls/4200
Co-authored-by: vdyotte <vdyotte@gmail.com>
Co-committed-by: vdyotte <vdyotte@gmail.com>
2025-05-30 14:12:29 +02:00
..
admin [chore] Upgrade to Go 1.24 (#4187) 2025-05-22 12:26:11 +02:00
ap [chore] Upgrade to Go 1.24 (#4187) 2025-05-22 12:26:11 +02:00
api [chore] Upgrade to Go 1.24 (#4187) 2025-05-22 12:26:11 +02:00
cache [chore] Upgrade to Go 1.24 (#4187) 2025-05-22 12:26:11 +02:00
cleaner [feature] Add S3 key prefix (#4200) 2025-05-30 14:12:29 +02:00
config [feature] Add S3 key prefix (#4200) 2025-05-30 14:12:29 +02:00
db [chore] thread_id migration tweaks (#4198) 2025-05-28 11:36:14 +02:00
email [feature] Move to code.superseriousbusiness.org 2025-04-26 15:38:43 +02:00
federation [chore] migration to update statuses.thread_id to be notnull (#4160) 2025-05-26 15:33:42 +02:00
filter [chore] Upgrade to Go 1.24 (#4187) 2025-05-22 12:26:11 +02:00
gtscontext [feature] Move to code.superseriousbusiness.org 2025-04-26 15:38:43 +02:00
gtserror [feature] Move to code.superseriousbusiness.org 2025-04-26 15:38:43 +02:00
gtsmodel [chore] migration to update statuses.thread_id to be notnull (#4160) 2025-05-26 15:33:42 +02:00
headerfilter [feature] request blocking by http headers (#2409) 2023-12-18 14:18:25 +00:00
httpclient [feature] Move to code.superseriousbusiness.org 2025-04-26 15:38:43 +02:00
id [feature] Move to code.superseriousbusiness.org 2025-04-26 15:38:43 +02:00
iotools [performance] update storage backend and make use of seek syscall when available (#2924) 2024-05-22 11:46:24 +02:00
language [feature] support nested configuration files, and setting ALL configuration variables by CLI and env (#4109) 2025-05-06 15:51:45 +00:00
log [feature] Move to code.superseriousbusiness.org 2025-04-26 15:38:43 +02:00
media [chore] Upgrade to Go 1.24 (#4187) 2025-05-22 12:26:11 +02:00
messages [feature] Move to code.superseriousbusiness.org 2025-04-26 15:38:43 +02:00
middleware [feature] update proof-of-work to allow setting required rounds (#4186) 2025-05-26 11:57:50 +02:00
oauth [chore] Upgrade to Go 1.24 (#4187) 2025-05-22 12:26:11 +02:00
observability [bugfix] broken nootel function signatures (#4142) 2025-05-06 13:26:20 +00:00
oidc [feature] Move to code.superseriousbusiness.org 2025-04-26 15:38:43 +02:00
paging [bugfix] ensure timeline limit query is respected (#4141) 2025-05-06 13:30:23 +00:00
processing [chore] migration to update statuses.thread_id to be notnull (#4160) 2025-05-26 15:33:42 +02:00
queue [performance] update go-structr and go-mutexes with memory usage improvements (#2909) 2024-05-13 08:05:46 +00:00
regexes feat: Relax URL matching (#3925) 2025-03-24 14:13:32 +01:00
router [bugfix] Fix indentation on multi-line alt text in web view (#4149) 2025-05-07 11:48:21 +00:00
scheduler [feature] add support for polls + receiving federated status edits (#2330) 2023-11-08 14:32:17 +00:00
state [feature] Move to code.superseriousbusiness.org 2025-04-26 15:38:43 +02:00
storage [feature] Add S3 key prefix (#4200) 2025-05-30 14:12:29 +02:00
stream [feature] Conversations API (#3013) 2024-07-23 20:44:31 +01:00
subscriptions [chore] Upgrade to Go 1.24 (#4187) 2025-05-22 12:26:11 +02:00
text [chore] Upgrade to Go 1.24 (#4187) 2025-05-22 12:26:11 +02:00
trans [chore] Upgrade to Go 1.24 (#4187) 2025-05-22 12:26:11 +02:00
transport [chore] Upgrade to Go 1.24 (#4187) 2025-05-22 12:26:11 +02:00
typeutils [chore] Upgrade to Go 1.24 (#4187) 2025-05-22 12:26:11 +02:00
uris [feature] Move to code.superseriousbusiness.org 2025-04-26 15:38:43 +02:00
util [feature] Move to code.superseriousbusiness.org 2025-04-26 15:38:43 +02:00
validate [feature] Configurable max profile fields (#4175) 2025-05-14 13:25:21 +00:00
web [feature] Allow exposing allows, implement /api/v1/domain_blocks and /api/v1/domain_allows (#4169) 2025-05-20 11:47:40 +02:00
webpush [chore] Upgrade to Go 1.24 (#4187) 2025-05-22 12:26:11 +02:00
workers [feature] Move to code.superseriousbusiness.org 2025-04-26 15:38:43 +02:00