Chris Lu
c6a22ce43a
Fix get object lock configuration handler ( #6996 )
...
* fix GetObjectLockConfigurationHandler
* cache and use bucket object lock config
* subscribe to bucket configuration changes
* increase bucket config cache TTL
* refactor
* Update weed/s3api/s3api_server.go
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
* avoid duplidated work
* rename variable
* Update s3api_object_handlers_put.go
* fix routing
* admin ui and api handler are consistent now
* use fields instead of xml
* fix test
* address comments
* Update weed/s3api/s3api_object_handlers_put.go
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* Update test/s3/retention/s3_retention_test.go
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* Update weed/s3api/object_lock_utils.go
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* change error style
* errorf
---------
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-07-18 02:19:50 -07:00
Chris Lu
69553e5ba6
convert error fromating to %w everywhere ( #6995 )
2025-07-16 23:39:27 -07:00
Chris Lu
a524b4f485
Object locking need to persist the tags and set the headers ( #6994 )
...
* fix object locking read and write
No logic to include object lock metadata in HEAD/GET response headers
No logic to extract object lock metadata from PUT request headers
* add tests for object locking
* Update weed/s3api/s3api_object_handlers_put.go
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* Update weed/s3api/s3api_object_handlers.go
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* refactor
* add unit tests
* sync versions
* Update s3_worm_integration_test.go
* fix legal hold values
* lint
* fix tests
* racing condition when enable versioning
* fix tests
* validate put object lock header
* allow check lock permissions for PUT
* default to OFF legal hold
* only set object lock headers for objects that are actually from object lock-enabled buckets
fix --- FAIL: TestAddObjectLockHeadersToResponse/Handle_entry_with_no_object_lock_metadata (0.00s)
* address comments
* fix tests
* purge
* fix
* refactoring
* address comment
* address comment
* Update weed/s3api/s3api_object_handlers_put.go
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* Update weed/s3api/s3api_object_handlers_put.go
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* Update weed/s3api/s3api_object_handlers.go
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* avoid nil
* ensure locked objects cannot be overwritten
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-07-16 23:00:25 -07:00
chrislu
89706d36dc
less logs
2025-07-16 16:30:22 -07:00
chrislu
22465b8a96
unused
2025-07-16 16:30:07 -07:00
Andrei Kvapil
39b574f3c5
[cosi] Update sidecar ( #6993 )
2025-07-16 13:51:30 -07:00
Chris Lu
9982f91b4c
Add more fuse tests ( #6992 )
...
* add more tests
* move to new package
* add github action
* Update fuse-integration.yml
* Update fuse-integration.yml
* Update test/fuse_integration/README.md
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* Update test/fuse_integration/README.md
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* Update test/fuse_integration/framework.go
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* Update test/fuse_integration/README.md
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* Update test/fuse_integration/README.md
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* fix
* Update test/fuse_integration/concurrent_operations_test.go
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-07-16 12:43:08 -07:00
chrislu
215c5de579
minor
2025-07-16 09:22:25 -07:00
chrislu
12c9282042
avoid error overwriting
...
fix https://github.com/seaweedfs/seaweedfs/issues/6991
2025-07-16 09:15:50 -07:00
chrislu
bb81894078
Update .gitignore
2025-07-16 01:18:23 -07:00
Chris Lu
dde1cf63c2
S3 Object Lock: ensure x-amz-bucket-object-lock-enabled header ( #6990 )
...
* ensure x-amz-bucket-object-lock-enabled header
* fix tests
* combine 2 metadata changes into one
* address comments
* Update s3api_bucket_handlers.go
* Update weed/s3api/s3api_bucket_handlers.go
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* Update test/s3/retention/object_lock_reproduce_test.go
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* Update test/s3/retention/object_lock_validation_test.go
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* Update test/s3/retention/s3_bucket_object_lock_test.go
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* Update weed/s3api/s3api_bucket_handlers.go
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* Update weed/s3api/s3api_bucket_handlers.go
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* Update test/s3/retention/s3_bucket_object_lock_test.go
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* Update weed/s3api/s3api_bucket_handlers.go
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* package name
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-07-15 23:21:58 -07:00
chrislu
64c5dde2f3
support multiple masters
...
fix https://github.com/seaweedfs/seaweedfs/issues/6988
2025-07-15 10:51:07 -07:00
Ibrahim Konsowa
d78aa3d2de
[Notifications] Improving webhook notifications ( #6965 )
...
* worker setup
* fix tests
* start worker
* graceful worker drain
* retry queue
* migrate queue to watermill
* adding filters and improvements
* add the event type to the webhook message
* eliminating redundant JSON serialization
* resolve review comments
* trigger actions
* fix tests
* typo fixes
* read max_backoff_seconds from config
* add more context to the dead letter
* close the http response on errors
* drain the http response body in case not empty
* eliminate exported typesπ
2025-07-15 10:49:37 -07:00
Chris Lu
74f4e9ba5a
rewrite, simplify, avoid unused functions ( #6989 )
...
* adding cors support
* address some comments
* optimize matchesWildcard
* address comments
* fix for tests
* address comments
* address comments
* address comments
* path building
* refactor
* Update weed/s3api/s3api_bucket_config.go
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* address comment
Service-level responses need both Access-Control-Allow-Methods and Access-Control-Allow-Headers. After setting Access-Control-Allow-Origin and Access-Control-Expose-Headers, also set Access-Control-Allow-Methods: * and Access-Control-Allow-Headers: * so service endpoints satisfy CORS preflight requirements.
* Update weed/s3api/s3api_bucket_config.go
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* Update weed/s3api/s3api_object_handlers.go
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* Update weed/s3api/s3api_object_handlers.go
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* fix
* refactor
* Update weed/s3api/s3api_bucket_config.go
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* Update weed/s3api/s3api_object_handlers.go
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* Update weed/s3api/s3api_server.go
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* simplify
* add cors tests
* fix tests
* fix tests
* remove unused functions
* fix tests
* simplify
* address comments
* fix
* Update weed/s3api/auth_signature_v4.go
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* Apply suggestion from @Copilot
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* rename variable
* Revert "Apply suggestion from @Copilot"
This reverts commit fce2d4e57e
.
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-07-15 10:11:49 -07:00
Chris Lu
4b040e8a87
adding cors support ( #6987 )
...
* adding cors support
* address some comments
* optimize matchesWildcard
* address comments
* fix for tests
* address comments
* address comments
* address comments
* path building
* refactor
* Update weed/s3api/s3api_bucket_config.go
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* address comment
Service-level responses need both Access-Control-Allow-Methods and Access-Control-Allow-Headers. After setting Access-Control-Allow-Origin and Access-Control-Expose-Headers, also set Access-Control-Allow-Methods: * and Access-Control-Allow-Headers: * so service endpoints satisfy CORS preflight requirements.
* Update weed/s3api/s3api_bucket_config.go
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* Update weed/s3api/s3api_object_handlers.go
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* Update weed/s3api/s3api_object_handlers.go
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* fix
* refactor
* Update weed/s3api/s3api_bucket_config.go
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* Update weed/s3api/s3api_object_handlers.go
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* Update weed/s3api/s3api_server.go
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* simplify
* add cors tests
* fix tests
* fix tests
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-07-15 00:23:54 -07:00
dependabot[bot]
548fa0b50a
chore(deps): bump go.etcd.io/etcd/client/v3 from 3.6.1 to 3.6.2 ( #6986 )
...
Bumps [go.etcd.io/etcd/client/v3](https://github.com/etcd-io/etcd ) from 3.6.1 to 3.6.2.
- [Release notes](https://github.com/etcd-io/etcd/releases )
- [Commits](https://github.com/etcd-io/etcd/compare/v3.6.1...v3.6.2 )
---
updated-dependencies:
- dependency-name: go.etcd.io/etcd/client/v3
dependency-version: 3.6.2
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-07-14 19:51:05 -07:00
dependabot[bot]
9bc791d3bf
chore(deps): bump golang.org/x/tools from 0.34.0 to 0.35.0 ( #6983 )
...
Bumps [golang.org/x/tools](https://github.com/golang/tools ) from 0.34.0 to 0.35.0.
- [Release notes](https://github.com/golang/tools/releases )
- [Commits](https://github.com/golang/tools/compare/v0.34.0...v0.35.0 )
---
updated-dependencies:
- dependency-name: golang.org/x/tools
dependency-version: 0.35.0
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-07-14 19:50:52 -07:00
dependabot[bot]
9985a12f84
chore(deps): bump github.com/redis/go-redis/v9 from 9.10.0 to 9.11.0 ( #6985 )
...
---
updated-dependencies:
- dependency-name: github.com/redis/go-redis/v9
dependency-version: 9.11.0
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Chris Lu <chrislusf@users.noreply.github.com >
2025-07-14 19:31:16 -07:00
dependabot[bot]
fc1818b911
chore(deps): bump golang.org/x/crypto from 0.39.0 to 0.40.0 ( #6984 )
...
---
updated-dependencies:
- dependency-name: golang.org/x/crypto
dependency-version: 0.40.0
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-07-14 19:00:29 -07:00
dependabot[bot]
5b456fd8c8
chore(deps): bump github.com/tarantool/go-tarantool/v2 from 2.3.2 to 2.4.0 ( #6982 )
...
chore(deps): bump github.com/tarantool/go-tarantool/v2
---
updated-dependencies:
- dependency-name: github.com/tarantool/go-tarantool/v2
dependency-version: 2.4.0
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-07-14 16:37:18 -07:00
dependabot[bot]
bac6d3af2e
chore(deps): bump github.com/rclone/rclone from 1.70.2 to 1.70.3 ( #6980 )
...
Bumps [github.com/rclone/rclone](https://github.com/rclone/rclone ) from 1.70.2 to 1.70.3.
- [Release notes](https://github.com/rclone/rclone/releases )
- [Changelog](https://github.com/rclone/rclone/blob/master/RELEASE.md )
- [Commits](https://github.com/rclone/rclone/compare/v1.70.2...v1.70.3 )
---
updated-dependencies:
- dependency-name: github.com/rclone/rclone
dependency-version: 1.70.3
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-07-14 16:37:06 -07:00
dependabot[bot]
709ab84fdc
chore(deps): bump golang.org/x/net from 0.41.0 to 0.42.0 ( #6979 )
...
Bumps [golang.org/x/net](https://github.com/golang/net ) from 0.41.0 to 0.42.0.
- [Commits](https://github.com/golang/net/compare/v0.41.0...v0.42.0 )
---
updated-dependencies:
- dependency-name: golang.org/x/net
dependency-version: 0.42.0
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-07-14 16:36:48 -07:00
dependabot[bot]
0782c9c4b1
chore(deps): bump google.golang.org/api from 0.240.0 to 0.241.0 ( #6977 )
...
Bumps [google.golang.org/api](https://github.com/googleapis/google-api-go-client ) from 0.240.0 to 0.241.0.
- [Release notes](https://github.com/googleapis/google-api-go-client/releases )
- [Changelog](https://github.com/googleapis/google-api-go-client/blob/main/CHANGES.md )
- [Commits](https://github.com/googleapis/google-api-go-client/compare/v0.240.0...v0.241.0 )
---
updated-dependencies:
- dependency-name: google.golang.org/api
dependency-version: 0.241.0
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-07-14 14:43:18 -07:00
Andrei Kvapil
f0d24461a4
Remove Cozystack specifics ( #6978 )
2025-07-14 13:57:55 -07:00
chrislu
44dfa793d5
Collecting volume locations for volumes before EC encoding
...
fix https://github.com/seaweedfs/seaweedfs/issues/6963
2025-07-14 12:17:33 -07:00
chrislu
606d516e34
add integration tests for ec
2025-07-14 12:17:33 -07:00
dependabot[bot]
c967d2e926
chore(deps): bump golang.org/x/image from 0.28.0 to 0.29.0 ( #6975 )
...
Bumps [golang.org/x/image](https://github.com/golang/image ) from 0.28.0 to 0.29.0.
- [Commits](https://github.com/golang/image/compare/v0.28.0...v0.29.0 )
---
updated-dependencies:
- dependency-name: golang.org/x/image
dependency-version: 0.29.0
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-07-14 12:13:40 -07:00
dependabot[bot]
6808e00aa4
chore(deps): bump go.etcd.io/etcd/client/pkg/v3 from 3.6.1 to 3.6.2 ( #6976 )
...
Bumps [go.etcd.io/etcd/client/pkg/v3](https://github.com/etcd-io/etcd ) from 3.6.1 to 3.6.2.
- [Release notes](https://github.com/etcd-io/etcd/releases )
- [Commits](https://github.com/etcd-io/etcd/compare/v3.6.1...v3.6.2 )
---
updated-dependencies:
- dependency-name: go.etcd.io/etcd/client/pkg/v3
dependency-version: 3.6.2
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-07-14 11:47:36 -07:00
dependabot[bot]
8adc759156
chore(deps): bump golang.org/x/sync from 0.15.0 to 0.16.0 ( #6974 )
...
Bumps [golang.org/x/sync](https://github.com/golang/sync ) from 0.15.0 to 0.16.0.
- [Commits](https://github.com/golang/sync/compare/v0.15.0...v0.16.0 )
---
updated-dependencies:
- dependency-name: golang.org/x/sync
dependency-version: 0.16.0
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-07-14 11:46:32 -07:00
dependabot[bot]
66c54cd910
chore(deps): bump github.com/getsentry/sentry-go from 0.33.0 to 0.34.1 ( #6973 )
...
Bumps [github.com/getsentry/sentry-go](https://github.com/getsentry/sentry-go ) from 0.33.0 to 0.34.1.
- [Release notes](https://github.com/getsentry/sentry-go/releases )
- [Changelog](https://github.com/getsentry/sentry-go/blob/master/CHANGELOG.md )
- [Commits](https://github.com/getsentry/sentry-go/compare/v0.33.0...v0.34.1 )
---
updated-dependencies:
- dependency-name: github.com/getsentry/sentry-go
dependency-version: 0.34.1
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-07-14 11:46:22 -07:00
Andrei Kvapil
660941138b
Introduce named volumes in Helm chart ( #6972 )
2025-07-14 11:00:02 -07:00
chrislu
a51d993aa9
ensure bucket exists
...
related to https://github.com/seaweedfs/seaweedfs/issues/6971
2025-07-14 09:55:35 -07:00
chrislu
406aaf7c14
increase upload limit via browser
2025-07-14 08:42:15 -07:00
chrislu
24eff93d9a
3.94
3.94
2025-07-13 20:31:31 -07:00
chrislu
e7dfc3552c
admin ui adds object lock permissions
2025-07-13 20:29:25 -07:00
Chris Lu
7cb1ca1308
Add policy engine ( #6970 )
2025-07-13 16:21:36 -07:00
Chris Lu
1549ee2e15
implement PubObjectRetention and WORM ( #6969 )
...
* implement PubObjectRetention and WORM
* Update s3_worm_integration_test.go
* avoid previous buckets
* Update s3-versioning-tests.yml
* address comments
* address comments
* rename to ExtObjectLockModeKey
* only checkObjectLockPermissions if versioningEnabled
* address comments
* comments
* Revert "comments"
This reverts commit 6736434176
.
* Update s3api_object_handlers_skip.go
* Update s3api_object_retention_test.go
* add version id to ObjectIdentifier
* address comments
* add comments
* Add proper error logging for timestamp parsing failures
* address comments
* add version id to the error
* Update weed/s3api/s3api_object_retention_test.go
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* Update weed/s3api/s3api_object_retention.go
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* constants
* fix comments
* address comments
* address comment
* refactor out handleObjectLockAvailabilityCheck
* errors.Is ErrBucketNotFound
* better error checking
* address comments
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-07-12 21:58:55 -07:00
Chris Lu
687a6a6c1d
Admin UI: Add policies ( #6968 )
...
* add policies to UI, accessing filer directly
* view, edit policies
* add back buttons for "users" page
* remove unused
* fix ui dark mode when modal is closed
* bucket view details button
* fix browser buttons
* filer action button works
* clean up masters page
* fix volume servers action buttons
* fix collections page action button
* fix properties page
* more obvious
* fix directory creation file mode
* Update file_browser_handlers.go
* directory permission
2025-07-12 01:13:11 -07:00
chrislu
49d43003e1
show volume size limit on dashboard
2025-07-11 19:37:09 -07:00
chrislu
4460dc02e4
Delete MULTIPART_COPY_TEST_SUMMARY.md
2025-07-11 18:53:34 -07:00
Chris Lu
d892538d32
More efficient copy object ( #6665 )
...
* it compiles
* refactored
* reduce to 4 concurrent chunk upload
* CopyObjectPartHandler
* copy a range of the chunk data, fix offset size in copied chunks
* Update s3api_object_handlers_copy.go
What the PR Accomplishes:
CopyObjectHandler - Now copies entire objects by copying chunks individually instead of downloading/uploading the entire file
CopyObjectPartHandler - Handles copying parts of objects for multipart uploads by copying only the relevant chunk portions
Efficient Chunk Copying - Uses direct chunk-to-chunk copying with proper volume assignment and concurrent processing (limited to 4 concurrent operations)
Range Support - Properly handles range-based copying for partial object copies
* fix compilation
* fix part destination
* handling small objects
* use mkFile
* copy to existing file or part
* add testing tools
* adjust tests
* fix chunk lookup
* refactoring
* fix TestObjectCopyRetainingMetadata
* ensure bucket name not conflicting
* fix conditional copying tests
* remove debug messages
* add custom s3 copy tests
2025-07-11 18:51:32 -07:00
chrislu
4fcbdc1f61
tweaking dashboard UI
2025-07-11 13:11:39 -07:00
chrislu
3d4a9bdac0
upgrade templ version from v0.3.833 to v0.3.906
...
// templ: version: v0.3.833
// templ: version: v0.3.906
fix https://github.com/seaweedfs/seaweedfs/issues/6966#issuecomment-3063449163
2025-07-11 13:03:04 -07:00
Chris Lu
51543bbb87
Admin UI: Add message queue to admin UI ( #6958 )
...
* add a menu item "Message Queue"
* add a menu item "Message Queue"
* move the "brokers" link under it.
* add "topics", "subscribers". Add pages for them.
* refactor
* show topic details
* admin display publisher and subscriber info
* remove publisher and subscribers from the topic row pull down
* collecting more stats from publishers and subscribers
* fix layout
* fix publisher name
* add local listeners for mq broker and agent
* render consumer group offsets
* remove subscribers from left menu
* topic with retention
* support editing topic retention
* show retention when listing topics
* create bucket
* Update s3_buckets_templ.go
* embed the static assets into the binary
fix https://github.com/seaweedfs/seaweedfs/issues/6964
2025-07-11 10:19:27 -07:00
Andrei Kvapil
a9e1f00673
Fix drift for security config ( #6967 )
2025-07-11 08:50:12 -07:00
Ibrahim Konsowa
93bbaa1fb4
[Notifications] Support webhook notifications ( #6962 )
...
Add webhook notification support
2025-07-10 09:22:05 -07:00
chalet
804979d68b
[Enhancement] support fix for remote files with command fix ( #6961 )
2025-07-10 06:13:16 -07:00
Joon Young Baik
c04b7b411c
refactor: Performance and readability improvement on isDefaultPort ( #6960 )
2025-07-10 05:50:20 -07:00
chrislu
14859f0e8c
add mq agent options to server.go
2025-07-09 09:02:26 -07:00
Chris Lu
cf5a24983a
S3: add object versioning ( #6945 )
...
* add object versioning
* add missing file
* Update weed/s3api/s3api_object_versioning.go
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* Update weed/s3api/s3api_object_versioning.go
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* Update weed/s3api/s3api_object_versioning.go
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* ListObjectVersionsResult is better to show multiple version entries
* fix test
* Update weed/s3api/s3api_object_handlers_put.go
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* Update weed/s3api/s3api_object_versioning.go
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
* multiple improvements
* move PutBucketVersioningHandler into weed/s3api/s3api_bucket_handlers.go file
* duplicated code for reading bucket config, versioningEnabled, etc. try to use functions
* opportunity to cache bucket config
* error handling if bucket is not found
* in case bucket is not found
* fix build
* add object versioning tests
* remove non-existent tests
* add tests
* add versioning tests
* skip a new test
* ensure .versions directory exists before saving info into it
* fix creating version entry
* logging on creating version directory
* Update s3api_object_versioning_test.go
* retry and wait for directory creation
* revert add more logging
* Update s3api_object_versioning.go
* more debug messages
* clean up logs, and touch directory correctly
* log the .versions creation and then parent directory listing
* use mkFile instead of touch
touch is for update
* clean up data
* add versioning test in go
* change location
* if modified, latest version is moved to .versions directory, and create a new latest version
Core versioning functionality: WORKING
TestVersioningBasicWorkflow - PASS
TestVersioningDeleteMarkers - PASS
TestVersioningMultipleVersionsSameObject - PASS
TestVersioningDeleteAndRecreate - PASS
TestVersioningListWithPagination - PASS
❌ Some advanced features still failing:
ETag calculation issues (using mtime instead of proper MD5)
Specific version retrieval (EOF error)
Version deletion (internal errors)
Concurrent operations (race conditions)
* calculate multi chunk md5
Test Results - All Passing:
✅ TestBucketListReturnDataVersioning - PASS
✅ TestVersioningCreateObjectsInOrder - PASS
✅ TestVersioningBasicWorkflow - PASS
✅ TestVersioningMultipleVersionsSameObject - PASS
✅ TestVersioningDeleteMarkers - PASS
* dedupe
* fix TestVersioningErrorCases
* fix eof error of reading old versions
* get specific version also check current version
* enable integration tests for versioning
* trigger action to work for now
* Fix GitHub Actions S3 versioning tests workflow
- Fix syntax error (incorrect indentation)
- Update directory paths from weed/s3api/versioning_tests/ to test/s3/versioning/
- Add push trigger for add-object-versioning branch to enable CI during development
- Update artifact paths to match correct directory structure
* Improve CI robustness for S3 versioning tests
Makefile improvements:
- Increase server startup timeout from 30s to 90s for CI environments
- Add progressive timeout reporting (logs at 30s, full logs at 90s)
- Better error handling with server logs on failure
- Add server PID tracking for debugging
- Improved test failure reporting
GitHub Actions workflow improvements:
- Increase job timeouts to account for CI environment delays
- Add system information logging (memory, disk space)
- Add detailed failure reporting with server logs
- Add process and network diagnostics on failure
- Better error messaging and log collection
These changes should resolve the 'Server failed to start within 30 seconds' issue
that was causing the CI tests to fail.
* adjust testing volume size
* Update Makefile
* Update Makefile
* Update Makefile
* Update Makefile
* Update s3-versioning-tests.yml
* Update s3api_object_versioning.go
* Update Makefile
* do not clean up
* log received version id
* more logs
* printout response
* print out list version response
* use tmp files when put versioned object
* change to versions folder layout
* Delete weed-test.log
* test with mixed versioned and unversioned objects
* remove versionDirCache
* remove unused functions
* remove unused function
* remove fallback checking
* minor
---------
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com >
2025-07-09 01:51:45 -07:00