Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Accounting support , v4.4.0 #200

Open
wants to merge 3 commits into
base: main
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 0 additions & 1 deletion .prettierignore
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,5 @@ zp-relayer/poolTxs.db

*.md
*.yml
**/lib/
**/build/
**/*.json
3 changes: 2 additions & 1 deletion .prettierrc.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,5 +4,6 @@
"singleQuote": true,
"arrowParens": "avoid",
"bracketSpacing": true,
"quoteProps": "consistent"
"quoteProps": "consistent",
"plugins": ["prettier-plugin-organize-imports"]
}
2 changes: 1 addition & 1 deletion CONFIGURATION.md
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ These environment variables are required for all services.
| RELAYER_MIN_GAS_PRICE_BUMP_FACTOR | Minimum `gasPrice` bump factor to meet RPC node requirements. Default `0.1`. | float |
| RELAYER_MAX_FEE_PER_GAS_LIMIT | Max limit on `maxFeePerGas` parameter for each transaction in wei | integer |
| RELAYER_MAX_SENT_QUEUE_SIZE | Maximum number of jobs waiting in the `sentTxQueue` at a time. | integer |
| RELAYER_TX_REDUNDANCY | If set to `true`, instructs relayer to send `eth_sendRawTransaction` requests through all available RPC urls defined in `RPC_URL` variables instead of using first available one. Defaults to `false` | boolean |
| TX_REDUNDANCY | If set to `true`, instructs relayer to send `eth_sendRawTransaction` requests through all available RPC urls defined in `RPC_URL` variables instead of using first available one. Defaults to `false` | boolean |
| RELAYER_INSUFFICIENT_BALANCE_CHECK_TIMEOUT | Interval in milliseconds to check for relayer balance update if transaction send failed with insufficient balance error. Default `60000` | integer |
| RELAYER_SENT_TX_DELAY | Delay in milliseconds for sentTxWorker to verify submitted transactions | integer |
| RELAYER_SENT_TX_ERROR_THRESHOLD | Maximum number of re-sends which is considered to be normal. After this threshold each re-send will log a corresponding error (but re-send loop will continue). Defaults to `3`. | integer |
Expand Down
81 changes: 51 additions & 30 deletions docker-compose.yaml
Original file line number Diff line number Diff line change
@@ -1,47 +1,68 @@
version: '3.8'

services:
ganache:
image: trufflesuite/ganache-cli
command: >
--deterministic
--gasLimit 20000000
--allowUnlimitedContractSize
--networkId 1337
--chainId 1337
ports:
- 8545:8545
contracts:
image: lok52/zp-contracts:latest
verifier:
image: lok52/verifier:latest
build:
context: ./docker
dockerfile: Dockerfile.verifier
redis:
redis_indexer:
command: [redis-server, --appendonly, 'yes']
image: redis:6.2.6
indexer:
image: ghcr.io/zkbob/zkbob-relayer:${RELAYER_VERSION:-latest}
build:
context: .
dockerfile: docker/Dockerfile.relayer
command: yarn run start:indexer:prod
container_name: indexer
volumes:
- ./zp-relayer/params:/app/zp-relayer/params/
env_file: ./zp-relayer/indexer.env
environment:
- INDEXER_PORT=80
- COMMON_REDIS_URL=redis_indexer:6379
ports:
- 6379:6379
- 8000:80
restart: always
depends_on:
- redis_indexer
redis_relayer:
command: [redis-server, --appendonly, 'yes']
image: redis:6.2.6
relayer:
image: ghcr.io/zkbob/zkbob-relayer:${RELAYER_VERSION:-latest}
build:
context: .
dockerfile: docker/Dockerfile.relayer
container_name: relayer
volumes:
- relayer_tree:/app/tree.db
- relayer_txs:/app/txs.db
- $PARAMS_PATH:/app/zp-relayer/params/
env_file: ./zp-relayer/relayer.env
- ./zp-relayer/params:/app/zp-relayer/params/
env_file: ./zp-relayer/relayer-decentralized.env
environment:
- RELAYER_PORT=80
- RELAYER_PROVER_URL=http://commitment_watcher:80
- COMMON_INDEXER_URL=http://indexer:80
- COMMON_REDIS_URL=redis_relayer:6379
ports:
- 8000:8000
watcher:
- 8001:80
restart: always
depends_on:
- redis_relayer
redis_prover:
command: [redis-server, --appendonly, 'yes']
image: redis:6.2.6
commitment_watcher:
image: ghcr.io/zkbob/zkbob-relayer:${RELAYER_VERSION:-latest}
build:
context: .
dockerfile: docker/Dockerfile.relayer
command: yarn run start:direct-deposit-watcher:prod
env_file: ./zp-relayer/watcher.env
volumes:
relayer_tree:
relayer_txs:
command: yarn run start:commitment-watcher:prod
container_name: commitment_watcher
volumes:
- ./zp-relayer/params:/app/zp-relayer/params/
env_file: ./zp-relayer/commitment-watcher.env
environment:
- COMMITMENT_WATCHER_PORT=80
- COMMON_INDEXER_URL=http://indexer:80
- COMMON_REDIS_URL=redis_prover:6379
ports:
- 8002:80
restart: always
depends_on:
- redis_prover
6 changes: 3 additions & 3 deletions docker/Dockerfile.relayer
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
FROM rust:1.69.0-slim-buster as base
FROM rust:1.77.0-slim-buster as base

WORKDIR /app

RUN apt-get update && \
apt-get -y install curl && \
curl -sL https://deb.nodesource.com/setup_18.x | bash && \
curl -sL https://deb.nodesource.com/setup_20.x | bash && \
apt-get -y install nodejs libclang-dev clang && \
npm install -g yarn cargo-cp-artifact

Expand All @@ -29,7 +29,7 @@ RUN yarn build:relayer
RUN yarn install --frozen-lockfile --production


FROM node:18
FROM node:20

ARG RELAYER_REF
ARG RELAYER_SHA
Expand Down
1 change: 1 addition & 0 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
"devDependencies": {
"@types/node": "^18.11.17",
"prettier": "^2.7.1",
"prettier-plugin-organize-imports": "^3.2.4",
"ts-loader": "9.4.2",
"tsc-alias": "^1.7.0",
"tsconfig-paths": "^4.1.0",
Expand Down
Loading
Loading