Skip to content
The main Centrifuge Ethereum contracts
Branch: develop
Clone or download
Latest commit ef024bb Apr 19, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
contracts change InvoiceUnpaidNFT name and fix migrations against geth (#143) Apr 8, 2019
migrations change InvoiceUnpaidNFT name and fix migrations against geth (#143) Apr 8, 2019
scripts refactor migrations (#141) Apr 4, 2019
test add currentIndexOfToken method (#138) Apr 3, 2019
.babelrc publish build artifacts to npm and migrate to rinkeby (#47) Oct 10, 2018
.gitattributes add syntax highlight for solidity (#63) Nov 16, 2018
.gitignore Zos deploy (#91) Feb 8, 2019
.soliumignore add currentIndexOfToken method (#138) Apr 3, 2019
.soliumrc.json Add solium linter (#39) Sep 26, 2018
.travis.yml add publish script and cofigure develop brach (#136) Apr 3, 2019
CONDUCT.md README (#54) Oct 19, 2018
LICENSE README (#54) Oct 19, 2018
README.md Merge branch 'master' into mainnet-v1.0.0 Apr 16, 2019
empty.go Adding empty go file (#32) Sep 21, 2018
package-lock.json change InvoiceUnpaidNFT name and fix migrations against geth (#143) Apr 8, 2019
package.json update version Apr 11, 2019
truffle.js deploy v1.0.0 Apr 5, 2019
zos.json refactor migrations (#141) Apr 4, 2019
zos.kovan.json change name for InvoiceUnpaidNFT and reploy proxy Apr 8, 2019
zos.mainnet.json change admin of proxies and update InvoiceUnpaidNFT implementation wi… Apr 11, 2019
zos.rinkeby.json change name for InvoiceUnpaidNFT and reploy proxy Apr 8, 2019
zos.ropsten.json change admin of proxies and update InvoiceUnpaidNFT implementation wi… Apr 11, 2019

README.md

CI Status

Build Status

Getting help: Head over to our developer documentation at developer.centrifuge.io to learn how to setup a node and interact with it. If you have any questions, feel free to join our slack channel

DISCLAIMER: The code released here presents a very early alpha version that should not be used in production and has not been audited. Use this at your own risk.

Running tests

npm install 
npm run start-ganache
npm run test

Migrate script will run only all migrations under the 2 prefix, keep that in mind if adding a new prefix contract migration

Migration

Development

There are 2 development environments defined:

  • development which uses ganache
npm run start-ganache;
npm run migrate
  • localgeth which uses go-centrifuge
// Install and start a go-centrifuge node on port 9545
// https://github.com/centrifuge/go-centrifuge/blob/master/README.md
npm run migrate --network localgeth

ETH Test networks

Migration against ETH test networks is done using infura and truffle hd wallet and the project contains configurations for rinkeby, kovan and ropsten.

Requirements:

  • An account with funds for the desired network.
  • Setting the ENV variables
    • process.env.MIGRATE_ADDRESS // ETH account with funds
    • process.env.ETH_PRIVATE_KEY// Private Key for the ETH account
    • process.env.ETH_PROVIDER // infura end point

Running the migration

npm run migrate --network [rinkeby | kovan | ropsten]

Publishing

A travis pipeline deploys the contracts to the supported test networks and publishes the artifacts to npm.

npm install @centrifuge/ethereum-contracts

ZeppelinOS

All contracts,except Identity, are upgradable.

When using the contracts the published contracts make sure to choose an appropriate Proxy. An upgradable proxy enables the user to update the master copy (aka implementation). The default upgradable proxy is managed by an admin address .

You can’t perform that action at this time.