d85d7f319f
[ #240 ] Fix native index page
...
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2025-05-13 16:20:11 +03:00
ff8eb082d9
[ #240 ] Fix s3 index page
...
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2025-05-13 16:20:09 +03:00
e78e143e38
[ #226 ] Improve CORS validation
...
Signed-off-by: Marina Biryukova <m.biryukova@yadro.com>
2025-05-13 13:00:13 +00:00
3aed60aa79
[ #241 ] Remove exit codes from fuzzing tests
...
Signed-off-by: Marina Biryukova <m.biryukova@yadro.com>
2025-05-07 10:35:26 +03:00
96a22d98f2
[ #232 ] Use contract to get container info
...
Signed-off-by: Nikita Zinkevich <n.zinkevich@yadro.com>
2025-04-28 16:58:35 +03:00
dbb1bcad00
[ #233 ] Fix browsing
...
Simplify tree listing (we need only nodes in exactly the same parent level)
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2025-04-28 15:13:19 +03:00
e579549b41
[ #233 ] Add fallback tests
...
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2025-04-23 13:03:38 +03:00
0b9b23e67c
[ #233 ] Make search by attribute as it is
...
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2025-04-23 13:03:34 +03:00
9cb9d14146
[ #233 ] get/head: Middleware refactor
...
Add:
* search index.html
* fallback by leading slash
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2025-04-23 13:03:29 +03:00
ee628617a3
[ #227 ] Don't use bearer token with CORS container
...
Signed-off-by: Marina Biryukova <m.biryukova@yadro.com>
2025-04-18 14:34:16 +03:00
273459e090
[ #225 ] Support wildcard in allowed origins and headers
...
Signed-off-by: Marina Biryukova <m.biryukova@yadro.com>
2025-04-07 16:57:07 +03:00
458bf933fc
[ #191 ] Refactor error handling and logging
...
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2025-03-25 06:27:56 +00:00
9ef6b06e91
[ #212 ] Support CORS container for CORS settings
...
Signed-off-by: Marina Biryukova <m.biryukova@yadro.com>
2025-03-10 18:12:36 +03:00
9cf2a4f0e0
[ #197 ] Add a leading slash to the FilePath attribute
...
According to the frostfs api specification,
the File Path attribute must start with a
leading slash. More info:
https://git.frostfs.info/TrueCloudLab/frostfs-api
Signed-off-by: Roman Loginov <r.loginov@yadro.com>
2025-02-25 14:14:20 +00:00
a651b5823f
[ #219 ] Use zaptest.Logger
...
Use zaptest to get logs which get printed only if a test fails
or if you ran go test -v.
Dont use zaptest.Logger for fuzz otherwise ngfuzz/libfuzz crashes
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2025-02-21 16:11:49 +03:00
47d74a5a77
[ #174 ] Add slash clipping for FileName attribute
...
According to the FrostFS API specification,
the FileName attribute cannot contain a slash
at the beginning.
Signed-off-by: Roman Loginov <r.loginov@yadro.com>
2025-02-07 15:06:19 +03:00
11846df266
[ #145 ] handler: Add spans to detail the trace
...
Signed-off-by: Roman Loginov <r.loginov@yadro.com>
2025-02-07 14:55:53 +03:00
Aleksey Kravchenko
6a4d3206bd
[ #195 ] Add tags support
...
Signed-off-by: Aleksey Kravchenko <al.kravchenko@yadro.com>
2025-02-07 11:47:38 +00:00
1e897aa3c3
[ #170 ] Updated docs and configuration of archive section
...
Signed-off-by: Nikita Zinkevich <n.zinkevich@yadro.com>
2025-01-23 17:16:23 +03:00
1e7309684b
[ #170 ] Support .tar/.tgz unpacking during upload
...
During upload if X-Explode-Archive is set, gate tries to read archive and create an object for each file.
Each object acquires a FilePath attribute which is calculated relative to the archive root.
Archive could have compression via Gzip if "Content-Encoding: gzip" header is specified
Signed-off-by: Nikita Zinkevich <n.zinkevich@yadro.com>
2025-01-23 17:16:12 +03:00
7901d00924
[ #170 ] Support tar.gz downloading
...
Split DownloadZip handler on methods. Add handler DownloadTar for downloading tar.gz archives. Make methods more universal for using in both implementations
Signed-off-by: Nikita Zinkevich <n.zinkevich@yadro.com>
2025-01-23 15:42:22 +03:00
4b782cf124
[ #187 ] Add handling quota limit reached error
...
The Access Denied status may be received
from APE due to exceeding the quota. In
this situation, you need to return the
appropriate status code.
Signed-off-by: Roman Loginov <r.loginov@yadro.com>
2025-01-21 06:59:47 +00:00
Aleksey Kravchenko
f0c999d9a2
[ #188 ] Improve content-type detector
...
Signed-off-by: Aleksey Kravchenko <al.kravchenko@yadro.com>
2025-01-21 06:52:37 +00:00
1db62f9d95
[ #185 ] Update SDK to support new tree/pool version
...
Signed-off-by: Marina Biryukova <m.biryukova@yadro.com>
2025-01-21 06:47:52 +00:00
a658f3adc0
[ #181 ] index_page: Ignore deleted objects in versioned buckets
...
Signed-off-by: Nikita Zinkevich <n.zinkevich@yadro.com>
2024-12-17 13:06:57 +00:00
1be92fa4be
[ #166 ] Fix getting s3 object with the FrostFS OID name
...
Prioritize getting s3 object with the key, which equals to valid FrostFS OID, rather than getting non-existent object with OID via native protocol for GET and HEAD requests
Signed-off-by: Nikita Zinkevich <n.zinkevich@yadro.com>
2024-12-17 10:32:22 +03:00
dc100f03a6
[ #174 ] Add fallback path to search
...
Fallback path to search is needed because
some software may keep FileName attribute
and ignore FilePath attribute during file
upload. Therefore, if this feature is
enabled under certain conditions (for more
information, see gate-configuration.md) a
search will be performed for the FileName
attribute.
Signed-off-by: Roman Loginov <r.loginov@yadro.com>
2024-12-16 10:43:34 +00:00
43764772aa
[ #151 ] index page: Add browse via native protocol
...
Signed-off-by: Nikita Zinkevich <n.zinkevich@yadro.com>
2024-11-19 17:33:21 +03:00
fc86ab3511
[ #148 ] Add trace_id to logs
...
Signed-off-by: Roman Loginov <r.loginov@yadro.com>
2024-10-17 11:00:43 +00:00
495f745535
[ #142 ] Fix multipart-objects download
...
Signed-off-by: Nikita Zinkevich <n.zinkevich@yadro.com>
2024-10-15 17:17:29 +03:00
8fe8f2dcc2
[ #137 ] Add index page support
...
Signed-off-by: Nikita Zinkevich <n.zinkevich@yadro.com>
2024-10-04 14:23:16 +03:00
843708a558
[ #134 ] Support percent-encoding
...
Signed-off-by: Pavel Pogodaev <p.pogodaev@yadro.com>
2024-09-03 12:00:13 +00:00
ca426fff4d
[ #135 ] Add fuzzing tests for handlers
...
Signed-off-by: Roman Ognev <r.ognev@yadro.com>
2024-09-02 16:02:47 +03:00
151e5bc1c8
[ #132 ] Update Go version
...
Signed-off-by: Nikita Zinkevich <n.zinkevich@yadro.com>
2024-08-29 10:42:20 +03:00
fcf99d9a59
[ #127 ] Split FrostFS ReadObject to separate methods
...
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2024-07-23 16:59:12 +03:00
1737f1d95f
[ #117 ] Update tests
...
Signed-off-by: Alex Vanin <a.vanin@yadro.com>
2024-06-25 15:12:21 +00:00
0f22ca43c1
[ #117 ] Fix FrostFS interface usage
...
HTTP Gateway expects io.Reader to work with
payload, however `WithPayload` flag reads whole
payload into header object.
Signed-off-by: Alex Vanin <a.vanin@yadro.com>
2024-06-25 15:12:21 +00:00
3741e3b003
[ #117 ] Add mocked handler for tests
...
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2024-06-18 12:04:14 +03:00
23ed3ab86e
[ #114 ] Update frostfs-sdk-go version with support EC
...
Signed-off-by: Roman Loginov <r.loginov@yadro.com>
2024-06-05 15:41:36 +03:00
5ded105c09
[ #107 ] Check query unescape errors
...
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2024-02-29 12:50:56 +03:00
a375af7d98
[ #91 ] Add support namespaces
...
Signed-off-by: Roman Loginov <r.loginov@yadro.com>
2023-12-01 10:12:55 +00:00
49d6a27562
[ #70 ] Adjust status codes
...
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2023-10-12 12:08:20 +00:00
9a5a2239bd
[ #70 ] Support bucket/container caching
...
Mainly it was added because
we need to know if TZ hashing is disabled or not for container
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2023-10-12 12:08:20 +00:00
8bc246f8f9
[ #70 ] Support configuring buffer size for put
...
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2023-10-12 12:08:20 +00:00
9b34413e17
[ #70 ] Support client cut
...
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2023-10-12 12:08:20 +00:00
e61b4867c9
[ #70 ] Update SDK to support client cut
...
Signed-off-by: Denis Kirillov <d.kirillov@yadro.com>
2023-10-12 12:08:20 +00:00
e26577e753
[ #74 ] Replace atomics with mutex for reloadable params
...
Signed-off-by: Marina Biryukova <m.biryukova@yadro.com>
2023-09-21 16:25:28 +03:00
d219943542
[ #73 ] Uploader, downloader structures refactoring
...
Signed-off-by: Marina Biryukova <m.biryukova@yadro.com>
2023-09-05 18:18:04 +03:00