* Fix event subscription in erc20-watcher * Add demo for erc20-watcher * Update README
2.4 KiB
watcher-ts
Setup
There are packages used from github so we need to follow the following steps to install them:
-
Create a github PAT (personal access token) if it does not already exist.
-
Configure the PAT with scopes mentioned in https://docs.github.com/en/packages/learn-github-packages/about-permissions-for-github-packages#about-scopes-and-permissions-for-package-registries. This is required to install or publish github packages.
-
Follow the steps in https://docs.github.com/en/packages/working-with-a-github-packages-registry/working-with-the-npm-registry#authenticating-with-a-personal-access-token to authenticate to github packages. We can also run the follwing to authenticate by logging in to npm.
$ npm login --scope=@cerc-io --registry=https://npm.pkg.github.com > Username: USERNAME > Password: TOKEN > Email: PUBLIC-EMAIL-ADDRESS
Replace with the following:
USERNAME
: GitHub usernameTOKEN
: Personal access token (configured above)PUBLIC-EMAIL-ADDRESS
: Email address
-
When authenticating to github packages for the first time, yarn install may throw Unauthorized error. To overcome this we need to run yarn install in
packages/graph-node
directory. After this yarn install for watcher-ts works properly even from root of the repo.
This project uses yarn workspaces.
Install packages (Node.JS v16.13.1):
yarn
Build packages:
yarn build
Tests
Services
The default config files used by the watchers assume the following services are setup and running on localhost:
vulcanize/go-ethereum
on port 8545vulcanize/ipld-eth-server
with native GQL API enabled, on port 8082
Note
-
In
vulcanize/ipld-eth-server
, add the following statement to[ethereum]
section inenvironments/config.toml
:chainConfig = "./chain.json" # ETH_CHAIN_CONFIG