WIP: FrostFS smart-contract
Find a file
Alex Vanin 8b1c8eb689 [#86] netmap: Add netmap candidate list getter
With `NetmapCandidate` storage nodes can monitor
if they are expected to be in the netmap at next
epoch or not. This is also important for monitoring
when some nodes does not bootstrap immediately.

Signed-off-by: Alex Vanin <alexey@nspcc.ru>
2021-06-02 13:46:42 +03:00
.github [#18] Update README file 2020-10-27 17:33:56 +03:00
alphabet [#79] Panic instead of returning bool value 2021-06-01 12:10:28 +03:00
audit [#79] Panic instead of returning bool value 2021-06-01 12:10:28 +03:00
balance [#79] Panic instead of returning bool value 2021-06-01 12:10:28 +03:00
common [#75] Fix typos 2021-05-19 11:54:17 +03:00
container [#79] Panic instead of returning bool value 2021-06-01 12:10:28 +03:00
neofs [#79] Panic instead of returning bool value 2021-06-01 12:10:28 +03:00
neofsid [#79] Panic instead of returning bool value 2021-06-01 12:10:28 +03:00
netmap [#86] netmap: Add netmap candidate list getter 2021-06-02 13:46:42 +03:00
processing [#72] Replace Init() methods with _deploy 2021-05-12 16:56:52 +03:00
proxy [#72] Replace Init() methods with _deploy 2021-05-12 16:56:52 +03:00
reputation [#72] Replace Init() methods with _deploy 2021-05-12 16:56:52 +03:00
.gitignore [#25] Update gitignore 2021-03-05 17:13:49 +03:00
CHANGELOG.md [#82] Restore the chronology of changes in changelog 2021-05-24 15:00:04 +03:00
go.mod [#81] Update neo-go to v0.95.0 2021-05-18 10:14:27 +03:00
go.sum [#81] Update neo-go to v0.95.0 2021-05-18 10:14:27 +03:00
LICENSE.md init commit 2020-04-01 19:27:29 +03:00
Makefile [#74] processing: Add processing contract 2021-05-05 12:27:24 +03:00
README.md [#81] Update neo-go to v0.95.0 2021-05-18 10:14:27 +03:00

NeoFS

NeoFS related smart contracts.


Overview

NeoFS-Contract contains all NeoFS related contracts written for neo-go compiler. These contracts are deployed both in main chain and side chain.

Main chain contracts:

  • neofs
  • processing

Side chain contracts:

  • alphabet
  • audit
  • balance
  • container
  • neofsid
  • netmap
  • proxy
  • reputation

Getting started

Prerequisites

To compile smart contracts you need:

Compilation

To build and compile smart contract run make all command. Compiled contracts *_contract.nef and manifest config.json files are placed in the corresponding directories.

$ make all
neo-go contract compile -i alphabet/alphabet_contract.go -c alphabet/config.yml -m alphabet/config.json
neo-go contract compile -i audit/audit_contract.go -c audit/config.yml -m audit/config.json
neo-go contract compile -i balance/balance_contract.go -c balance/config.yml -m balance/config.json
neo-go contract compile -i container/container_contract.go -c container/config.yml -m container/config.json
neo-go contract compile -i neofsid/neofsid_contract.go -c neofsid/config.yml -m neofsid/config.json
neo-go contract compile -i netmap/netmap_contract.go -c netmap/config.yml -m netmap/config.json
neo-go contract compile -i proxy/proxy_contract.go -c proxy/config.yml -m proxy/config.json
neo-go contract compile -i reputation/reputation_contract.go -c reputation/config.yml -m reputation/config.json
neo-go contract compile -i neofs/neofs_contract.go -c neofs/config.yml -m neofs/config.json
neo-go contract compile -i processing/processing_contract.go -c processing/config.yml -m processing/config.json

You can specify path to the neo-go binary with NEOGO environment variable:

$ NEOGO=/home/user/neo-go/bin/neo-go make all

Remove compiled files with make clean or make mr_proper command.

License

This project is licensed under the GPLv3 License - see the LICENSE.md file for details