refactor DAO deployment
This commit is contained in:
parent
12341d1526
commit
e1fea4ed97
30
README.md
30
README.md
@ -141,6 +141,36 @@ Prints all known DAO addresses and the DAO address for the current network
|
|||||||
or
|
or
|
||||||
$ npm run dao:address
|
$ npm run dao:address
|
||||||
|
|
||||||
|
### deploy-kit.js
|
||||||
|
|
||||||
|
Deploys a new KreditsKit that allows to create a new DAO
|
||||||
|
|
||||||
|
$ truffle exec script/deploy-kit.js
|
||||||
|
or
|
||||||
|
$ npm run deploy:kit
|
||||||
|
|
||||||
|
`ENS` address is required as environment variable.
|
||||||
|
`DAO_FACTORY` can optionally be set as environment variable. (see aragon)
|
||||||
|
|
||||||
|
### new-dao.js
|
||||||
|
|
||||||
|
Creates and configures a new DAO instance.
|
||||||
|
|
||||||
|
$ truffle exec script/new-dao.js
|
||||||
|
or
|
||||||
|
$ npm run deploy:dao
|
||||||
|
|
||||||
|
KreditsKit address is load from `lib/addresses/KreditsKit.json` or can be
|
||||||
|
configured through the `KREDITS_KIT` environment variable.
|
||||||
|
|
||||||
|
### deploy-apps.sh
|
||||||
|
|
||||||
|
Runs `npm install` for each app and publishes a new version.
|
||||||
|
|
||||||
|
$ ./scripts/deploy-apps.sh
|
||||||
|
or
|
||||||
|
$ nppm run deploy:apps
|
||||||
|
|
||||||
|
|
||||||
## ACL / Permissions
|
## ACL / Permissions
|
||||||
|
|
||||||
|
@ -37,8 +37,12 @@
|
|||||||
"network": "development",
|
"network": "development",
|
||||||
"appName": "dummy.aragonpm.eth"
|
"appName": "dummy.aragonpm.eth"
|
||||||
},
|
},
|
||||||
|
"kovan": {
|
||||||
|
"network": "kovan",
|
||||||
|
"appName": "dummy.aragonpm.eth"
|
||||||
|
},
|
||||||
"default": {
|
"default": {
|
||||||
"network": "rpc",
|
"network": "development",
|
||||||
"appName": "dummy.aragonpm.eth"
|
"appName": "dummy.aragonpm.eth"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
@ -25,7 +25,7 @@ contract KreditsKit is KitBase, APMNamehashOpen, ACLSyntaxSugar {
|
|||||||
|
|
||||||
constructor (DAOFactory _fac, ENS _ens) public KitBase(_fac, _ens) {}
|
constructor (DAOFactory _fac, ENS _ens) public KitBase(_fac, _ens) {}
|
||||||
|
|
||||||
function newInstance() public returns (Kernel dao, ERCProxy proxy) {
|
function newInstance() public returns (Kernel dao) {
|
||||||
address root = msg.sender;
|
address root = msg.sender;
|
||||||
dao = fac.newDAO(this);
|
dao = fac.newDAO(this);
|
||||||
ACL acl = ACL(dao.acl());
|
ACL acl = ACL(dao.acl());
|
||||||
@ -71,7 +71,7 @@ contract KreditsKit is KitBase, APMNamehashOpen, ACLSyntaxSugar {
|
|||||||
cleanupDAOPermissions(dao, acl, root);
|
cleanupDAOPermissions(dao, acl, root);
|
||||||
|
|
||||||
emit DeployInstance(dao);
|
emit DeployInstance(dao);
|
||||||
//return dao;
|
return dao;
|
||||||
}
|
}
|
||||||
|
|
||||||
function _installApp(Kernel _dao, bytes32 _appId) internal returns (AragonApp) {
|
function _installApp(Kernel _dao, bytes32 _appId) internal returns (AragonApp) {
|
||||||
|
1
lib/addresses/KreditsKit.json
Normal file
1
lib/addresses/KreditsKit.json
Normal file
@ -0,0 +1 @@
|
|||||||
|
{"55632786":"0x4d97bd8efacf46b33c4438ed0b7b6aabfa2359fb"}
|
@ -1 +1 @@
|
|||||||
{"23827572":"0xe4e0e7fe54d9189df29a80c07ab733fc9a212761","65047207":"0xb67567175ac213f6f622b23d3d972d5b877c4813"}
|
{"23827572":"0xe4e0e7fe54d9189df29a80c07ab733fc9a212761","55632786":"0x4fde16c57ddf6d4870d5edd599074bb50dc96f88","65047207":"0xb67567175ac213f6f622b23d3d972d5b877c4813"}
|
189
package-lock.json
generated
189
package-lock.json
generated
@ -2894,6 +2894,45 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"eth-provider": {
|
||||||
|
"version": "0.2.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/eth-provider/-/eth-provider-0.2.1.tgz",
|
||||||
|
"integrity": "sha512-n9o0EgxYGDCnAmnQ5HJSAp77u/mWPvbztG0iGKvwj2fBTiyihLi61+wVJw/9INWUXZERGuM076jZqrDyY3OCzQ==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"ethereum-provider": "0.0.5",
|
||||||
|
"oboe": "2.1.4",
|
||||||
|
"uuid": "3.3.2",
|
||||||
|
"ws": "6.1.0",
|
||||||
|
"xhr2-cookies": "1.1.0"
|
||||||
|
},
|
||||||
|
"dependencies": {
|
||||||
|
"oboe": {
|
||||||
|
"version": "2.1.4",
|
||||||
|
"resolved": "https://registry.npmjs.org/oboe/-/oboe-2.1.4.tgz",
|
||||||
|
"integrity": "sha1-IMiM2wwVNxuwQRklfU/dNLCqSfY=",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"http-https": "^1.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"uuid": {
|
||||||
|
"version": "3.3.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.2.tgz",
|
||||||
|
"integrity": "sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"ws": {
|
||||||
|
"version": "6.1.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/ws/-/ws-6.1.0.tgz",
|
||||||
|
"integrity": "sha512-H3dGVdGvW2H8bnYpIDc3u3LH8Wue3Qh+Zto6aXXFzvESkTVT6rAfKR6tR/+coaUvxs8yHtmNV0uioBF62ZGSTg==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"async-limiter": "~1.0.0"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
"eth-query": {
|
"eth-query": {
|
||||||
"version": "2.1.2",
|
"version": "2.1.2",
|
||||||
"resolved": "https://registry.npmjs.org/eth-query/-/eth-query-2.1.2.tgz",
|
"resolved": "https://registry.npmjs.org/eth-query/-/eth-query-2.1.2.tgz",
|
||||||
@ -2985,6 +3024,12 @@
|
|||||||
"integrity": "sha1-Q812ac6VCnieFRABEY1NZfIQ7rc=",
|
"integrity": "sha1-Q812ac6VCnieFRABEY1NZfIQ7rc=",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
|
"ethereum-provider": {
|
||||||
|
"version": "0.0.5",
|
||||||
|
"resolved": "https://registry.npmjs.org/ethereum-provider/-/ethereum-provider-0.0.5.tgz",
|
||||||
|
"integrity": "sha512-YPRq+JZxbg4DvS3cQGsM9rs3gZCeu2LPJUtDGnywoSKk+L9QPkcJhELggrOJ/ahmcc0sfRfvxXtxknFyivU1+Q==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
"ethereumjs-abi": {
|
"ethereumjs-abi": {
|
||||||
"version": "git+https://github.com/ethereumjs/ethereumjs-abi.git#572d4bafe08a8a231137e1f9daeb0f8a23f197d2",
|
"version": "git+https://github.com/ethereumjs/ethereumjs-abi.git#572d4bafe08a8a231137e1f9daeb0f8a23f197d2",
|
||||||
"from": "git+https://github.com/ethereumjs/ethereumjs-abi.git",
|
"from": "git+https://github.com/ethereumjs/ethereumjs-abi.git",
|
||||||
@ -4607,8 +4652,7 @@
|
|||||||
"bindings": {
|
"bindings": {
|
||||||
"version": "1.3.0",
|
"version": "1.3.0",
|
||||||
"resolved": "https://registry.npmjs.org/bindings/-/bindings-1.3.0.tgz",
|
"resolved": "https://registry.npmjs.org/bindings/-/bindings-1.3.0.tgz",
|
||||||
"integrity": "sha512-DpLh5EzMR2kzvX1KIlVC0VkC3iZtHKTgdtZ0a3pglBZdaQFjt5S9g9xd1lE+YvXyfd6mtCeRnrUfOLYiTMlNSw==",
|
"integrity": "sha512-DpLh5EzMR2kzvX1KIlVC0VkC3iZtHKTgdtZ0a3pglBZdaQFjt5S9g9xd1lE+YvXyfd6mtCeRnrUfOLYiTMlNSw=="
|
||||||
"dev": true
|
|
||||||
},
|
},
|
||||||
"bip39": {
|
"bip39": {
|
||||||
"version": "2.4.0",
|
"version": "2.4.0",
|
||||||
@ -4627,7 +4671,6 @@
|
|||||||
"version": "1.1.5",
|
"version": "1.1.5",
|
||||||
"resolved": "https://registry.npmjs.org/bip66/-/bip66-1.1.5.tgz",
|
"resolved": "https://registry.npmjs.org/bip66/-/bip66-1.1.5.tgz",
|
||||||
"integrity": "sha1-AfqHSHhcpwlV1QESF9GzE5lpyiI=",
|
"integrity": "sha1-AfqHSHhcpwlV1QESF9GzE5lpyiI=",
|
||||||
"dev": true,
|
|
||||||
"requires": {
|
"requires": {
|
||||||
"safe-buffer": "^5.0.1"
|
"safe-buffer": "^5.0.1"
|
||||||
}
|
}
|
||||||
@ -4673,8 +4716,7 @@
|
|||||||
"bn.js": {
|
"bn.js": {
|
||||||
"version": "4.11.6",
|
"version": "4.11.6",
|
||||||
"resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.6.tgz",
|
"resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.6.tgz",
|
||||||
"integrity": "sha1-UzRK2xRhehP26N0s4okF0cC6MhU=",
|
"integrity": "sha1-UzRK2xRhehP26N0s4okF0cC6MhU="
|
||||||
"dev": true
|
|
||||||
},
|
},
|
||||||
"body-parser": {
|
"body-parser": {
|
||||||
"version": "1.18.3",
|
"version": "1.18.3",
|
||||||
@ -4706,8 +4748,7 @@
|
|||||||
"brorand": {
|
"brorand": {
|
||||||
"version": "1.1.0",
|
"version": "1.1.0",
|
||||||
"resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz",
|
"resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz",
|
||||||
"integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=",
|
"integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8="
|
||||||
"dev": true
|
|
||||||
},
|
},
|
||||||
"browser-stdout": {
|
"browser-stdout": {
|
||||||
"version": "1.3.1",
|
"version": "1.3.1",
|
||||||
@ -4718,7 +4759,6 @@
|
|||||||
"version": "1.2.0",
|
"version": "1.2.0",
|
||||||
"resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz",
|
"resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz",
|
||||||
"integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==",
|
"integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==",
|
||||||
"dev": true,
|
|
||||||
"requires": {
|
"requires": {
|
||||||
"buffer-xor": "^1.0.3",
|
"buffer-xor": "^1.0.3",
|
||||||
"cipher-base": "^1.0.0",
|
"cipher-base": "^1.0.0",
|
||||||
@ -4866,8 +4906,7 @@
|
|||||||
"buffer-xor": {
|
"buffer-xor": {
|
||||||
"version": "1.0.3",
|
"version": "1.0.3",
|
||||||
"resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz",
|
"resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz",
|
||||||
"integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=",
|
"integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk="
|
||||||
"dev": true
|
|
||||||
},
|
},
|
||||||
"builtin-modules": {
|
"builtin-modules": {
|
||||||
"version": "1.1.1",
|
"version": "1.1.1",
|
||||||
@ -4976,7 +5015,6 @@
|
|||||||
"version": "1.0.4",
|
"version": "1.0.4",
|
||||||
"resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz",
|
"resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz",
|
||||||
"integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==",
|
"integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==",
|
||||||
"dev": true,
|
|
||||||
"requires": {
|
"requires": {
|
||||||
"inherits": "^2.0.1",
|
"inherits": "^2.0.1",
|
||||||
"safe-buffer": "^5.0.1"
|
"safe-buffer": "^5.0.1"
|
||||||
@ -5137,7 +5175,6 @@
|
|||||||
"version": "1.2.0",
|
"version": "1.2.0",
|
||||||
"resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz",
|
"resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz",
|
||||||
"integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==",
|
"integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==",
|
||||||
"dev": true,
|
|
||||||
"requires": {
|
"requires": {
|
||||||
"cipher-base": "^1.0.1",
|
"cipher-base": "^1.0.1",
|
||||||
"inherits": "^2.0.1",
|
"inherits": "^2.0.1",
|
||||||
@ -5150,7 +5187,6 @@
|
|||||||
"version": "1.1.7",
|
"version": "1.1.7",
|
||||||
"resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz",
|
"resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz",
|
||||||
"integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==",
|
"integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==",
|
||||||
"dev": true,
|
|
||||||
"requires": {
|
"requires": {
|
||||||
"cipher-base": "^1.0.3",
|
"cipher-base": "^1.0.3",
|
||||||
"create-hash": "^1.1.0",
|
"create-hash": "^1.1.0",
|
||||||
@ -5467,7 +5503,6 @@
|
|||||||
"version": "1.0.1",
|
"version": "1.0.1",
|
||||||
"resolved": "https://registry.npmjs.org/drbg.js/-/drbg.js-1.0.1.tgz",
|
"resolved": "https://registry.npmjs.org/drbg.js/-/drbg.js-1.0.1.tgz",
|
||||||
"integrity": "sha1-Pja2xCs3BDgjzbwzLVjzHiRFSAs=",
|
"integrity": "sha1-Pja2xCs3BDgjzbwzLVjzHiRFSAs=",
|
||||||
"dev": true,
|
|
||||||
"requires": {
|
"requires": {
|
||||||
"browserify-aes": "^1.0.6",
|
"browserify-aes": "^1.0.6",
|
||||||
"create-hash": "^1.1.2",
|
"create-hash": "^1.1.2",
|
||||||
@ -5506,7 +5541,6 @@
|
|||||||
"version": "6.4.0",
|
"version": "6.4.0",
|
||||||
"resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.4.0.tgz",
|
"resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.4.0.tgz",
|
||||||
"integrity": "sha1-ysmvh2LIWDYYcAPI3+GT5eLq5d8=",
|
"integrity": "sha1-ysmvh2LIWDYYcAPI3+GT5eLq5d8=",
|
||||||
"dev": true,
|
|
||||||
"requires": {
|
"requires": {
|
||||||
"bn.js": "^4.4.0",
|
"bn.js": "^4.4.0",
|
||||||
"brorand": "^1.0.1",
|
"brorand": "^1.0.1",
|
||||||
@ -5750,8 +5784,7 @@
|
|||||||
"bn.js": {
|
"bn.js": {
|
||||||
"version": "4.11.8",
|
"version": "4.11.8",
|
||||||
"resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz",
|
"resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz",
|
||||||
"integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==",
|
"integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA=="
|
||||||
"dev": true
|
|
||||||
},
|
},
|
||||||
"eth-block-tracker": {
|
"eth-block-tracker": {
|
||||||
"version": "2.3.1",
|
"version": "2.3.1",
|
||||||
@ -5775,8 +5808,46 @@
|
|||||||
"integrity": "sha1-jZWCAsftuq6Dlwf7pvCf8ydgYhA=",
|
"integrity": "sha1-jZWCAsftuq6Dlwf7pvCf8ydgYhA=",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"ethereumjs-abi": "ethereumjs-abi@git+https://github.com/ethereumjs/ethereumjs-abi.git#00ba8463a7f7a67fcad737ff9c2ebd95643427f7",
|
"ethereumjs-abi": "git+https://github.com/ethereumjs/ethereumjs-abi.git",
|
||||||
"ethereumjs-util": "^5.1.1"
|
"ethereumjs-util": "^5.1.1"
|
||||||
|
},
|
||||||
|
"dependencies": {
|
||||||
|
"ethereumjs-abi": {
|
||||||
|
"version": "git+https://github.com/ethereumjs/ethereumjs-abi.git#572d4bafe08a8a231137e1f9daeb0f8a23f197d2",
|
||||||
|
"from": "git+https://github.com/ethereumjs/ethereumjs-abi.git",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"bn.js": "^4.11.8",
|
||||||
|
"ethereumjs-util": "^6.0.0"
|
||||||
|
},
|
||||||
|
"dependencies": {
|
||||||
|
"ethereumjs-util": {
|
||||||
|
"version": "6.1.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-6.1.0.tgz",
|
||||||
|
"integrity": "sha512-URESKMFbDeJxnAxPppnk2fN6Y3BIatn9fwn76Lm8bQlt+s52TpG8dN9M66MLPuRAiAOIqL3dfwqWJf0sd0fL0Q==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"bn.js": "^4.11.0",
|
||||||
|
"create-hash": "^1.1.2",
|
||||||
|
"ethjs-util": "0.1.6",
|
||||||
|
"keccak": "^1.0.2",
|
||||||
|
"rlp": "^2.0.0",
|
||||||
|
"safe-buffer": "^5.1.1",
|
||||||
|
"secp256k1": "^3.0.1"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"ethjs-util": {
|
||||||
|
"version": "0.1.6",
|
||||||
|
"resolved": "https://registry.npmjs.org/ethjs-util/-/ethjs-util-0.1.6.tgz",
|
||||||
|
"integrity": "sha512-CUnVOQq7gSpDHZVVrQW8ExxUETWrnrvXYvYz55wOU8Uj4VCgw56XC2B/fVqQN+f7gmrnRHSLVnFAwsCuNwji8w==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"is-hex-prefixed": "1.0.0",
|
||||||
|
"strip-hex-prefix": "1.0.0"
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"ethereum-common": {
|
"ethereum-common": {
|
||||||
@ -5788,7 +5859,6 @@
|
|||||||
"ethereumjs-abi": {
|
"ethereumjs-abi": {
|
||||||
"version": "git+https://github.com/ethereumjs/ethereumjs-abi.git#00ba8463a7f7a67fcad737ff9c2ebd95643427f7",
|
"version": "git+https://github.com/ethereumjs/ethereumjs-abi.git#00ba8463a7f7a67fcad737ff9c2ebd95643427f7",
|
||||||
"from": "ethereumjs-abi@git+https://github.com/ethereumjs/ethereumjs-abi.git#00ba8463a7f7a67fcad737ff9c2ebd95643427f7",
|
"from": "ethereumjs-abi@git+https://github.com/ethereumjs/ethereumjs-abi.git#00ba8463a7f7a67fcad737ff9c2ebd95643427f7",
|
||||||
"dev": true,
|
|
||||||
"requires": {
|
"requires": {
|
||||||
"bn.js": "^4.10.0",
|
"bn.js": "^4.10.0",
|
||||||
"ethereumjs-util": "^5.0.0"
|
"ethereumjs-util": "^5.0.0"
|
||||||
@ -5959,7 +6029,6 @@
|
|||||||
"version": "5.2.0",
|
"version": "5.2.0",
|
||||||
"resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-5.2.0.tgz",
|
"resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-5.2.0.tgz",
|
||||||
"integrity": "sha512-CJAKdI0wgMbQFLlLRtZKGcy/L6pzVRgelIZqRqNbuVFM3K9VEnyfbcvz0ncWMRNCe4kaHWjwRYQcYMucmwsnWA==",
|
"integrity": "sha512-CJAKdI0wgMbQFLlLRtZKGcy/L6pzVRgelIZqRqNbuVFM3K9VEnyfbcvz0ncWMRNCe4kaHWjwRYQcYMucmwsnWA==",
|
||||||
"dev": true,
|
|
||||||
"requires": {
|
"requires": {
|
||||||
"bn.js": "^4.11.0",
|
"bn.js": "^4.11.0",
|
||||||
"create-hash": "^1.1.2",
|
"create-hash": "^1.1.2",
|
||||||
@ -6054,7 +6123,6 @@
|
|||||||
"version": "0.1.4",
|
"version": "0.1.4",
|
||||||
"resolved": "https://registry.npmjs.org/ethjs-util/-/ethjs-util-0.1.4.tgz",
|
"resolved": "https://registry.npmjs.org/ethjs-util/-/ethjs-util-0.1.4.tgz",
|
||||||
"integrity": "sha1-HItoeSV0RO9NPz+7rC3tEs2ZfZM=",
|
"integrity": "sha1-HItoeSV0RO9NPz+7rC3tEs2ZfZM=",
|
||||||
"dev": true,
|
|
||||||
"requires": {
|
"requires": {
|
||||||
"is-hex-prefixed": "1.0.0",
|
"is-hex-prefixed": "1.0.0",
|
||||||
"strip-hex-prefix": "1.0.0"
|
"strip-hex-prefix": "1.0.0"
|
||||||
@ -6070,7 +6138,6 @@
|
|||||||
"version": "1.0.3",
|
"version": "1.0.3",
|
||||||
"resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz",
|
"resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz",
|
||||||
"integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==",
|
"integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==",
|
||||||
"dev": true,
|
|
||||||
"requires": {
|
"requires": {
|
||||||
"md5.js": "^1.3.4",
|
"md5.js": "^1.3.4",
|
||||||
"safe-buffer": "^5.1.1"
|
"safe-buffer": "^5.1.1"
|
||||||
@ -6573,7 +6640,6 @@
|
|||||||
"version": "3.0.4",
|
"version": "3.0.4",
|
||||||
"resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.0.4.tgz",
|
"resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.0.4.tgz",
|
||||||
"integrity": "sha1-X8hoaEfs1zSZQDMZprCj8/auSRg=",
|
"integrity": "sha1-X8hoaEfs1zSZQDMZprCj8/auSRg=",
|
||||||
"dev": true,
|
|
||||||
"requires": {
|
"requires": {
|
||||||
"inherits": "^2.0.1",
|
"inherits": "^2.0.1",
|
||||||
"safe-buffer": "^5.0.1"
|
"safe-buffer": "^5.0.1"
|
||||||
@ -6583,7 +6649,6 @@
|
|||||||
"version": "1.1.3",
|
"version": "1.1.3",
|
||||||
"resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.3.tgz",
|
"resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.3.tgz",
|
||||||
"integrity": "sha512-/UETyP0W22QILqS+6HowevwhEFJ3MBJnwTf75Qob9Wz9t0DPuisL8kW8YZMK62dHAKE1c1p+gY1TtOLY+USEHA==",
|
"integrity": "sha512-/UETyP0W22QILqS+6HowevwhEFJ3MBJnwTf75Qob9Wz9t0DPuisL8kW8YZMK62dHAKE1c1p+gY1TtOLY+USEHA==",
|
||||||
"dev": true,
|
|
||||||
"requires": {
|
"requires": {
|
||||||
"inherits": "^2.0.3",
|
"inherits": "^2.0.3",
|
||||||
"minimalistic-assert": "^1.0.0"
|
"minimalistic-assert": "^1.0.0"
|
||||||
@ -6614,7 +6679,6 @@
|
|||||||
"version": "1.0.1",
|
"version": "1.0.1",
|
||||||
"resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz",
|
"resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz",
|
||||||
"integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=",
|
"integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=",
|
||||||
"dev": true,
|
|
||||||
"requires": {
|
"requires": {
|
||||||
"hash.js": "^1.0.3",
|
"hash.js": "^1.0.3",
|
||||||
"minimalistic-assert": "^1.0.0",
|
"minimalistic-assert": "^1.0.0",
|
||||||
@ -6790,8 +6854,7 @@
|
|||||||
"is-hex-prefixed": {
|
"is-hex-prefixed": {
|
||||||
"version": "1.0.0",
|
"version": "1.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/is-hex-prefixed/-/is-hex-prefixed-1.0.0.tgz",
|
"resolved": "https://registry.npmjs.org/is-hex-prefixed/-/is-hex-prefixed-1.0.0.tgz",
|
||||||
"integrity": "sha1-fY035q135dEnFIkTxXPggtd39VQ=",
|
"integrity": "sha1-fY035q135dEnFIkTxXPggtd39VQ="
|
||||||
"dev": true
|
|
||||||
},
|
},
|
||||||
"is-natural-number": {
|
"is-natural-number": {
|
||||||
"version": "4.0.1",
|
"version": "4.0.1",
|
||||||
@ -6998,7 +7061,6 @@
|
|||||||
"version": "1.4.0",
|
"version": "1.4.0",
|
||||||
"resolved": "https://registry.npmjs.org/keccak/-/keccak-1.4.0.tgz",
|
"resolved": "https://registry.npmjs.org/keccak/-/keccak-1.4.0.tgz",
|
||||||
"integrity": "sha512-eZVaCpblK5formjPjeTBik7TAg+pqnDrMHIffSvi9Lh7PQgM1+hSzakUeZFCk9DVVG0dacZJuaz2ntwlzZUIBw==",
|
"integrity": "sha512-eZVaCpblK5formjPjeTBik7TAg+pqnDrMHIffSvi9Lh7PQgM1+hSzakUeZFCk9DVVG0dacZJuaz2ntwlzZUIBw==",
|
||||||
"dev": true,
|
|
||||||
"requires": {
|
"requires": {
|
||||||
"bindings": "^1.2.1",
|
"bindings": "^1.2.1",
|
||||||
"inherits": "^2.0.3",
|
"inherits": "^2.0.3",
|
||||||
@ -7354,7 +7416,6 @@
|
|||||||
"version": "1.3.4",
|
"version": "1.3.4",
|
||||||
"resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.4.tgz",
|
"resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.4.tgz",
|
||||||
"integrity": "sha1-6b296UogpawYsENA/Fdk1bCdkB0=",
|
"integrity": "sha1-6b296UogpawYsENA/Fdk1bCdkB0=",
|
||||||
"dev": true,
|
|
||||||
"requires": {
|
"requires": {
|
||||||
"hash-base": "^3.0.0",
|
"hash-base": "^3.0.0",
|
||||||
"inherits": "^2.0.1"
|
"inherits": "^2.0.1"
|
||||||
@ -7482,14 +7543,12 @@
|
|||||||
"minimalistic-assert": {
|
"minimalistic-assert": {
|
||||||
"version": "1.0.1",
|
"version": "1.0.1",
|
||||||
"resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz",
|
"resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz",
|
||||||
"integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==",
|
"integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A=="
|
||||||
"dev": true
|
|
||||||
},
|
},
|
||||||
"minimalistic-crypto-utils": {
|
"minimalistic-crypto-utils": {
|
||||||
"version": "1.0.1",
|
"version": "1.0.1",
|
||||||
"resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz",
|
"resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz",
|
||||||
"integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=",
|
"integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo="
|
||||||
"dev": true
|
|
||||||
},
|
},
|
||||||
"minimatch": {
|
"minimatch": {
|
||||||
"version": "3.0.4",
|
"version": "3.0.4",
|
||||||
@ -7593,8 +7652,7 @@
|
|||||||
"nan": {
|
"nan": {
|
||||||
"version": "2.10.0",
|
"version": "2.10.0",
|
||||||
"resolved": "https://registry.npmjs.org/nan/-/nan-2.10.0.tgz",
|
"resolved": "https://registry.npmjs.org/nan/-/nan-2.10.0.tgz",
|
||||||
"integrity": "sha512-bAdJv7fBLhWC+/Bls0Oza+mvTaNQtP+1RyhhhvD95pgUJz6XM5IzgmxOkItJ9tkoCiplvAnXI1tNmmUD/eScyA==",
|
"integrity": "sha512-bAdJv7fBLhWC+/Bls0Oza+mvTaNQtP+1RyhhhvD95pgUJz6XM5IzgmxOkItJ9tkoCiplvAnXI1tNmmUD/eScyA=="
|
||||||
"dev": true
|
|
||||||
},
|
},
|
||||||
"nano-json-stream-parser": {
|
"nano-json-stream-parser": {
|
||||||
"version": "0.1.2",
|
"version": "0.1.2",
|
||||||
@ -8266,7 +8324,6 @@
|
|||||||
"version": "2.0.2",
|
"version": "2.0.2",
|
||||||
"resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz",
|
"resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz",
|
||||||
"integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==",
|
"integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==",
|
||||||
"dev": true,
|
|
||||||
"requires": {
|
"requires": {
|
||||||
"hash-base": "^3.0.0",
|
"hash-base": "^3.0.0",
|
||||||
"inherits": "^2.0.1"
|
"inherits": "^2.0.1"
|
||||||
@ -8275,8 +8332,7 @@
|
|||||||
"rlp": {
|
"rlp": {
|
||||||
"version": "2.0.0",
|
"version": "2.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/rlp/-/rlp-2.0.0.tgz",
|
"resolved": "https://registry.npmjs.org/rlp/-/rlp-2.0.0.tgz",
|
||||||
"integrity": "sha1-nbOE/0uJqPYVY9kjldhiWxjzr7A=",
|
"integrity": "sha1-nbOE/0uJqPYVY9kjldhiWxjzr7A="
|
||||||
"dev": true
|
|
||||||
},
|
},
|
||||||
"rustbn.js": {
|
"rustbn.js": {
|
||||||
"version": "0.1.2",
|
"version": "0.1.2",
|
||||||
@ -8287,8 +8343,7 @@
|
|||||||
"safe-buffer": {
|
"safe-buffer": {
|
||||||
"version": "5.1.2",
|
"version": "5.1.2",
|
||||||
"resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
|
"resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
|
||||||
"integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==",
|
"integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g=="
|
||||||
"dev": true
|
|
||||||
},
|
},
|
||||||
"safer-buffer": {
|
"safer-buffer": {
|
||||||
"version": "2.1.2",
|
"version": "2.1.2",
|
||||||
@ -8328,7 +8383,6 @@
|
|||||||
"version": "3.5.0",
|
"version": "3.5.0",
|
||||||
"resolved": "https://registry.npmjs.org/secp256k1/-/secp256k1-3.5.0.tgz",
|
"resolved": "https://registry.npmjs.org/secp256k1/-/secp256k1-3.5.0.tgz",
|
||||||
"integrity": "sha512-e5QIJl8W7Y4tT6LHffVcZAxJjvpgE5Owawv6/XCYPQljE9aP2NFFddQ8OYMKhdLshNu88FfL3qCN3/xYkXGRsA==",
|
"integrity": "sha512-e5QIJl8W7Y4tT6LHffVcZAxJjvpgE5Owawv6/XCYPQljE9aP2NFFddQ8OYMKhdLshNu88FfL3qCN3/xYkXGRsA==",
|
||||||
"dev": true,
|
|
||||||
"requires": {
|
"requires": {
|
||||||
"bindings": "^1.2.1",
|
"bindings": "^1.2.1",
|
||||||
"bip66": "^1.1.3",
|
"bip66": "^1.1.3",
|
||||||
@ -8449,7 +8503,6 @@
|
|||||||
"version": "2.4.11",
|
"version": "2.4.11",
|
||||||
"resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz",
|
"resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz",
|
||||||
"integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==",
|
"integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==",
|
||||||
"dev": true,
|
|
||||||
"requires": {
|
"requires": {
|
||||||
"inherits": "^2.0.1",
|
"inherits": "^2.0.1",
|
||||||
"safe-buffer": "^5.0.1"
|
"safe-buffer": "^5.0.1"
|
||||||
@ -8683,7 +8736,6 @@
|
|||||||
"version": "1.0.0",
|
"version": "1.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/strip-hex-prefix/-/strip-hex-prefix-1.0.0.tgz",
|
"resolved": "https://registry.npmjs.org/strip-hex-prefix/-/strip-hex-prefix-1.0.0.tgz",
|
||||||
"integrity": "sha1-DF8VX+8RUTczd96du1iNoFUA428=",
|
"integrity": "sha1-DF8VX+8RUTczd96du1iNoFUA428=",
|
||||||
"dev": true,
|
|
||||||
"requires": {
|
"requires": {
|
||||||
"is-hex-prefixed": "1.0.0"
|
"is-hex-prefixed": "1.0.0"
|
||||||
}
|
}
|
||||||
@ -9391,19 +9443,62 @@
|
|||||||
"integrity": "sha1-jZWCAsftuq6Dlwf7pvCf8ydgYhA=",
|
"integrity": "sha1-jZWCAsftuq6Dlwf7pvCf8ydgYhA=",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"ethereumjs-abi": "ethereumjs-abi@git+https://github.com/ethereumjs/ethereumjs-abi.git#00ba8463a7f7a67fcad737ff9c2ebd95643427f7",
|
"ethereumjs-abi": "git+https://github.com/ethereumjs/ethereumjs-abi.git",
|
||||||
"ethereumjs-util": "^5.1.1"
|
"ethereumjs-util": "^5.1.1"
|
||||||
|
},
|
||||||
|
"dependencies": {
|
||||||
|
"bn.js": {
|
||||||
|
"version": "4.11.8",
|
||||||
|
"resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.11.8.tgz",
|
||||||
|
"integrity": "sha512-ItfYfPLkWHUjckQCk8xC+LwxgK8NYcXywGigJgSwOP8Y2iyWT4f2vsZnoOXTTbo+o5yXmIUJ4gn5538SO5S3gA==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
|
"ethereumjs-abi": {
|
||||||
|
"version": "git+https://github.com/ethereumjs/ethereumjs-abi.git#572d4bafe08a8a231137e1f9daeb0f8a23f197d2",
|
||||||
|
"from": "git+https://github.com/ethereumjs/ethereumjs-abi.git",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"bn.js": "^4.11.8",
|
||||||
|
"ethereumjs-util": "^6.0.0"
|
||||||
|
},
|
||||||
|
"dependencies": {
|
||||||
|
"ethereumjs-util": {
|
||||||
|
"version": "6.1.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/ethereumjs-util/-/ethereumjs-util-6.1.0.tgz",
|
||||||
|
"integrity": "sha512-URESKMFbDeJxnAxPppnk2fN6Y3BIatn9fwn76Lm8bQlt+s52TpG8dN9M66MLPuRAiAOIqL3dfwqWJf0sd0fL0Q==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"bn.js": "^4.11.0",
|
||||||
|
"create-hash": "^1.1.2",
|
||||||
|
"ethjs-util": "0.1.6",
|
||||||
|
"keccak": "^1.0.2",
|
||||||
|
"rlp": "^2.0.0",
|
||||||
|
"safe-buffer": "^5.1.1",
|
||||||
|
"secp256k1": "^3.0.1"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"ethereumjs-abi": {
|
"ethereumjs-abi": {
|
||||||
"version": "git+https://github.com/ethereumjs/ethereumjs-abi.git#00ba8463a7f7a67fcad737ff9c2ebd95643427f7",
|
"version": "git+https://github.com/ethereumjs/ethereumjs-abi.git#00ba8463a7f7a67fcad737ff9c2ebd95643427f7",
|
||||||
"from": "ethereumjs-abi@git+https://github.com/ethereumjs/ethereumjs-abi.git#00ba8463a7f7a67fcad737ff9c2ebd95643427f7",
|
"from": "ethereumjs-abi@git+https://github.com/ethereumjs/ethereumjs-abi.git#00ba8463a7f7a67fcad737ff9c2ebd95643427f7",
|
||||||
"dev": true,
|
|
||||||
"requires": {
|
"requires": {
|
||||||
"bn.js": "^4.10.0",
|
"bn.js": "^4.10.0",
|
||||||
"ethereumjs-util": "^5.0.0"
|
"ethereumjs-util": "^5.0.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"ethjs-util": {
|
||||||
|
"version": "0.1.6",
|
||||||
|
"resolved": "https://registry.npmjs.org/ethjs-util/-/ethjs-util-0.1.6.tgz",
|
||||||
|
"integrity": "sha512-CUnVOQq7gSpDHZVVrQW8ExxUETWrnrvXYvYz55wOU8Uj4VCgw56XC2B/fVqQN+f7gmrnRHSLVnFAwsCuNwji8w==",
|
||||||
|
"dev": true,
|
||||||
|
"requires": {
|
||||||
|
"is-hex-prefixed": "1.0.0",
|
||||||
|
"strip-hex-prefix": "1.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
"ws": {
|
"ws": {
|
||||||
"version": "5.2.0",
|
"version": "5.2.0",
|
||||||
"resolved": "https://registry.npmjs.org/ws/-/ws-5.2.0.tgz",
|
"resolved": "https://registry.npmjs.org/ws/-/ws-5.2.0.tgz",
|
||||||
@ -9444,12 +9539,12 @@
|
|||||||
"requires": {
|
"requires": {
|
||||||
"underscore": "1.8.3",
|
"underscore": "1.8.3",
|
||||||
"web3-core-helpers": "1.0.0-beta.34",
|
"web3-core-helpers": "1.0.0-beta.34",
|
||||||
"websocket": "websocket@git://github.com/frozeman/WebSocket-Node.git#6c72925e3f8aaaea8dc8450f97627e85263999f2"
|
"websocket": "git://github.com/frozeman/WebSocket-Node.git#browserifyCompatible"
|
||||||
},
|
},
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"websocket": {
|
"websocket": {
|
||||||
"version": "git://github.com/frozeman/WebSocket-Node.git#6c72925e3f8aaaea8dc8450f97627e85263999f2",
|
"version": "git://github.com/frozeman/WebSocket-Node.git#6c72925e3f8aaaea8dc8450f97627e85263999f2",
|
||||||
"from": "websocket@git://github.com/frozeman/WebSocket-Node.git#6c72925e3f8aaaea8dc8450f97627e85263999f2",
|
"from": "git://github.com/frozeman/WebSocket-Node.git#browserifyCompatible",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"requires": {
|
"requires": {
|
||||||
"debug": "^2.2.0",
|
"debug": "^2.2.0",
|
||||||
|
@ -12,8 +12,9 @@
|
|||||||
"seeds": "truffle exec scripts/seeds.js",
|
"seeds": "truffle exec scripts/seeds.js",
|
||||||
"compile-contracts": "aragon contracts compile --all",
|
"compile-contracts": "aragon contracts compile --all",
|
||||||
"bootstrap": "npm run reset && truffle exec scripts/seeds.js",
|
"bootstrap": "npm run reset && truffle exec scripts/seeds.js",
|
||||||
"reset": "npm run deploy:apps && npm run deploy:dao",
|
"reset": "npm run deploy:apps && npm run deploy:kit && npm run deploy:dao",
|
||||||
"deploy:dao": "npm run compile-contracts && ENS=0x5f6f7e8cc7346a11ca2def8f827b7a0b612c56a1 aragon contracts exec scripts/deploy-kit.js",
|
"deploy:kit": "npm run compile-contracts && ENS=0x5f6f7e8cc7346a11ca2def8f827b7a0b612c56a1 aragon contracts exec scripts/deploy-kit.js",
|
||||||
|
"deploy:dao": "aragon contracts exec scripts/new-dao.js",
|
||||||
"deploy:apps": "./scripts/deploy-apps.sh",
|
"deploy:apps": "./scripts/deploy-apps.sh",
|
||||||
"devchain": "aragon devchain --port 7545",
|
"devchain": "aragon devchain --port 7545",
|
||||||
"dao:address": "truffle exec scripts/current-address.js",
|
"dao:address": "truffle exec scripts/current-address.js",
|
||||||
@ -34,6 +35,7 @@
|
|||||||
"@aragon/kits-base": "^1.0.0",
|
"@aragon/kits-base": "^1.0.0",
|
||||||
"@aragon/os": "^4.1.0",
|
"@aragon/os": "^4.1.0",
|
||||||
"async-each-series": "^1.1.0",
|
"async-each-series": "^1.1.0",
|
||||||
|
"eth-provider": "^0.2.1",
|
||||||
"openzeppelin-solidity": "^2.2.0",
|
"openzeppelin-solidity": "^2.2.0",
|
||||||
"promptly": "^3.0.3",
|
"promptly": "^3.0.3",
|
||||||
"solc": "^0.4.25"
|
"solc": "^0.4.25"
|
||||||
|
@ -1,49 +1,39 @@
|
|||||||
const deployDAOFactory = require('@aragon/os/scripts/deploy-daofactory.js')
|
const deployDAOFactory = require('@aragon/os/scripts/deploy-daofactory.js')
|
||||||
const KreditsKit = artifacts.require('KreditsKit')
|
|
||||||
|
|
||||||
const fs = require('fs');
|
const fs = require('fs');
|
||||||
const path = require('path');
|
const path = require('path');
|
||||||
const libPath = path.join(__dirname, '..', 'lib');
|
const libPath = path.join(__dirname, '..', 'lib');
|
||||||
const addressesPath = path.join(libPath, 'addresses');
|
const addressesPath = path.join(libPath, 'addresses');
|
||||||
|
|
||||||
const ensAddr = process.env.ENS
|
const KreditsKit = artifacts.require('KreditsKit')
|
||||||
|
|
||||||
module.exports = async (callback) => {
|
const ensAddr = process.env.ENS
|
||||||
|
const daoFactoryAddress = process.env.DAO_FACTORY
|
||||||
|
|
||||||
|
module.exports = async function(callback) {
|
||||||
if (!ensAddr) {
|
if (!ensAddr) {
|
||||||
callback(new Error("ENS address not found in environment variable ENS"))
|
callback(new Error("ENS address not found in environment variable ENS"))
|
||||||
}
|
}
|
||||||
|
console.log(`Using ENS at: ${ensAddr}`);
|
||||||
|
|
||||||
deployDAOFactory(null, { artifacts, verbose: false })
|
let daoFactory
|
||||||
.catch(console.log)
|
if (daoFactoryAddress) {
|
||||||
.then((result) => {
|
daoFactory = DAOFactory.at(daoFactoryAddress)
|
||||||
const daoFactory = result.daoFactory
|
} else {
|
||||||
|
daoFactory = (await deployDAOFactory(null, { artifacts, verbose: false })).daoFactory
|
||||||
KreditsKit.new(daoFactory.address, ensAddr)
|
|
||||||
.catch(console.log)
|
|
||||||
.then((kreditsKit) => {
|
|
||||||
console.log(kreditsKit.address)
|
|
||||||
|
|
||||||
kreditsKit.newInstance().then((ret) => {
|
|
||||||
console.log(ret.logs);
|
|
||||||
const installedEvents = ret.logs.filter(log => log.event === 'InstalledApp').map(log => log.args)
|
|
||||||
const deployEvents = ret.logs.filter(log => log.event === 'DeployInstance').map(log => log.args)
|
|
||||||
|
|
||||||
if (deployEvents.length > 1) {
|
|
||||||
callback(new Error("More than one DAO was deployed. Something is wrong"))
|
|
||||||
}
|
}
|
||||||
const daoAddress = deployEvents[0].dao;
|
console.log(`Using DAOFactory at: ${daoFactory.address}`)
|
||||||
|
|
||||||
|
let kreditsKit = await KreditsKit.new(daoFactory.address, ensAddr)
|
||||||
|
|
||||||
const networkId = parseInt(web3.version.network);
|
const networkId = parseInt(web3.version.network);
|
||||||
|
|
||||||
let addresseFile = path.join(addressesPath, `dao.json`);
|
let addresseFile = path.join(addressesPath, `KreditsKit.json`);
|
||||||
let addresses = JSON.parse(fs.readFileSync(addresseFile));
|
let addresses = JSON.parse(fs.readFileSync(addresseFile));
|
||||||
|
|
||||||
addresses[networkId] = daoAddress;
|
addresses[networkId] = kreditsKit.address;
|
||||||
fs.writeFileSync(addresseFile, JSON.stringify(addresses));
|
fs.writeFileSync(addresseFile, JSON.stringify(addresses));
|
||||||
|
|
||||||
|
console.log(`Deployed KreditsKit at: ${kreditsKit.address}`);
|
||||||
callback();
|
callback();
|
||||||
}).catch((e) => {
|
|
||||||
console.log(e);
|
|
||||||
})
|
|
||||||
})
|
|
||||||
})
|
|
||||||
}
|
}
|
||||||
|
44
scripts/new-dao.js
Normal file
44
scripts/new-dao.js
Normal file
@ -0,0 +1,44 @@
|
|||||||
|
const fs = require('fs');
|
||||||
|
const path = require('path');
|
||||||
|
const libPath = path.join(__dirname, '..', 'lib');
|
||||||
|
const addressesPath = path.join(libPath, 'addresses');
|
||||||
|
|
||||||
|
const KreditsKit = artifacts.require('KreditsKit')
|
||||||
|
|
||||||
|
module.exports = async function(callback) {
|
||||||
|
const networkId = parseInt(web3.version.network);
|
||||||
|
|
||||||
|
let kitAddresseFile = path.join(addressesPath, 'KreditsKit.json');
|
||||||
|
let kitAddresses = JSON.parse(fs.readFileSync(kitAddresseFile));
|
||||||
|
let kreditsKitAddress = process.env.KREDITS_KIT || kitAddresses[networkId]
|
||||||
|
if (!kreditsKitAddress) {
|
||||||
|
callback(new Error("KreditsKit address not found in environment variable KREDITS_KIT"))
|
||||||
|
}
|
||||||
|
console.log(`Using KreditsKit at: ${kreditsKitAddress}`);
|
||||||
|
|
||||||
|
let kreditsKit = KreditsKit.at(kreditsKitAddress)
|
||||||
|
|
||||||
|
kreditsKit.newInstance().then((ret) => {
|
||||||
|
console.log(ret.logs);
|
||||||
|
const installedEvents = ret.logs.filter(log => log.event === 'InstalledApp').map(log => log.args)
|
||||||
|
const deployEvents = ret.logs.filter(log => log.event === 'DeployInstance').map(log => log.args)
|
||||||
|
|
||||||
|
if (deployEvents.length > 1) {
|
||||||
|
callback(new Error("More than one DAO was deployed. Something is wrong"))
|
||||||
|
}
|
||||||
|
const daoAddress = deployEvents[0].dao;
|
||||||
|
|
||||||
|
let addresseFile = path.join(addressesPath, `dao.json`);
|
||||||
|
let addresses = JSON.parse(fs.readFileSync(addresseFile));
|
||||||
|
|
||||||
|
addresses[networkId] = daoAddress;
|
||||||
|
fs.writeFileSync(addresseFile, JSON.stringify(addresses));
|
||||||
|
|
||||||
|
console.log(`\n\nCreated new DAO at: ${daoAddress}`)
|
||||||
|
|
||||||
|
callback();
|
||||||
|
}).catch((err) => {
|
||||||
|
console.log('failed to create a new instance')
|
||||||
|
callback(err)
|
||||||
|
})
|
||||||
|
}
|
39
truffle.js
39
truffle.js
@ -1,47 +1,28 @@
|
|||||||
/**
|
|
||||||
* https://github.com/aragon/aragonOS/blob/v4.0.0/truffle-config.js
|
|
||||||
*/
|
|
||||||
const homedir = require('homedir')
|
const homedir = require('homedir')
|
||||||
const path = require('path')
|
const path = require('path')
|
||||||
|
|
||||||
|
const provider = require('eth-provider')
|
||||||
|
|
||||||
const HDWalletProvider = require('truffle-hdwallet-provider')
|
const HDWalletProvider = require('truffle-hdwallet-provider')
|
||||||
const HDWalletProviderPrivkey = require('truffle-hdwallet-provider-privkey')
|
const HDWalletProviderPrivkey = require('truffle-hdwallet-provider-privkey')
|
||||||
|
|
||||||
const DEFAULT_MNEMONIC = 'explain tackle mirror kit van hammer degree position ginger unfair soup bonus'
|
|
||||||
|
|
||||||
const defaultRPC = (network) =>
|
|
||||||
`https://${network}.infura.io`
|
|
||||||
|
|
||||||
const configFilePath = (filename) =>
|
|
||||||
path.join(homedir(), `.aragon/${filename}`)
|
|
||||||
|
|
||||||
const mnemonic = () => {
|
|
||||||
try {
|
|
||||||
return require(configFilePath('mnemonic.json')).mnemonic
|
|
||||||
} catch (e) {
|
|
||||||
return DEFAULT_MNEMONIC
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
const settingsForNetwork = (network) => {
|
const settingsForNetwork = (network) => {
|
||||||
try {
|
try {
|
||||||
return require(configFilePath(`${network}_key.json`))
|
let settingsPath = process.env.KEY_FILE || path.join(homedir(), `.aragon/${network}.json`)
|
||||||
|
return require(settingsPath)
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
return { }
|
return null;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Lazily loaded provider
|
|
||||||
const providerForNetwork = (network) => (
|
const providerForNetwork = (network) => (
|
||||||
() => {
|
() => {
|
||||||
let { rpc, keys } = settingsForNetwork(network)
|
let settings = settingsForNetwork(network);
|
||||||
rpc = rpc || defaultRPC(network)
|
if (settings) {
|
||||||
|
return new HDWalletProviderPrivkey(settings.keys, settings.rpc)
|
||||||
if (!keys || keys.length == 0) {
|
} else {
|
||||||
return new HDWalletProvider(mnemonic(), rpc)
|
return provider('frame');
|
||||||
}
|
}
|
||||||
|
|
||||||
return new HDWalletProviderPrivkey(keys, rpc)
|
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
module.exports = {
|
module.exports = {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user