github.com/shyftnetwork/go-empyrean@v1.8.3-0.20191127201940-fbfca9338f04/shyft-config/shyft-cli/web3/validSignersDeploy/index.js (about) 1 var Web3 = require('web3') 2 var fs = require('fs') 3 var path = require('path') 4 var solc = require('solc') 5 6 var validSignersFile = fs.readFileSync('./validSigners.sol') 7 8 var input = { 9 language: 'Solidity', 10 sources: { 11 'ValidSigners.sol': { 12 content: validSignersFile.toString() 13 } 14 }, 15 settings: { 16 outputSelection: { 17 '*': { 18 '*': [ '*' ] 19 } 20 } 21 } 22 } 23 24 var output = JSON.parse(solc.compile(JSON.stringify(input))) 25 26 console.log(output) 27 28 var abiB 29 var code 30 31 for (var contractName in output.contracts['ValidSigners.sol']) { 32 console.log(contractName + ': ' + output.contracts['ValidSigners.sol'][contractName].evm.bytecode.object) 33 code = output.contracts['ValidSigners.sol'][contractName].evm.bytecode.object 34 var abi = output.contracts['ValidSigners.sol'][contractName].abi 35 abiB = abi 36 console.log(JSON.stringify(abi)) 37 } 38 39 let web3 = new Web3(); 40 web3.setProvider(new web3.providers.HttpProvider('http://localhost:8545')); 41 42 var account = web3.eth.accounts[0] 43 44 var validSignersContract = web3.eth.contract(abiB) 45 46 let contract = validSignersContract.new({from: account, gas: 1000000, data: '0x' + code}); 47