Skip to content

Commit 8e00f30

Browse files
committed
container: Add S3 gate specific tags docs
Signed-off-by: Evgenii Baidakov <evgenii@nspcc.io>
1 parent cd324bd commit 8e00f30

4 files changed

Lines changed: 37 additions & 0 deletions

File tree

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
- `CONTAINER_AWAIT_TIMEOUT` status (#358)
1010
- `SetAttribute` and `RemoveAttribute` RPC to `ContainerService` (#362)
1111
- `SETATTRIBUTE` and `REMOVEATTRIBUTE` verbs for container sessions V1 (#362)
12+
- Container `S3_TAGS`, `S3_SETTINGS`, `S3_NOTIFICATIONS` attributes (#371)
1213

1314
### Changed
1415
- `ContainerService`'s `Put`, `Delete` and `SetExtendedACL` RPC are async/await now (#358)

container/service.proto

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -478,11 +478,17 @@ message SetAttributeRequest {
478478
//
479479
// `attribute` must be one of:
480480
// - `CORS`;
481+
// - `S3_TAGS`;
482+
// - `S3_SETTINGS`;
483+
// - `S3_NOTIFICATIONS`;
481484
// - `__NEOFS__LOCK_UNTIL`.
482485
//
483486
// In general, requirements for `value` are the same as for container
484487
// creation. Attribute-specific requirements:
485488
// - `__NEOFS__LOCK_UNTIL`: new timestamp must be after the current one if any
489+
// - `S3_TAGS`: must be a valid JSON object
490+
// - `S3_SETTINGS`: must be a valid JSON object
491+
// - `S3_NOTIFICATIONS`: must be a valid JSON object
486492
message Parameters {
487493
// Identifier of the container to set attribute for.
488494
neo.fs.v2.refs.ContainerID container_id = 1;
@@ -554,6 +560,9 @@ message RemoveAttributeRequest {
554560
//
555561
// `attribute` must be one of:
556562
// - `CORS`;
563+
// - `S3_TAGS`;
564+
// - `S3_SETTINGS`;
565+
// - `S3_NOTIFICATIONS`;
557566
// - `__NEOFS__LOCK_UNTIL`.
558567
//
559568
// Attribute-specific requirements:

container/types.proto

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -96,6 +96,15 @@ message Container {
9696
//
9797
// The CORS schema is based on Amazon S3 CORS (https://docs.aws.amazon.com/AmazonS3/latest/userguide/cors.html)
9898
// configuration.
99+
// * S3_TAGS \
100+
// It is used to store S3 gate-specific container tags. The value is controlled by the gate itself.
101+
// Despite it, the value must be valid JSON object.
102+
// * S3_SETTINGS \
103+
// It is used to store S3 gate-specific container settings. The value is controlled by the gate itself.
104+
// Despite it, the value must be valid JSON object.
105+
// * S3_NOTIFICATIONS \
106+
// It is used to store S3 gate-specific container notification settings. The value is controlled by the gate itself.
107+
// Despite it, the value must be valid JSON object.
99108
message Attribute {
100109
// Attribute name key
101110
string key = 1 [json_name = "key"];

proto-docs/container.md

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -599,6 +599,9 @@ format.
599599

600600
`attribute` must be one of:
601601
- `CORS`;
602+
- `S3_TAGS`;
603+
- `S3_SETTINGS`;
604+
- `S3_NOTIFICATIONS`;
602605
- `__NEOFS__LOCK_UNTIL`.
603606

604607
Attribute-specific requirements:
@@ -674,11 +677,17 @@ format.
674677

675678
`attribute` must be one of:
676679
- `CORS`;
680+
- `S3_TAGS`;
681+
- `S3_SETTINGS`;
682+
- `S3_NOTIFICATIONS`;
677683
- `__NEOFS__LOCK_UNTIL`.
678684

679685
In general, requirements for `value` are the same as for container
680686
creation. Attribute-specific requirements:
681687
- `__NEOFS__LOCK_UNTIL`: new timestamp must be after the current one if any
688+
- `S3_TAGS`: must be a valid JSON object
689+
- `S3_SETTINGS`: must be a valid JSON object
690+
- `S3_NOTIFICATIONS`: must be a valid JSON object
682691

683692

684693
| Field | Type | Label | Description |
@@ -865,6 +874,15 @@ And some well-known attributes used by applications only:
865874

866875
The CORS schema is based on Amazon S3 CORS (https://docs.aws.amazon.com/AmazonS3/latest/userguide/cors.html)
867876
configuration.
877+
* S3_TAGS \
878+
It is used to store S3 gate-specific container tags. The value is controlled by the gate itself.
879+
Despite it, the value must be valid JSON object.
880+
* S3_SETTINGS \
881+
It is used to store S3 gate-specific container settings. The value is controlled by the gate itself.
882+
Despite it, the value must be valid JSON object.
883+
* S3_NOTIFICATIONS \
884+
It is used to store S3 gate-specific container notification settings. The value is controlled by the gate itself.
885+
Despite it, the value must be valid JSON object.
868886

869887

870888
| Field | Type | Label | Description |

0 commit comments

Comments
 (0)