Feature/2 rebranding #3

Merged
KirillovDenis merged 4 commits from feature/2-rebranding into master 2022-12-21 08:49:19 +00:00
75 changed files with 225 additions and 390 deletions

2
.github/CODEOWNERS vendored
View file

@ -1 +1 @@
* @alexvanin @masterSplinter01 @KirillovDenis
* @alexvanin @KirillovDenis

129
.github/logo.svg vendored
View file

@ -1,129 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
sodipodi:docname="logo_fs.svg"
inkscape:version="1.0 (4035a4fb49, 2020-05-01)"
id="svg57"
version="1.1"
viewBox="0 0 105 25"
height="25mm"
width="105mm">
<defs
id="defs51">
<clipPath
clipPathUnits="userSpaceOnUse"
id="clipPath434">
<path
d="M 0,0 H 1366 V 768 H 0 Z"
id="path432" />
</clipPath>
</defs>
<sodipodi:namedview
inkscape:window-maximized="0"
inkscape:window-y="0"
inkscape:window-x="130"
inkscape:window-height="1040"
inkscape:window-width="1274"
height="50mm"
units="mm"
showgrid="false"
inkscape:document-rotation="0"
inkscape:current-layer="layer1"
inkscape:document-units="mm"
inkscape:cy="344.49897"
inkscape:cx="468.64708"
inkscape:zoom="0.7"
inkscape:pageshadow="2"
inkscape:pageopacity="0.0"
borderopacity="1.0"
bordercolor="#666666"
pagecolor="#ffffff"
id="base" />
<metadata
id="metadata54">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
</cc:Work>
</rdf:RDF>
</metadata>
<g
id="layer1"
inkscape:groupmode="layer"
inkscape:label="Layer 1">
<g
id="g424"
transform="matrix(0.35277777,0,0,-0.35277777,63.946468,10.194047)">
<path
d="m 0,0 v -8.093 h 12.287 v -3.94 H 0 V -24.067 H -4.534 V 3.898 H 15.677 V 0 Z"
style="fill:#00e396;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path426" />
</g>
<g
transform="matrix(0.35277777,0,0,-0.35277777,-315.43002,107.34005)"
id="g428">
<g
id="g430"
clip-path="url(#clipPath434)">
<g
id="g436"
transform="translate(1112.874,278.2981)">
<path
d="M 0,0 C 1.822,-0.932 3.354,-2.359 4.597,-4.28 L 1.165,-7.373 c -0.791,1.695 -1.779,2.924 -2.966,3.686 -1.186,0.763 -2.768,1.145 -4.745,1.145 -1.949,0 -3.461,-0.389 -4.534,-1.166 -1.074,-0.777 -1.61,-1.772 -1.61,-2.987 0,-1.13 0.523,-2.027 1.568,-2.69 1.045,-0.664 2.909,-1.236 5.593,-1.716 2.514,-0.452 4.512,-1.024 5.995,-1.716 1.483,-0.693 2.564,-1.554 3.242,-2.585 0.677,-1.031 1.016,-2.309 1.016,-3.834 0,-1.639 -0.466,-3.079 -1.398,-4.322 -0.932,-1.243 -2.239,-2.197 -3.919,-2.86 -1.681,-0.664 -3.623,-0.996 -5.826,-0.996 -5.678,0 -9.689,1.892 -12.033,5.678 l 3.178,3.178 c 0.903,-1.695 2.068,-2.939 3.495,-3.729 1.426,-0.791 3.199,-1.186 5.318,-1.186 2.005,0 3.58,0.345 4.724,1.038 1.144,0.692 1.716,1.674 1.716,2.945 0,1.017 -0.516,1.835 -1.547,2.457 -1.031,0.621 -2.832,1.172 -5.402,1.653 -2.571,0.479 -4.618,1.073 -6.143,1.779 -1.526,0.706 -2.635,1.582 -3.326,2.627 -0.693,1.045 -1.039,2.316 -1.039,3.813 0,1.582 0.438,3.023 1.314,4.322 0.875,1.299 2.14,2.33 3.792,3.093 1.653,0.763 3.58,1.144 5.783,1.144 C -4.018,1.398 -1.822,0.932 0,0"
style="fill:#00e396;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path438" />
</g>
<g
id="g440"
transform="translate(993.0239,277.5454)">
<path
d="m 0,0 c 2.054,-1.831 3.083,-4.465 3.083,-7.902 v -17.935 h -4.484 v 16.366 c 0,2.914 -0.626,5.024 -1.877,6.332 -1.253,1.308 -2.924,1.962 -5.016,1.962 -1.495,0 -2.896,-0.327 -4.204,-0.981 -1.308,-0.654 -2.381,-1.719 -3.222,-3.194 -0.841,-1.477 -1.261,-3.335 -1.261,-5.576 v -14.909 h -4.484 V 1.328 l 4.086,-1.674 0.118,-1.84 c 0.933,1.681 2.222,2.923 3.867,3.727 1.643,0.803 3.493,1.205 5.548,1.205 C -4.671,2.746 -2.055,1.83 0,0"
style="fill:#000033;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path442" />
</g>
<g
id="g444"
transform="translate(1027.9968,264.0386)">
<path
d="m 0,0 h -21.128 c 0.261,-2.84 1.205,-5.044 2.83,-6.613 1.625,-1.57 3.727,-2.355 6.305,-2.355 2.054,0 3.763,0.356 5.128,1.065 1.363,0.71 2.288,1.738 2.774,3.083 l 3.755,-1.961 c -1.121,-1.981 -2.616,-3.495 -4.484,-4.54 -1.868,-1.046 -4.259,-1.569 -7.173,-1.569 -4.223,0 -7.538,1.289 -9.948,3.867 -2.41,2.578 -3.615,6.146 -3.615,10.704 0,4.558 1.149,8.127 3.447,10.705 2.298,2.578 5.557,3.867 9.779,3.867 2.615,0 4.876,-0.58 6.782,-1.738 1.905,-1.158 3.343,-2.728 4.315,-4.707 C -0.262,7.827 0.224,5.605 0.224,3.139 0.224,2.092 0.149,1.046 0,0 m -18.298,10.144 c -1.513,-1.457 -2.438,-3.512 -2.775,-6.165 h 16.982 c -0.3,2.615 -1.159,4.661 -2.578,6.137 -1.42,1.476 -3.307,2.214 -5.661,2.214 -2.466,0 -4.455,-0.728 -5.968,-2.186"
style="fill:#000033;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path446" />
</g>
<g
id="g448"
transform="translate(1057.8818,276.4246)">
<path
d="m 0,0 c 2.41,-2.578 3.615,-6.147 3.615,-10.705 0,-4.558 -1.205,-8.126 -3.615,-10.704 -2.41,-2.578 -5.726,-3.867 -9.948,-3.867 -4.222,0 -7.537,1.289 -9.947,3.867 -2.41,2.578 -3.615,6.146 -3.615,10.704 0,4.558 1.205,8.127 3.615,10.705 2.41,2.578 5.725,3.867 9.947,3.867 C -5.726,3.867 -2.41,2.578 0,0 m -16.617,-2.858 c -1.607,-1.906 -2.41,-4.522 -2.41,-7.847 0,-3.326 0.803,-5.94 2.41,-7.846 1.607,-1.905 3.83,-2.858 6.669,-2.858 2.839,0 5.063,0.953 6.67,2.858 1.606,1.906 2.41,4.52 2.41,7.846 0,3.325 -0.804,5.941 -2.41,7.847 C -4.885,-0.953 -7.109,0 -9.948,0 c -2.839,0 -5.062,-0.953 -6.669,-2.858"
style="fill:#000033;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path450" />
</g>
</g>
</g>
<g
id="g452"
transform="matrix(0.35277777,0,0,-0.35277777,5.8329581,6.5590171)">
<path
d="m 0,0 0.001,-38.946 25.286,-9.076 V -8.753 L 52.626,1.321 27.815,10.207 Z"
style="fill:#00e599;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path454" />
</g>
<g
id="g456"
transform="matrix(0.35277777,0,0,-0.35277777,15.479008,10.041927)">
<path
d="M 0,0 V -21.306 L 25.293,-30.364 25.282,9.347 Z"
style="fill:#00b091;fill-opacity:1;fill-rule:nonzero;stroke:none"
id="path458" />
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 6.5 KiB

View file

@ -3,8 +3,8 @@
First, thank you for contributing! We love and encourage pull requests from
everyone. Please follow the guidelines:
- Check the open [issues](https://github.com/nspcc-dev/neofs-rest-gw/issues) and
[pull requests](https://github.com/nspcc-dev/neofs-rest-gw/pulls) for existing
- Check the open [issues](https://github.com/TrueCloudLab/frostfs-rest-gw/issues) and
[pull requests](https://github.com/TrueCloudLab/frostfs-rest-gw/pulls) for existing
discussions.
- Open an issue first, to discuss a new feature or enhancement.
@ -23,23 +23,23 @@ everyone. Please follow the guidelines:
## Development Workflow
Start by forking the `neofs-rest-gw` repository, make changes in a branch and then
Start by forking the `frostfs-rest-gw` repository, make changes in a branch and then
send a pull request. We encourage pull requests to discuss code changes. Here
are the steps in details:
### Set up your GitHub Repository
Fork [NeoFS REST Gateway upstream](https://github.com/nspcc-dev/neofs-rest-gw/fork) source
Fork [FrostFS REST Gateway upstream](https://github.com/TrueCloudLab/frostfs-rest-gw/fork) source
repository to your own personal repository. Copy the URL of your fork (you will
need it for the `git clone` command below).
```sh
$ git clone https://github.com/nspcc-dev/neofs-rest-gw
$ git clone https://github.com/TrueCloudLab/frostfs-rest-gw
```
### Set up git remote as ``upstream``
```sh
$ cd neofs-rest-gw
$ git remote add upstream https://github.com/nspcc-dev/neofs-rest-gw
$ cd frostfs-rest-gw
$ git remote add upstream https://github.com/TrueCloudLab/frostfs-rest-gw
$ git fetch upstream
$ git merge upstream/master
...
@ -106,7 +106,7 @@ contributors".
To sign your work, just add a line like this at the end of your commit message:
```
Signed-off-by: Samii Sakisaka <samii@nspcc.ru>
Signed-off-by: Samii Sakisaka <samii@frostfs.info>
```
This can easily be done with the `--signoff` option to `git commit`.

View file

@ -21,7 +21,7 @@ FROM scratch
WORKDIR /
COPY --from=builder /etc/ssl/certs/ca-certificates.crt /etc/ssl/certs/
COPY --from=builder /src/bin/neofs-rest-gw /bin/neofs-rest-gw
COPY --from=builder /src/bin/frostfs-rest-gw /bin/frostfs-rest-gw
COPY --from=builder /src/static /static
ENTRYPOINT ["/bin/neofs-rest-gw"]
ENTRYPOINT ["/bin/frostfs-rest-gw"]

View file

@ -3,6 +3,6 @@ RUN apk add --update --no-cache bash ca-certificates
WORKDIR /
COPY bin/neofs-rest-gw /bin/neofs-rest-gw
COPY bin/frostfs-rest-gw /bin/frostfs-rest-gw
CMD ["neofs-rest-gw"]
CMD ["frostfs-rest-gw"]

View file

@ -8,7 +8,7 @@ BUILD_ARCH ?= amd64
GO_VERSION ?= 1.19
LINT_VERSION ?= v1.49.0
HUB_IMAGE ?= nspccdev/neofs-rest-gw
HUB_IMAGE ?= truecloudlab/frostfs-rest-gw
HUB_TAG ?= "$(shell echo ${VERSION} | sed 's/^v//')"
SWAGGER_VERSION ?= v0.29.0
@ -31,7 +31,7 @@ SWAGGER_URL ?= "https://github.com/go-swagger/go-swagger/releases/download/$(SWA
# List of binaries to build. For now just one.
BINDIR = bin
DIRS = "$(BINDIR)"
BINS = "$(BINDIR)/neofs-rest-gw"
BINS = "$(BINDIR)/frostfs-rest-gw"
.PHONY: help all dep clean format test cover lint docker/lint
@ -45,7 +45,7 @@ $(BINS): $(DIRS) dep
GOARCH=$(BUILD_ARCH) \
go build -v -trimpath \
-ldflags "-X main.Version=$(VERSION)" \
-o $@ ./cmd/neofs-rest-gw
-o $@ ./cmd/frostfs-rest-gw
$(DIRS):
@echo "⇒ Ensure dir: $@"
@ -91,7 +91,7 @@ format:
# Build clean Docker image
image:
@echo "⇒ Build NeoFS REST Gateway docker image "
@echo "⇒ Build FrostFS REST Gateway docker image "
@docker build \
--build-arg REPO=$(REPO) \
--build-arg VERSION=$(VERSION) \
@ -106,7 +106,7 @@ image-push:
# Build dirty Docker image
image-dirty:
@echo "⇒ Build NeoFS REST Gateway dirty docker image "
@echo "⇒ Build FrostFS REST Gateway dirty docker image "
@docker build \
--build-arg REPO=$(REPO) \
--build-arg VERSION=$(VERSION) \
@ -139,7 +139,7 @@ docker/generate-server:
--env HOME=/src \
quay.io/goswagger/swagger:$(SWAGGER_VERSION) generate server \
-t gen -f ./spec/rest.yaml --exclude-main \
-A neofs-rest-gw -P models.Principal \
-A frostfs-rest-gw -P models.Principal \
-C templates/server-config.yaml --template-dir templates
# Run linters in Docker

View file

@ -1,18 +1,16 @@
<p align="center">
<img src="./.github/logo.svg" width="500px" alt="NeoFS">
</p>
<p align="center">
REST server to interact with <a href="https://fs.neo.org">NeoFS</a>.
REST server to interact with <a href="https://frostfs.info">FrostFS</a>.
</p>
---
[![Report](https://goreportcard.com/badge/github.com/nspcc-dev/neofs-rest-gw)](https://goreportcard.com/report/github.com/nspcc-dev/neofs-rest-gw)
![GitHub release (latest SemVer)](https://img.shields.io/github/v/release/nspcc-dev/neofs-rest-gw?sort=semver)
![License](https://img.shields.io/github/license/nspcc-dev/neofs-rest-gw.svg?style=popout)
[![Report](https://goreportcard.com/badge/github.com/TrueCloudLab/frostfs-rest-gw)](https://goreportcard.com/report/github.com/TrueCloudLab/frostfs-rest-gw)
![GitHub release (latest SemVer)](https://img.shields.io/github/v/release/TrueCloudLab/frostfs-rest-gw?sort=semver)
![License](https://img.shields.io/github/license/TrueCloudLab/frostfs-rest-gw.svg?style=popout)
# neofs-rest-gw
# frostfs-rest-gw
NeoFS REST Gateway bridges NeoFS internal protocol and REST API server.
FrostFS REST Gateway bridges FrostFS internal protocol and REST API server.
## Installation
@ -29,10 +27,10 @@ Before building make sure you have the following tools:
First clone this repository:
```shell
$ git clone https://github.com/nspcc-dev/neofs-rest-gw
$ git clone https://github.com/TrueCloudLab/frostfs-rest-gw
```
Then run make to build `bin/neofs-rest-gw` binary:
Then run make to build `bin/frostfs-rest-gw` binary:
```shell
$ make
@ -84,16 +82,16 @@ generate-server Generate boilerplate by spec
### Docker
Or you can also use a [Docker image](https://hub.docker.com/r/nspccdev/neofs-rest-gw) provided for released
Or you can also use a [Docker image](https://hub.docker.com/r/truecloudlab/frostfs-rest-gw) provided for released
(and occasionally unreleased) versions of gateway (`:latest` points to the latest stable release).
## Execution
REST gateway itself is not a NeoFS node, so to access NeoFS it uses node's gRPC interface and you need to provide some
REST gateway itself is not a FrostFS node, so to access FrostFS it uses node's gRPC interface and you need to provide some
node that it will connect to. This can be done either via `-p` parameter or via `REST_GW_POOL_PEERS_<N>_ADDRESS` and
`REST_GW_POOL_PEERS_<N>_WEIGHT` environment variables (the gate supports multiple NeoFS nodes with weighted load balancing).
`REST_GW_POOL_PEERS_<N>_WEIGHT` environment variables (the gate supports multiple FrostFS nodes with weighted load balancing).
If you're launching REST gateway in bundle with [neofs-dev-env](https://github.com/nspcc-dev/neofs-dev-env), you can get
If you're launching REST gateway in bundle with [frostfs-dev-env](https://github.com/TrueCloudLab/frostfs-dev-env), you can get
an IP address of the node in output of `make hosts` command
(with s0*.neofs.devenv name).
@ -101,15 +99,15 @@ These two commands are functionally equivalent, they run the gate with one backe
settings):
```shell
$ neofs-rest-gw -p 192.168.130.72:8080
$ REST_GW_POOL_PEERS_0_ADDRESS=192.168.130.72:8080 neofs-rest-gw
$ frostfs-rest-gw -p 192.168.130.72:8080
$ REST_GW_POOL_PEERS_0_ADDRESS=192.168.130.72:8080 frostfs-rest-gw
```
It's also possible to specify uri scheme (grpc or grpcs) when using `-p`:
```shell
$ neofs-rest-gw -p grpc://192.168.130.72:8080
$ REST_GW_POOL_PEERS_0_ADDRESS=grpcs://192.168.130.72:8080 neofs-rest-gw
$ frostfs-rest-gw -p grpc://192.168.130.72:8080
$ REST_GW_POOL_PEERS_0_ADDRESS=grpcs://192.168.130.72:8080 frostfs-rest-gw
```
## Configuration
@ -119,7 +117,7 @@ specifically mentioned in most cases (see `--help` also). If you prefer a config
See [config](./config/config.yaml) and [defaults](./docs/gate-configuration.md) for example.
```shell
$ neofs-rest-gw --config config.yaml
$ frostfs-rest-gw --config config.yaml
```
## Docs

View file

@ -117,7 +117,7 @@ func config() *viper.Viper {
flagSet.Duration(cmdHealthcheckTimeout, defaultHealthcheckTimeout, "gRPC healthcheck timeout")
flagSet.Duration(cmdRebalance, defaultRebalanceTimer, "gRPC connection rebalance timer")
peers := flagSet.StringArrayP(cmdPeers, "p", nil, "NeoFS nodes")
peers := flagSet.StringArrayP(cmdPeers, "p", nil, "FrostFS nodes")
// init server flags
restapi.BindDefaultFlags(flagSet)
@ -146,7 +146,7 @@ func config() *viper.Viper {
switch {
case help != nil && *help:
fmt.Printf("NeoFS REST Gateway %s\n", Version)
fmt.Printf("FrostFS REST Gateway %s\n", Version)
flagSet.PrintDefaults()
fmt.Println()
@ -166,7 +166,7 @@ func config() *viper.Viper {
os.Exit(0)
case version != nil && *version:
fmt.Printf("NeoFS REST Gateway\nVersion: %s\nGoVersion: %s\n", Version, runtime.Version())
fmt.Printf("FrostFS REST Gateway\nVersion: %s\nGoVersion: %s\n", Version, runtime.Version())
os.Exit(0)
case configFlag != nil && *configFlag != "":
if cfgFile, err := os.Open(*configFlag); err != nil {

View file

@ -20,7 +20,7 @@ func main() {
neofsAPI, err := newNeofsAPI(ctx, logger, v)
if err != nil {
logger.Fatal("init neofs", zap.Error(err))
logger.Fatal("init frostfs", zap.Error(err))
}
swaggerSpec, err := loads.Analyzed(restapi.SwaggerJSON, "")

View file

@ -1,6 +1,6 @@
# NeoFS REST Gateway configuration file
# FrostFS REST Gateway configuration file
This section contains detailed NeoFS REST Gateway configuration file description
This section contains detailed FrostFS REST Gateway configuration file description
including default config values and some tips to set up configurable values.
There are some custom types used for brevity:
@ -88,23 +88,23 @@ pool:
error-threshold: 100
# Nodes configuration
# This configuration makes the gateway use the first node (node1.neofs:8080)
# while it's healthy. Otherwise, gateway uses the second node (node2.neofs:8080)
# for 10% of requests and the third node (node3.neofs:8080) for 90% of requests.
# This configuration makes the gateway use the first node (node1.frostfs:8080)
# while it's healthy. Otherwise, gateway uses the second node (node2.frostfs:8080)
# for 10% of requests and the third node (node3.frostfs:8080) for 90% of requests.
# Until nodes with the same priority level are healthy
# nodes with other priority are not used.
# The lower the value, the higher the priority.
peers:
0:
address: node1.neofs:8080
address: node1.frostfs:8080
priority: 1
weight: 1
1:
address: node2.neofs:8080
address: node2.frostfs:8080
priority: 2
weight: 0.1
2:
address: node3.neofs:8080
address: node3.frostfs:8080
priority: 2
weight: 0.9
```

View file

@ -14,7 +14,7 @@ import (
"github.com/go-openapi/validate"
)
// Action Rule execution result action in NeoFS EACL. Either allows or denies access if the rule's filters match.
// Action Rule execution result action in FrostFS EACL. Either allows or denies access if the rule's filters match.
//
// swagger:model Action
type Action string

View file

@ -14,7 +14,7 @@ import (
"github.com/go-openapi/validate"
)
// Address Address of the object in NeoFS.
// Address Address of the object in FrostFS.
// Example: {"containerId":"5HZTn5qkRnmgSz9gSrw22CEdPPk6nQhkwf2Mgzyvkikv","objectId":"8N3o7Dtr6T1xteCt6eRwhpmJ7JhME58Hyu1dvaswuTDd"}
//
// swagger:model Address

View file

@ -15,7 +15,7 @@ import (
"github.com/go-openapi/validate"
)
// Eacl EACL NeoFS table.
// Eacl EACL FrostFS table.
// Example: {"containerId":"5HZTn5qkRnmgSz9gSrw22CEdPPk6nQhkwf2Mgzyvkikv","records":[{"action":"GET","filters":[{"headerType":"OBJECT","key":"FileName","matchType":"STRING_EQUAL","value":"myfile"}],"operation":"ALLOW","targets":[{"role":"OTHERS"}]}]}
//
// swagger:model Eacl

View file

@ -14,7 +14,7 @@ import (
"github.com/go-openapi/validate"
)
// Filter Filter in NeoFS EACL to check particular properties of the request or the object.
// Filter Filter in FrostFS EACL to check particular properties of the request or the object.
// Example: {"headerType":"OBJECT","key":"FileName","matchType":"STRING_NOT_EQUAL","value":"myfile"}
//
// swagger:model Filter

View file

@ -14,7 +14,7 @@ import (
"github.com/go-openapi/validate"
)
// HeaderType Enumeration of possible sources of Headers to apply filters in NeoFS EACL.
// HeaderType Enumeration of possible sources of Headers to apply filters in FrostFS EACL.
//
// swagger:model HeaderType
type HeaderType string

View file

@ -14,7 +14,7 @@ import (
"github.com/go-openapi/validate"
)
// MatchType Match type in NeoFS EACL filter.
// MatchType Match type in FrostFS EACL filter.
//
// swagger:model MatchType
type MatchType string

View file

@ -14,7 +14,7 @@ import (
"github.com/go-openapi/validate"
)
// Operation Request's operation type to match in NeoFS EACL if the rule is applicable to a particular request.
// Operation Request's operation type to match in FrostFS EACL if the rule is applicable to a particular request.
//
// swagger:model Operation
type Operation string

View file

@ -15,7 +15,7 @@ import (
"github.com/go-openapi/validate"
)
// Record A single NeoFS EACL rule.
// Record A single FrostFS EACL rule.
// Example: {"action":"ALLOW","filters":[],"operation":"GET","targets":[{"keys":[],"role":"OTHERS"}]}
//
// swagger:model Record

View file

@ -1,19 +1,19 @@
// Code generated by go-swagger; DO NOT EDIT.
// Package restapi REST API NeoFS
// Package restapi REST API FrostFS
//
// REST API for native integration with NeoFS.
// Schemes:
// http
// Host: localhost:8090
// BasePath: /v1
// Version: v1
// REST API for native integration with FrostFS.
// Schemes:
// http
// Host: localhost:8090
// BasePath: /v1
// Version: v1
//
// Consumes:
// - application/json
// Consumes:
// - application/json
//
// Produces:
// - application/json
// Produces:
// - application/json
//
// swagger:meta
package restapi

View file

@ -23,8 +23,8 @@ func init() {
],
"swagger": "2.0",
"info": {
"description": "REST API for native integration with NeoFS.",
"title": "REST API NeoFS",
"description": "REST API for native integration with FrostFS.",
"title": "REST API FrostFS",
"version": "v1"
},
"host": "localhost:8090",
@ -33,11 +33,11 @@ func init() {
"/accounting/balance/{address}": {
"get": {
"security": [],
"description": "Getting balance of provided wallet address in NeoFS.",
"description": "Getting balance of provided wallet address in FrostFS.",
"produces": [
"application/json"
],
"summary": "Get balance in NeoFS",
"summary": "Get balance in FrostFS",
"operationId": "getBalance",
"parameters": [
{
@ -50,7 +50,7 @@ func init() {
],
"responses": {
"200": {
"description": "Balance of address in NeoFS",
"description": "Balance of address in FrostFS",
"schema": {
"$ref": "#/definitions/Balance"
},
@ -263,7 +263,7 @@ func init() {
}
},
"put": {
"summary": "Create new container in NeoFS",
"summary": "Create new container in FrostFS",
"operationId": "putContainer",
"parameters": [
{
@ -531,7 +531,7 @@ func init() {
"produces": [
"application/json"
],
"summary": "Upload object to NeoFS",
"summary": "Upload object to FrostFS",
"operationId": "putObject",
"parameters": [
{
@ -755,7 +755,7 @@ func init() {
}
},
"delete": {
"summary": "Remove object from NeoFS",
"summary": "Remove object from FrostFS",
"operationId": "deleteObject",
"parameters": [
{
@ -823,7 +823,7 @@ func init() {
},
"definitions": {
"Action": {
"description": "Rule execution result action in NeoFS EACL. Either allows or denies access if the rule's filters match.",
"description": "Rule execution result action in FrostFS EACL. Either allows or denies access if the rule's filters match.",
"type": "string",
"enum": [
"ALLOW",
@ -831,7 +831,7 @@ func init() {
]
},
"Address": {
"description": "Address of the object in NeoFS.",
"description": "Address of the object in FrostFS.",
"type": "object",
"required": [
"containerId",
@ -1097,7 +1097,7 @@ func init() {
}
},
"Eacl": {
"description": "EACL NeoFS table.",
"description": "EACL FrostFS table.",
"type": "object",
"required": [
"records"
@ -1170,7 +1170,7 @@ func init() {
]
},
"Filter": {
"description": "Filter in NeoFS EACL to check particular properties of the request or the object.",
"description": "Filter in FrostFS EACL to check particular properties of the request or the object.",
"type": "object",
"required": [
"headerType",
@ -1200,7 +1200,7 @@ func init() {
}
},
"HeaderType": {
"description": "Enumeration of possible sources of Headers to apply filters in NeoFS EACL.",
"description": "Enumeration of possible sources of Headers to apply filters in FrostFS EACL.",
"type": "string",
"enum": [
"REQUEST",
@ -1209,7 +1209,7 @@ func init() {
]
},
"MatchType": {
"description": "Match type in NeoFS EACL filter.",
"description": "Match type in FrostFS EACL filter.",
"type": "string",
"enum": [
"STRING_EQUAL",
@ -1373,7 +1373,7 @@ func init() {
}
},
"Operation": {
"description": "Request's operation type to match in NeoFS EACL if the rule is applicable to a particular request.",
"description": "Request's operation type to match in FrostFS EACL if the rule is applicable to a particular request.",
"type": "string",
"enum": [
"GET",
@ -1389,7 +1389,7 @@ func init() {
"type": "string"
},
"Record": {
"description": "A single NeoFS EACL rule.",
"description": "A single FrostFS EACL rule.",
"type": "object",
"required": [
"action",
@ -1646,14 +1646,14 @@ func init() {
"signatureScheme": {
"type": "boolean",
"default": false,
"description": "Use wallet connect signature scheme or native NeoFS signature.",
"description": "Use wallet connect signature scheme or native FrostFS signature.",
"name": "walletConnect",
"in": "query"
}
},
"securityDefinitions": {
"BearerAuth": {
"description": "Bearer token body to provide with NeoFS request. Must have 'Bearer ' prefix.",
"description": "Bearer token body to provide with FrostFS request. Must have 'Bearer ' prefix.",
"type": "apiKey",
"name": "Authorization",
"in": "header"
@ -1671,8 +1671,8 @@ func init() {
],
"swagger": "2.0",
"info": {
"description": "REST API for native integration with NeoFS.",
"title": "REST API NeoFS",
"description": "REST API for native integration with FrostFS.",
"title": "REST API FrostFS",
"version": "v1"
},
"host": "localhost:8090",
@ -1681,11 +1681,11 @@ func init() {
"/accounting/balance/{address}": {
"get": {
"security": [],
"description": "Getting balance of provided wallet address in NeoFS.",
"description": "Getting balance of provided wallet address in FrostFS.",
"produces": [
"application/json"
],
"summary": "Get balance in NeoFS",
"summary": "Get balance in FrostFS",
"operationId": "getBalance",
"parameters": [
{
@ -1698,7 +1698,7 @@ func init() {
],
"responses": {
"200": {
"description": "Balance of address in NeoFS",
"description": "Balance of address in FrostFS",
"schema": {
"$ref": "#/definitions/Balance"
},
@ -1827,7 +1827,7 @@ func init() {
{
"type": "boolean",
"default": false,
"description": "Use wallet connect signature scheme or native NeoFS signature.",
"description": "Use wallet connect signature scheme or native FrostFS signature.",
"name": "walletConnect",
"in": "query"
}
@ -1922,7 +1922,7 @@ func init() {
}
},
"put": {
"summary": "Create new container in NeoFS",
"summary": "Create new container in FrostFS",
"operationId": "putContainer",
"parameters": [
{
@ -1940,7 +1940,7 @@ func init() {
{
"type": "boolean",
"default": false,
"description": "Use wallet connect signature scheme or native NeoFS signature.",
"description": "Use wallet connect signature scheme or native FrostFS signature.",
"name": "walletConnect",
"in": "query"
},
@ -2057,7 +2057,7 @@ func init() {
{
"type": "boolean",
"default": false,
"description": "Use wallet connect signature scheme or native NeoFS signature.",
"description": "Use wallet connect signature scheme or native FrostFS signature.",
"name": "walletConnect",
"in": "query"
}
@ -2156,7 +2156,7 @@ func init() {
{
"type": "boolean",
"default": false,
"description": "Use wallet connect signature scheme or native NeoFS signature.",
"description": "Use wallet connect signature scheme or native FrostFS signature.",
"name": "walletConnect",
"in": "query"
},
@ -2228,7 +2228,7 @@ func init() {
"produces": [
"application/json"
],
"summary": "Upload object to NeoFS",
"summary": "Upload object to FrostFS",
"operationId": "putObject",
"parameters": [
{
@ -2246,7 +2246,7 @@ func init() {
{
"type": "boolean",
"default": false,
"description": "Use wallet connect signature scheme or native NeoFS signature.",
"description": "Use wallet connect signature scheme or native FrostFS signature.",
"name": "walletConnect",
"in": "query"
},
@ -2334,7 +2334,7 @@ func init() {
{
"type": "boolean",
"default": false,
"description": "Use wallet connect signature scheme or native NeoFS signature.",
"description": "Use wallet connect signature scheme or native FrostFS signature.",
"name": "walletConnect",
"in": "query"
},
@ -2445,7 +2445,7 @@ func init() {
{
"type": "boolean",
"default": false,
"description": "Use wallet connect signature scheme or native NeoFS signature.",
"description": "Use wallet connect signature scheme or native FrostFS signature.",
"name": "walletConnect",
"in": "query"
},
@ -2501,7 +2501,7 @@ func init() {
}
},
"delete": {
"summary": "Remove object from NeoFS",
"summary": "Remove object from FrostFS",
"operationId": "deleteObject",
"parameters": [
{
@ -2519,7 +2519,7 @@ func init() {
{
"type": "boolean",
"default": false,
"description": "Use wallet connect signature scheme or native NeoFS signature.",
"description": "Use wallet connect signature scheme or native FrostFS signature.",
"name": "walletConnect",
"in": "query"
},
@ -2591,7 +2591,7 @@ func init() {
},
"definitions": {
"Action": {
"description": "Rule execution result action in NeoFS EACL. Either allows or denies access if the rule's filters match.",
"description": "Rule execution result action in FrostFS EACL. Either allows or denies access if the rule's filters match.",
"type": "string",
"enum": [
"ALLOW",
@ -2599,7 +2599,7 @@ func init() {
]
},
"Address": {
"description": "Address of the object in NeoFS.",
"description": "Address of the object in FrostFS.",
"type": "object",
"required": [
"containerId",
@ -2865,7 +2865,7 @@ func init() {
}
},
"Eacl": {
"description": "EACL NeoFS table.",
"description": "EACL FrostFS table.",
"type": "object",
"required": [
"records"
@ -2938,7 +2938,7 @@ func init() {
]
},
"Filter": {
"description": "Filter in NeoFS EACL to check particular properties of the request or the object.",
"description": "Filter in FrostFS EACL to check particular properties of the request or the object.",
"type": "object",
"required": [
"headerType",
@ -2968,7 +2968,7 @@ func init() {
}
},
"HeaderType": {
"description": "Enumeration of possible sources of Headers to apply filters in NeoFS EACL.",
"description": "Enumeration of possible sources of Headers to apply filters in FrostFS EACL.",
"type": "string",
"enum": [
"REQUEST",
@ -2977,7 +2977,7 @@ func init() {
]
},
"MatchType": {
"description": "Match type in NeoFS EACL filter.",
"description": "Match type in FrostFS EACL filter.",
"type": "string",
"enum": [
"STRING_EQUAL",
@ -3141,7 +3141,7 @@ func init() {
}
},
"Operation": {
"description": "Request's operation type to match in NeoFS EACL if the rule is applicable to a particular request.",
"description": "Request's operation type to match in FrostFS EACL if the rule is applicable to a particular request.",
"type": "string",
"enum": [
"GET",
@ -3157,7 +3157,7 @@ func init() {
"type": "string"
},
"Record": {
"description": "A single NeoFS EACL rule.",
"description": "A single FrostFS EACL rule.",
"type": "object",
"required": [
"action",
@ -3414,14 +3414,14 @@ func init() {
"signatureScheme": {
"type": "boolean",
"default": false,
"description": "Use wallet connect signature scheme or native NeoFS signature.",
"description": "Use wallet connect signature scheme or native FrostFS signature.",
"name": "walletConnect",
"in": "query"
}
},
"securityDefinitions": {
"BearerAuth": {
"description": "Bearer token body to provide with NeoFS request. Must have 'Bearer ' prefix.",
"description": "Bearer token body to provide with FrostFS request. Must have 'Bearer ' prefix.",
"type": "apiKey",
"name": "Authorization",
"in": "header"

View file

@ -29,10 +29,10 @@ func NewAuth(ctx *middleware.Context, handler AuthHandler) *Auth {
return &Auth{Context: ctx, Handler: handler}
}
/*
Auth swagger:route POST /auth auth
/* Auth swagger:route POST /auth auth
Form bearer token to further requests
*/
type Auth struct {
Context *middleware.Context

View file

@ -16,8 +16,7 @@ import (
// AuthOKCode is the HTTP code returned for type AuthOK
const AuthOKCode int = 200
/*
AuthOK Base64 encoded stable binary marshaled bearer token bodies.
/*AuthOK Base64 encoded stable binary marshaled bearer token bodies.
swagger:response authOK
*/
@ -86,8 +85,7 @@ func (o *AuthOK) WriteResponse(rw http.ResponseWriter, producer runtime.Producer
// AuthBadRequestCode is the HTTP code returned for type AuthBadRequest
const AuthBadRequestCode int = 400
/*
AuthBadRequest Bad request
/*AuthBadRequest Bad request
swagger:response authBadRequest
*/

View file

@ -31,10 +31,10 @@ func NewDeleteContainer(ctx *middleware.Context, handler DeleteContainerHandler)
return &DeleteContainer{Context: ctx, Handler: handler}
}
/*
DeleteContainer swagger:route DELETE /containers/{containerId} deleteContainer
/* DeleteContainer swagger:route DELETE /containers/{containerId} deleteContainer
Delete container by id
*/
type DeleteContainer struct {
Context *middleware.Context

View file

@ -52,7 +52,7 @@ type DeleteContainerParams struct {
In: path
*/
ContainerID string
/*Use wallet connect signature scheme or native NeoFS signature.
/*Use wallet connect signature scheme or native FrostFS signature.
In: query
Default: false
*/

View file

@ -16,8 +16,7 @@ import (
// DeleteContainerOKCode is the HTTP code returned for type DeleteContainerOK
const DeleteContainerOKCode int = 200
/*
DeleteContainerOK Successful deletion.
/*DeleteContainerOK Successful deletion.
swagger:response deleteContainerOK
*/
@ -83,8 +82,7 @@ func (o *DeleteContainerOK) WriteResponse(rw http.ResponseWriter, producer runti
// DeleteContainerBadRequestCode is the HTTP code returned for type DeleteContainerBadRequest
const DeleteContainerBadRequestCode int = 400
/*
DeleteContainerBadRequest Bad request.
/*DeleteContainerBadRequest Bad request.
swagger:response deleteContainerBadRequest
*/

View file

@ -31,10 +31,10 @@ func NewDeleteObject(ctx *middleware.Context, handler DeleteObjectHandler) *Dele
return &DeleteObject{Context: ctx, Handler: handler}
}
/*
DeleteObject swagger:route DELETE /objects/{containerId}/{objectId} deleteObject
/* DeleteObject swagger:route DELETE /objects/{containerId}/{objectId} deleteObject
Remove object from FrostFS
Remove object from NeoFS
*/
type DeleteObject struct {
Context *middleware.Context

View file

@ -66,7 +66,7 @@ type DeleteObjectParams struct {
In: path
*/
ObjectID string
/*Use wallet connect signature scheme or native NeoFS signature.
/*Use wallet connect signature scheme or native FrostFS signature.
In: query
Default: false
*/

View file

@ -16,8 +16,7 @@ import (
// DeleteObjectOKCode is the HTTP code returned for type DeleteObjectOK
const DeleteObjectOKCode int = 200
/*
DeleteObjectOK Successful deletion.
/*DeleteObjectOK Successful deletion.
swagger:response deleteObjectOK
*/
@ -83,8 +82,7 @@ func (o *DeleteObjectOK) WriteResponse(rw http.ResponseWriter, producer runtime.
// DeleteObjectBadRequestCode is the HTTP code returned for type DeleteObjectBadRequest
const DeleteObjectBadRequestCode int = 400
/*
DeleteObjectBadRequest Bad request.
/*DeleteObjectBadRequest Bad request.
swagger:response deleteObjectBadRequest
*/

View file

@ -31,10 +31,10 @@ func NewFormBinaryBearer(ctx *middleware.Context, handler FormBinaryBearerHandle
return &FormBinaryBearer{Context: ctx, Handler: handler}
}
/*
FormBinaryBearer swagger:route GET /auth/bearer formBinaryBearer
/* FormBinaryBearer swagger:route GET /auth/bearer formBinaryBearer
Form binary bearer token
*/
type FormBinaryBearer struct {
Context *middleware.Context

View file

@ -47,7 +47,7 @@ type FormBinaryBearerParams struct {
In: header
*/
XBearerSignatureKey *string
/*Use wallet connect signature scheme or native NeoFS signature.
/*Use wallet connect signature scheme or native FrostFS signature.
In: query
Default: false
*/

View file

@ -16,8 +16,7 @@ import (
// FormBinaryBearerOKCode is the HTTP code returned for type FormBinaryBearerOK
const FormBinaryBearerOKCode int = 200
/*
FormBinaryBearerOK Base64 encoded stable binary marshaled bearer token.
/*FormBinaryBearerOK Base64 encoded stable binary marshaled bearer token.
swagger:response formBinaryBearerOK
*/
@ -83,8 +82,7 @@ func (o *FormBinaryBearerOK) WriteResponse(rw http.ResponseWriter, producer runt
// FormBinaryBearerBadRequestCode is the HTTP code returned for type FormBinaryBearerBadRequest
const FormBinaryBearerBadRequestCode int = 400
/*
FormBinaryBearerBadRequest Bad request
/*FormBinaryBearerBadRequest Bad request
swagger:response formBinaryBearerBadRequest
*/

View file

@ -117,7 +117,7 @@ func NewFrostfsRestGwAPI(spec *loads.Document) *FrostfsRestGwAPI {
}
}
/*FrostfsRestGwAPI REST API for native integration with NeoFS. */
/*FrostfsRestGwAPI REST API for native integration with FrostFS. */
type FrostfsRestGwAPI struct {
spec *loads.Document
context *middleware.Context

View file

@ -29,12 +29,12 @@ func NewGetBalance(ctx *middleware.Context, handler GetBalanceHandler) *GetBalan
return &GetBalance{Context: ctx, Handler: handler}
}
/*
GetBalance swagger:route GET /accounting/balance/{address} getBalance
/* GetBalance swagger:route GET /accounting/balance/{address} getBalance
# Get balance in NeoFS
Get balance in FrostFS
Getting balance of provided wallet address in FrostFS.
Getting balance of provided wallet address in NeoFS.
*/
type GetBalance struct {
Context *middleware.Context

View file

@ -16,8 +16,7 @@ import (
// GetBalanceOKCode is the HTTP code returned for type GetBalanceOK
const GetBalanceOKCode int = 200
/*
GetBalanceOK Balance of address in NeoFS
/*GetBalanceOK Balance of address in FrostFS
swagger:response getBalanceOK
*/
@ -83,8 +82,7 @@ func (o *GetBalanceOK) WriteResponse(rw http.ResponseWriter, producer runtime.Pr
// GetBalanceBadRequestCode is the HTTP code returned for type GetBalanceBadRequest
const GetBalanceBadRequestCode int = 400
/*
GetBalanceBadRequest Bad request
/*GetBalanceBadRequest Bad request
swagger:response getBalanceBadRequest
*/

View file

@ -29,10 +29,10 @@ func NewGetContainer(ctx *middleware.Context, handler GetContainerHandler) *GetC
return &GetContainer{Context: ctx, Handler: handler}
}
/*
GetContainer swagger:route GET /containers/{containerId} getContainer
/* GetContainer swagger:route GET /containers/{containerId} getContainer
Get container by id
*/
type GetContainer struct {
Context *middleware.Context

View file

@ -29,10 +29,10 @@ func NewGetContainerEACL(ctx *middleware.Context, handler GetContainerEACLHandle
return &GetContainerEACL{Context: ctx, Handler: handler}
}
/*
GetContainerEACL swagger:route GET /containers/{containerId}/eacl getContainerEAcl
/* GetContainerEACL swagger:route GET /containers/{containerId}/eacl getContainerEAcl
Get container EACL by id
*/
type GetContainerEACL struct {
Context *middleware.Context

View file

@ -16,8 +16,7 @@ import (
// GetContainerEACLOKCode is the HTTP code returned for type GetContainerEACLOK
const GetContainerEACLOKCode int = 200
/*
GetContainerEACLOK Container EACL information.
/*GetContainerEACLOK Container EACL information.
swagger:response getContainerEAclOK
*/
@ -83,8 +82,7 @@ func (o *GetContainerEACLOK) WriteResponse(rw http.ResponseWriter, producer runt
// GetContainerEACLBadRequestCode is the HTTP code returned for type GetContainerEACLBadRequest
const GetContainerEACLBadRequestCode int = 400
/*
GetContainerEACLBadRequest Bad request.
/*GetContainerEACLBadRequest Bad request.
swagger:response getContainerEAclBadRequest
*/

View file

@ -16,8 +16,7 @@ import (
// GetContainerOKCode is the HTTP code returned for type GetContainerOK
const GetContainerOKCode int = 200
/*
GetContainerOK Container info.
/*GetContainerOK Container info.
swagger:response getContainerOK
*/
@ -83,8 +82,7 @@ func (o *GetContainerOK) WriteResponse(rw http.ResponseWriter, producer runtime.
// GetContainerBadRequestCode is the HTTP code returned for type GetContainerBadRequest
const GetContainerBadRequestCode int = 400
/*
GetContainerBadRequest Bad request.
/*GetContainerBadRequest Bad request.
swagger:response getContainerBadRequest
*/

View file

@ -31,10 +31,10 @@ func NewGetObjectInfo(ctx *middleware.Context, handler GetObjectInfoHandler) *Ge
return &GetObjectInfo{Context: ctx, Handler: handler}
}
/*
GetObjectInfo swagger:route GET /objects/{containerId}/{objectId} getObjectInfo
/* GetObjectInfo swagger:route GET /objects/{containerId}/{objectId} getObjectInfo
Get object info by address
*/
type GetObjectInfo struct {
Context *middleware.Context

View file

@ -89,7 +89,7 @@ type GetObjectInfoParams struct {
In: query
*/
RangeOffset *int64
/*Use wallet connect signature scheme or native NeoFS signature.
/*Use wallet connect signature scheme or native FrostFS signature.
In: query
Default: false
*/

View file

@ -16,8 +16,7 @@ import (
// GetObjectInfoOKCode is the HTTP code returned for type GetObjectInfoOK
const GetObjectInfoOKCode int = 200
/*
GetObjectInfoOK Object info
/*GetObjectInfoOK Object info
swagger:response getObjectInfoOK
*/
@ -83,8 +82,7 @@ func (o *GetObjectInfoOK) WriteResponse(rw http.ResponseWriter, producer runtime
// GetObjectInfoBadRequestCode is the HTTP code returned for type GetObjectInfoBadRequest
const GetObjectInfoBadRequestCode int = 400
/*
GetObjectInfoBadRequest Bad request
/*GetObjectInfoBadRequest Bad request
swagger:response getObjectInfoBadRequest
*/

View file

@ -29,10 +29,10 @@ func NewListContainers(ctx *middleware.Context, handler ListContainersHandler) *
return &ListContainers{Context: ctx, Handler: handler}
}
/*
ListContainers swagger:route GET /containers listContainers
/* ListContainers swagger:route GET /containers listContainers
Get list of containers
*/
type ListContainers struct {
Context *middleware.Context

View file

@ -16,8 +16,7 @@ import (
// ListContainersOKCode is the HTTP code returned for type ListContainersOK
const ListContainersOKCode int = 200
/*
ListContainersOK Containers info.
/*ListContainersOK Containers info.
swagger:response listContainersOK
*/
@ -83,8 +82,7 @@ func (o *ListContainersOK) WriteResponse(rw http.ResponseWriter, producer runtim
// ListContainersBadRequestCode is the HTTP code returned for type ListContainersBadRequest
const ListContainersBadRequestCode int = 400
/*
ListContainersBadRequest Bad request.
/*ListContainersBadRequest Bad request.
swagger:response listContainersBadRequest
*/

View file

@ -29,10 +29,10 @@ func NewOptionsAuth(ctx *middleware.Context, handler OptionsAuthHandler) *Option
return &OptionsAuth{Context: ctx, Handler: handler}
}
/*
OptionsAuth swagger:route OPTIONS /auth optionsAuth
/* OptionsAuth swagger:route OPTIONS /auth optionsAuth
OptionsAuth options auth API
*/
type OptionsAuth struct {
Context *middleware.Context

View file

@ -29,10 +29,10 @@ func NewOptionsAuthBearer(ctx *middleware.Context, handler OptionsAuthBearerHand
return &OptionsAuthBearer{Context: ctx, Handler: handler}
}
/*
OptionsAuthBearer swagger:route OPTIONS /auth/bearer optionsAuthBearer
/* OptionsAuthBearer swagger:route OPTIONS /auth/bearer optionsAuthBearer
OptionsAuthBearer options auth bearer API
*/
type OptionsAuthBearer struct {
Context *middleware.Context

View file

@ -14,8 +14,7 @@ import (
// OptionsAuthBearerOKCode is the HTTP code returned for type OptionsAuthBearerOK
const OptionsAuthBearerOKCode int = 200
/*
OptionsAuthBearerOK CORS
/*OptionsAuthBearerOK CORS
swagger:response optionsAuthBearerOK
*/

View file

@ -14,8 +14,7 @@ import (
// OptionsAuthOKCode is the HTTP code returned for type OptionsAuthOK
const OptionsAuthOKCode int = 200
/*
OptionsAuthOK CORS
/*OptionsAuthOK CORS
swagger:response optionsAuthOK
*/

View file

@ -29,10 +29,10 @@ func NewOptionsContainersEACL(ctx *middleware.Context, handler OptionsContainers
return &OptionsContainersEACL{Context: ctx, Handler: handler}
}
/*
OptionsContainersEACL swagger:route OPTIONS /containers/{containerId}/eacl optionsContainersEAcl
/* OptionsContainersEACL swagger:route OPTIONS /containers/{containerId}/eacl optionsContainersEAcl
OptionsContainersEACL options containers e ACL API
*/
type OptionsContainersEACL struct {
Context *middleware.Context

View file

@ -14,8 +14,7 @@ import (
// OptionsContainersEACLOKCode is the HTTP code returned for type OptionsContainersEACLOK
const OptionsContainersEACLOKCode int = 200
/*
OptionsContainersEACLOK CORS
/*OptionsContainersEACLOK CORS
swagger:response optionsContainersEAclOK
*/

View file

@ -29,10 +29,10 @@ func NewOptionsContainersGetDelete(ctx *middleware.Context, handler OptionsConta
return &OptionsContainersGetDelete{Context: ctx, Handler: handler}
}
/*
OptionsContainersGetDelete swagger:route OPTIONS /containers/{containerId} optionsContainersGetDelete
/* OptionsContainersGetDelete swagger:route OPTIONS /containers/{containerId} optionsContainersGetDelete
OptionsContainersGetDelete options containers get delete API
*/
type OptionsContainersGetDelete struct {
Context *middleware.Context

View file

@ -14,8 +14,7 @@ import (
// OptionsContainersGetDeleteOKCode is the HTTP code returned for type OptionsContainersGetDeleteOK
const OptionsContainersGetDeleteOKCode int = 200
/*
OptionsContainersGetDeleteOK CORS
/*OptionsContainersGetDeleteOK CORS
swagger:response optionsContainersGetDeleteOK
*/

View file

@ -29,10 +29,10 @@ func NewOptionsContainersPutList(ctx *middleware.Context, handler OptionsContain
return &OptionsContainersPutList{Context: ctx, Handler: handler}
}
/*
OptionsContainersPutList swagger:route OPTIONS /containers optionsContainersPutList
/* OptionsContainersPutList swagger:route OPTIONS /containers optionsContainersPutList
OptionsContainersPutList options containers put list API
*/
type OptionsContainersPutList struct {
Context *middleware.Context

View file

@ -14,8 +14,7 @@ import (
// OptionsContainersPutListOKCode is the HTTP code returned for type OptionsContainersPutListOK
const OptionsContainersPutListOKCode int = 200
/*
OptionsContainersPutListOK CORS
/*OptionsContainersPutListOK CORS
swagger:response optionsContainersPutListOK
*/

View file

@ -29,10 +29,10 @@ func NewOptionsObjectsGetDelete(ctx *middleware.Context, handler OptionsObjectsG
return &OptionsObjectsGetDelete{Context: ctx, Handler: handler}
}
/*
OptionsObjectsGetDelete swagger:route OPTIONS /objects/{containerId}/{objectId} optionsObjectsGetDelete
/* OptionsObjectsGetDelete swagger:route OPTIONS /objects/{containerId}/{objectId} optionsObjectsGetDelete
OptionsObjectsGetDelete options objects get delete API
*/
type OptionsObjectsGetDelete struct {
Context *middleware.Context

View file

@ -14,8 +14,7 @@ import (
// OptionsObjectsGetDeleteOKCode is the HTTP code returned for type OptionsObjectsGetDeleteOK
const OptionsObjectsGetDeleteOKCode int = 200
/*
OptionsObjectsGetDeleteOK CORS
/*OptionsObjectsGetDeleteOK CORS
swagger:response optionsObjectsGetDeleteOK
*/

View file

@ -29,10 +29,10 @@ func NewOptionsObjectsPut(ctx *middleware.Context, handler OptionsObjectsPutHand
return &OptionsObjectsPut{Context: ctx, Handler: handler}
}
/*
OptionsObjectsPut swagger:route OPTIONS /objects optionsObjectsPut
/* OptionsObjectsPut swagger:route OPTIONS /objects optionsObjectsPut
OptionsObjectsPut options objects put API
*/
type OptionsObjectsPut struct {
Context *middleware.Context

View file

@ -14,8 +14,7 @@ import (
// OptionsObjectsPutOKCode is the HTTP code returned for type OptionsObjectsPutOK
const OptionsObjectsPutOKCode int = 200
/*
OptionsObjectsPutOK CORS
/*OptionsObjectsPutOK CORS
swagger:response optionsObjectsPutOK
*/

View file

@ -29,10 +29,10 @@ func NewOptionsObjectsSearch(ctx *middleware.Context, handler OptionsObjectsSear
return &OptionsObjectsSearch{Context: ctx, Handler: handler}
}
/*
OptionsObjectsSearch swagger:route OPTIONS /objects/{containerId}/search optionsObjectsSearch
/* OptionsObjectsSearch swagger:route OPTIONS /objects/{containerId}/search optionsObjectsSearch
OptionsObjectsSearch options objects search API
*/
type OptionsObjectsSearch struct {
Context *middleware.Context

View file

@ -14,8 +14,7 @@ import (
// OptionsObjectsSearchOKCode is the HTTP code returned for type OptionsObjectsSearchOK
const OptionsObjectsSearchOKCode int = 200
/*
OptionsObjectsSearchOK Base64 encoded stable binary marshaled bearer token.
/*OptionsObjectsSearchOK Base64 encoded stable binary marshaled bearer token.
swagger:response optionsObjectsSearchOK
*/

View file

@ -36,10 +36,10 @@ func NewPutContainer(ctx *middleware.Context, handler PutContainerHandler) *PutC
return &PutContainer{Context: ctx, Handler: handler}
}
/*
PutContainer swagger:route PUT /containers putContainer
/* PutContainer swagger:route PUT /containers putContainer
Create new container in FrostFS
Create new container in NeoFS
*/
type PutContainer struct {
Context *middleware.Context

View file

@ -31,10 +31,10 @@ func NewPutContainerEACL(ctx *middleware.Context, handler PutContainerEACLHandle
return &PutContainerEACL{Context: ctx, Handler: handler}
}
/*
PutContainerEACL swagger:route PUT /containers/{containerId}/eacl putContainerEAcl
/* PutContainerEACL swagger:route PUT /containers/{containerId}/eacl putContainerEAcl
Set container EACL by id
*/
type PutContainerEACL struct {
Context *middleware.Context

View file

@ -62,7 +62,7 @@ type PutContainerEACLParams struct {
In: body
*/
Eacl *models.Eacl
/*Use wallet connect signature scheme or native NeoFS signature.
/*Use wallet connect signature scheme or native FrostFS signature.
In: query
Default: false
*/

View file

@ -16,8 +16,7 @@ import (
// PutContainerEACLOKCode is the HTTP code returned for type PutContainerEACLOK
const PutContainerEACLOKCode int = 200
/*
PutContainerEACLOK Successful EACL updating.
/*PutContainerEACLOK Successful EACL updating.
swagger:response putContainerEAclOK
*/
@ -83,8 +82,7 @@ func (o *PutContainerEACLOK) WriteResponse(rw http.ResponseWriter, producer runt
// PutContainerEACLBadRequestCode is the HTTP code returned for type PutContainerEACLBadRequest
const PutContainerEACLBadRequestCode int = 400
/*
PutContainerEACLBadRequest Bad request.
/*PutContainerEACLBadRequest Bad request.
swagger:response putContainerEAclBadRequest
*/

View file

@ -65,7 +65,7 @@ type PutContainerParams struct {
Default: false
*/
NameScopeGlobal *bool
/*Use wallet connect signature scheme or native NeoFS signature.
/*Use wallet connect signature scheme or native FrostFS signature.
In: query
Default: false
*/

View file

@ -16,8 +16,7 @@ import (
// PutContainerOKCode is the HTTP code returned for type PutContainerOK
const PutContainerOKCode int = 200
/*
PutContainerOK Identifier of the created container.
/*PutContainerOK Identifier of the created container.
swagger:response putContainerOK
*/
@ -83,8 +82,7 @@ func (o *PutContainerOK) WriteResponse(rw http.ResponseWriter, producer runtime.
// PutContainerBadRequestCode is the HTTP code returned for type PutContainerBadRequest
const PutContainerBadRequestCode int = 400
/*
PutContainerBadRequest Bad request.
/*PutContainerBadRequest Bad request.
swagger:response putContainerBadRequest
*/

View file

@ -31,10 +31,10 @@ func NewPutObject(ctx *middleware.Context, handler PutObjectHandler) *PutObject
return &PutObject{Context: ctx, Handler: handler}
}
/*
PutObject swagger:route PUT /objects putObject
/* PutObject swagger:route PUT /objects putObject
Upload object to FrostFS
Upload object to NeoFS
*/
type PutObject struct {
Context *middleware.Context

View file

@ -66,7 +66,7 @@ type PutObjectParams struct {
In: body
*/
Object *models.ObjectUpload
/*Use wallet connect signature scheme or native NeoFS signature.
/*Use wallet connect signature scheme or native FrostFS signature.
In: query
Default: false
*/

View file

@ -16,8 +16,7 @@ import (
// PutObjectOKCode is the HTTP code returned for type PutObjectOK
const PutObjectOKCode int = 200
/*
PutObjectOK Address of uploaded objects
/*PutObjectOK Address of uploaded objects
swagger:response putObjectOK
*/
@ -83,8 +82,7 @@ func (o *PutObjectOK) WriteResponse(rw http.ResponseWriter, producer runtime.Pro
// PutObjectBadRequestCode is the HTTP code returned for type PutObjectBadRequest
const PutObjectBadRequestCode int = 400
/*
PutObjectBadRequest Bad request
/*PutObjectBadRequest Bad request
swagger:response putObjectBadRequest
*/

View file

@ -31,10 +31,10 @@ func NewSearchObjects(ctx *middleware.Context, handler SearchObjectsHandler) *Se
return &SearchObjects{Context: ctx, Handler: handler}
}
/*
SearchObjects swagger:route POST /objects/{containerId}/search searchObjects
/* SearchObjects swagger:route POST /objects/{containerId}/search searchObjects
Search objects by filters
*/
type SearchObjects struct {
Context *middleware.Context

View file

@ -90,7 +90,7 @@ type SearchObjectsParams struct {
In: body
*/
SearchFilters *models.SearchFilters
/*Use wallet connect signature scheme or native NeoFS signature.
/*Use wallet connect signature scheme or native FrostFS signature.
In: query
Default: false
*/

View file

@ -16,8 +16,7 @@ import (
// SearchObjectsOKCode is the HTTP code returned for type SearchObjectsOK
const SearchObjectsOKCode int = 200
/*
SearchObjectsOK List of objects
/*SearchObjectsOK List of objects
swagger:response searchObjectsOK
*/
@ -83,8 +82,7 @@ func (o *SearchObjectsOK) WriteResponse(rw http.ResponseWriter, producer runtime
// SearchObjectsBadRequestCode is the HTTP code returned for type SearchObjectsBadRequest
const SearchObjectsBadRequestCode int = 400
/*
SearchObjectsBadRequest Bad request
/*SearchObjectsBadRequest Bad request
swagger:response searchObjectsBadRequest
*/

View file

@ -1,7 +1,7 @@
swagger: "2.0"
info:
title: REST API NeoFS
description: REST API for native integration with NeoFS.
title: REST API FrostFS
description: REST API for native integration with FrostFS.
version: v1
host: localhost:8090
@ -14,7 +14,7 @@ securityDefinitions:
type: apiKey
in: header
name: Authorization
description: Bearer token body to provide with NeoFS request. Must have 'Bearer ' prefix.
description: Bearer token body to provide with FrostFS request. Must have 'Bearer ' prefix.
security:
- BearerAuth: [ ]
@ -35,7 +35,7 @@ parameters:
signatureScheme:
in: query
name: walletConnect
description: Use wallet connect signature scheme or native NeoFS signature.
description: Use wallet connect signature scheme or native FrostFS signature.
type: boolean
default: false
fullBearerToken:
@ -154,8 +154,8 @@ paths:
/accounting/balance/{address}:
get:
operationId: getBalance
summary: Get balance in NeoFS
description: Getting balance of provided wallet address in NeoFS.
summary: Get balance in FrostFS
description: Getting balance of provided wallet address in FrostFS.
security: [ ]
parameters:
- in: path
@ -167,7 +167,7 @@ paths:
- application/json
responses:
200:
description: Balance of address in NeoFS
description: Balance of address in FrostFS
schema:
$ref: '#/definitions/Balance'
headers:
@ -194,7 +194,7 @@ paths:
type: string
put:
operationId: putObject
summary: Upload object to NeoFS
summary: Upload object to FrostFS
parameters:
- $ref: '#/parameters/signatureParam'
- $ref: '#/parameters/signatureKeyParam'
@ -341,7 +341,7 @@ paths:
$ref: '#/definitions/ErrorResponse'
delete:
operationId: deleteObject
summary: Remove object from NeoFS
summary: Remove object from FrostFS
parameters:
- $ref: '#/parameters/signatureParam'
- $ref: '#/parameters/signatureKeyParam'
@ -376,7 +376,7 @@ paths:
type: string
put:
operationId: putContainer
summary: Create new container in NeoFS
summary: Create new container in FrostFS
parameters:
- $ref: '#/parameters/signatureParam'
- $ref: '#/parameters/signatureKeyParam'
@ -594,7 +594,7 @@ definitions:
container:
verb: PUT
Record:
description: A single NeoFS EACL rule.
description: A single FrostFS EACL rule.
type: object
properties:
action:
@ -622,13 +622,13 @@ definitions:
- role: OTHERS
keys: [ ]
Action:
description: Rule execution result action in NeoFS EACL. Either allows or denies access if the rule's filters match.
description: Rule execution result action in FrostFS EACL. Either allows or denies access if the rule's filters match.
type: string
enum:
- ALLOW
- DENY
Operation:
description: Request's operation type to match in NeoFS EACL if the rule is applicable to a particular request.
description: Request's operation type to match in FrostFS EACL if the rule is applicable to a particular request.
type: string
enum:
- GET
@ -639,7 +639,7 @@ definitions:
- RANGE
- RANGEHASH
Filter:
description: Filter in NeoFS EACL to check particular properties of the request or the object.
description: Filter in FrostFS EACL to check particular properties of the request or the object.
type: object
properties:
headerType:
@ -661,14 +661,14 @@ definitions:
key: FileName
value: myfile
HeaderType:
description: Enumeration of possible sources of Headers to apply filters in NeoFS EACL.
description: Enumeration of possible sources of Headers to apply filters in FrostFS EACL.
type: string
enum:
- REQUEST
- OBJECT
- SERVICE
MatchType:
description: Match type in NeoFS EACL filter.
description: Match type in FrostFS EACL filter.
type: string
enum:
- STRING_EQUAL
@ -992,7 +992,7 @@ definitions:
- key: Name
value: object
Address:
description: Address of the object in NeoFS.
description: Address of the object in FrostFS.
type: object
properties:
containerId:
@ -1006,7 +1006,7 @@ definitions:
objectId: 8N3o7Dtr6T1xteCt6eRwhpmJ7JhME58Hyu1dvaswuTDd
containerId: 5HZTn5qkRnmgSz9gSrw22CEdPPk6nQhkwf2Mgzyvkikv
Eacl:
description: EACL NeoFS table.
description: EACL FrostFS table.
type: object
properties:
containerId:

View file

@ -1,7 +1,7 @@
# neofs-rest-gw
# frostfs-rest-gw
NeoFS REST Gateway bridges NeoFS internal protocol and REST API server.
FrostFS REST Gateway bridges FrostFS internal protocol and REST API server.
### Open API specification
@ -9,7 +9,7 @@ See full [API spec](/v1/docs).
### Basic concept
Using this API you can interact with NeoFS nodes and manage containers and objects.
Using this API you can interact with FrostFS nodes and manage containers and objects.
#### Container
@ -72,7 +72,7 @@ Also, you can use this attribute to further object searching.
### Status codes
More about NeoFS status code you can
More about FrostFS status code you can
find [here](https://github.com/nspcc-dev/neofs-spec/blob/master/20-api-v2/status.md).

View file

@ -2,7 +2,7 @@
<html lang="en">
<head>
<meta charset="UTF-8">
<title>NeoFS REST GW</title>
<title>FrostFS REST GW</title>
</head>
<body>