2020-03-30 13:59:54 +00:00
|
|
|
# NeoFS smart-contract
|
|
|
|
|
2020-07-20 13:14:40 +00:00
|
|
|
This smart-contract controls list of NeoFS Inner Ring nodes, user assets in
|
|
|
|
NeoFS balance contract and stores NeoFS runtime configuration.
|
2020-03-30 13:59:54 +00:00
|
|
|
|
|
|
|
## Getting Started
|
|
|
|
|
|
|
|
This repository contains:
|
|
|
|
|
2020-07-20 13:14:40 +00:00
|
|
|
- NeoFS smart-contract in Go
|
2020-03-30 13:59:54 +00:00
|
|
|
|
|
|
|
### Prerequisites
|
|
|
|
|
|
|
|
To compile smart-contract you need:
|
|
|
|
|
2020-07-20 13:14:40 +00:00
|
|
|
- [neo-go](https://github.com/nspcc-dev/neo-go) >= 0.90.0
|
2020-03-30 13:59:54 +00:00
|
|
|
|
|
|
|
## Compiling
|
|
|
|
|
|
|
|
To compile smart contract run `make build` command. Compiled contract
|
2020-07-20 13:14:40 +00:00
|
|
|
`neofs_contract.nef` and manifest `config.json` will be placed in the same
|
|
|
|
directory.
|
2020-03-30 13:59:54 +00:00
|
|
|
|
|
|
|
```
|
2020-07-20 13:14:40 +00:00
|
|
|
$ make build
|
|
|
|
neo-go contract compile -i neofs_contract.go -c neofs_config.yml -m config.json
|
|
|
|
$ ls neofs_contract.nef config.json
|
|
|
|
config.json neofs_contract.nef
|
2020-03-30 13:59:54 +00:00
|
|
|
```
|
|
|
|
|
|
|
|
You can specify path to the `neo-go` binary with `NEOGO` environment variable:
|
|
|
|
|
|
|
|
```
|
|
|
|
$ NEOGO=/home/user/neo-go/bin/neo-go make build
|
|
|
|
```
|
|
|
|
|
|
|
|
## License
|
|
|
|
|
|
|
|
This project is licensed under the GPLv3 License - see the
|
|
|
|
[LICENSE.md](LICENSE.md) file for details
|