install ganche-cli
- npm install -g ganache-cli
- ganache-cli -m "fetch local valve black attend double eye excite planet primary install allow" -a 100
install graph-cli
- npm install -g @graphprotocol/graph-cli
install graph protocol
- clone repo https://github.com/graphprotocol/graph-node
- go to docker/docker-compose.yml and replace :
ethereum: "dev:http://parity:8545"
with :
ethereum: "dev:http://host.docker.internal:8545"
NOTE: every time ganache-cli is restarted, the name of the network (dev in this reference) needs to be changed with a new name
- run
docker-compose up
create subgraph
- open new terminal window
- clone https://github.com/MolochVentures/moloch-monorepo
- go to moloch-monorepo/packages/moloch-subgraph
- run
npm install
- run
graph create moloch --node http://127.0.0.1:8020
run truffle tests to populate graph and update contract address
- go to moloch-monorepo/packages/moloch
- run
npm install
- run
truffle test test/single.js
- Copy
moloch.address
from the output of the test. You'll need it in the next step!
run subgraph
- go to moloch-monorepo/packages/moloch-subgraph
- run
yarn codegen
- go to moloch-monorepo/packages/moloch-subgraph/subgraph.yaml
- update dataSources.source.address with output from running test. You should see something like this "moloch.address 0x9463308d1C9032cC464E395e54E55EDA77495c00". cut and paste the address, "0x9463308d1C9032cC464E395e54E55EDA77495c00" in this example.
- run
graph deploy moloch --debug --ipfs http://localhost:5001/ --node http://127.0.0.1:8020
run front-end
- open new terminal window
- go to moloch-monorepo/packages/moloch-frontend
- npm install
- npm start