Centrifuge Ethereum Contracts
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.
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
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
- 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]
A travis pipeline deploys the contracts to the supported test networks and publishes the artifacts to npm.
npm install @centrifuge/ethereum-contracts
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 .