aboutsummaryrefslogtreecommitdiffstats
path: root/packages/contracts/migrations/2_deploy_independent_contracts.ts
diff options
context:
space:
mode:
authorAmir Bandeali <abandeali1@gmail.com>2017-11-30 14:02:43 +0800
committerAmir Bandeali <abandeali1@gmail.com>2017-11-30 23:10:18 +0800
commit4b3e0383235ca4ca0127f24c2e05543bb45a56bb (patch)
tree7a9c1888f99b1121826b09ca28185565ed47cd50 /packages/contracts/migrations/2_deploy_independent_contracts.ts
parentc57190dead41846809effb8823bd4e486ca72512 (diff)
downloaddexon-sol-tools-4b3e0383235ca4ca0127f24c2e05543bb45a56bb.tar
dexon-sol-tools-4b3e0383235ca4ca0127f24c2e05543bb45a56bb.tar.gz
dexon-sol-tools-4b3e0383235ca4ca0127f24c2e05543bb45a56bb.tar.bz2
dexon-sol-tools-4b3e0383235ca4ca0127f24c2e05543bb45a56bb.tar.lz
dexon-sol-tools-4b3e0383235ca4ca0127f24c2e05543bb45a56bb.tar.xz
dexon-sol-tools-4b3e0383235ca4ca0127f24c2e05543bb45a56bb.tar.zst
dexon-sol-tools-4b3e0383235ca4ca0127f24c2e05543bb45a56bb.zip
Add contracts to packages, fix most linting errors
Diffstat (limited to 'packages/contracts/migrations/2_deploy_independent_contracts.ts')
-rw-r--r--packages/contracts/migrations/2_deploy_independent_contracts.ts43
1 files changed, 43 insertions, 0 deletions
diff --git a/packages/contracts/migrations/2_deploy_independent_contracts.ts b/packages/contracts/migrations/2_deploy_independent_contracts.ts
new file mode 100644
index 000000000..10947655b
--- /dev/null
+++ b/packages/contracts/migrations/2_deploy_independent_contracts.ts
@@ -0,0 +1,43 @@
+import {Artifacts} from '../util/artifacts';
+import {ContractInstance, MultiSigConfigByNetwork} from '../util/types';
+const {
+ MultiSigWalletWithTimeLock,
+ TokenTransferProxy,
+ EtherToken,
+ TokenRegistry,
+} = new Artifacts(artifacts);
+
+let multiSigConfigByNetwork: MultiSigConfigByNetwork;
+try {
+ /* tslint:disable */
+ const multiSigConfig = require('./config/multisig');
+ multiSigConfigByNetwork = multiSigConfig.multiSig;
+ /* tslint:enable */
+} catch (e) {
+ multiSigConfigByNetwork = {};
+}
+
+module.exports = (deployer: any, network: string, accounts: string[]) => {
+ const defaultConfig = {
+ owners: [accounts[0], accounts[1]],
+ confirmationsRequired: 2,
+ secondsRequired: 0,
+ };
+ const config = multiSigConfigByNetwork[network] || defaultConfig;
+ if (network !== 'live') {
+ deployer.deploy(MultiSigWalletWithTimeLock, config.owners, config.confirmationsRequired, config.secondsRequired)
+ .then(() => {
+ return deployer.deploy(TokenTransferProxy);
+ }).then(() => {
+ return deployer.deploy(TokenRegistry);
+ }).then(() => {
+ return deployer.deploy(EtherToken);
+ });
+ } else {
+ deployer.deploy([
+ [MultiSigWalletWithTimeLock, config.owners, config.confirmationsRequired, config.secondsRequired],
+ TokenTransferProxy,
+ TokenRegistry,
+ ]);
+ }
+};