WIP: FrostFS smart-contract
Find a file
Evgenii Stratonikov db2b1be746 [#79] Panic instead of returning bool value
There is a number of contracts which return only `true` value.
Also handling `FAULT` on the client is easier then also checking return
value.

Signed-off-by: Evgenii Stratonikov <evgeniy@nspcc.ru>
2021-06-01 12:10:28 +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 [#79] Panic instead of returning bool value 2021-06-01 12:10:28 +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