diff --git a/README.md b/README.md index 2b6865e..387db5a 100644 --- a/README.md +++ b/README.md @@ -57,8 +57,13 @@ Ethereum RPC port. $ npm run deploy:dao +4. Execute seeds to create demo contributors, contributons, etc. (optional) -## Contract Deployment + $ npm run seeds + +Step 2-4 is also summarized in `npm run bootstrap` + +## Contract architecture Contracts are organized in independent apps (see `/apps`) and are developed and deployed independently. Each app has a version and can be "installed" @@ -121,12 +126,21 @@ metamask account. $ truffle exec scripts/send-funds.js ### seeds.js + Run seeds defined in `config/seeds.js`. $ truffle exec scripts/seeds.js or $ npm run seeds +### current-address.js + +Prints all known DAO addresses and the DAO address for the current network + + $ truffle exec scripts/current-address.js + or + $ npm run dao:address + ## ACL / Permissions @@ -139,7 +153,7 @@ for more details. ### Example -1. Setup +1. Setup (see #Bootstrap) 1. Deploy each contract/apps (see `/apps/*`) 2. Create a new DAO (see scripts/deploy-kit.js) 2. Update diff --git a/package.json b/package.json index d6deeee..8c53f23 100644 --- a/package.json +++ b/package.json @@ -8,13 +8,15 @@ }, "scripts": { "build-json": "npm run compile-contracts && node ./scripts/build-json.js", - "repl": "truffle exec scripts/repl/js", + "repl": "truffle exec scripts/repl.js", + "seeds": "truffle exec scripts/seeds.js", "compile-contracts": "aragon contracts compile --all", "bootstrap": "npm run reset && truffle exec scripts/seeds.js", "reset": "npm run deploy:apps && npm run deploy:dao", "deploy:dao": "npm run compile-contracts && ENS=0x5f6f7e8cc7346a11ca2def8f827b7a0b612c56a1 aragon contracts exec scripts/deploy-kit.js", - "deploy:apps": "./deploy-apps.sh", + "deploy:apps": "./scripts/deploy-apps.sh", "devchain": "aragon devchain --port 7545", + "dao:address": "truffle exec scripts/current-address.js", "test": "echo \"Error: no test specified\" && exit 1" }, "repository": { diff --git a/scripts/current-address.js b/scripts/current-address.js new file mode 100644 index 0000000..1c0a19b --- /dev/null +++ b/scripts/current-address.js @@ -0,0 +1,22 @@ +const knownAddresses = require('../lib/addresses/dao.json'); + +module.exports = function(callback) { + + console.log('# All known addresses'); + Object.keys(knownAddresses).forEach((networkId) => { + console.log(` Network ID: ${networkId} => ${knownAddresses[networkId]}`); + }) + + const networkId = web3.version.network; + console.log(`# Current network ID: ${networkId}`); + + let currentAddress = knownAddresses[networkId]; + + if (currentAddress) { + console.log(`# Current address: ${currentAddress}`); + } else { + console.log(`No deployment found for network ID ${networkId}`); + } + + callback(); +};