@@ -32,6 +32,7 @@ Extensive documentation is available [here](http://community.optimism.io/docs/).
...
@@ -32,6 +32,7 @@ Extensive documentation is available [here](http://community.optimism.io/docs/).
*[`data-transport-layer`](./packages/data-transport-layer): Event indexer, allowing the `l2geth` node to access L1 data
*[`data-transport-layer`](./packages/data-transport-layer): Event indexer, allowing the `l2geth` node to access L1 data
*[`batch-submitter`](./packages/batch-submitter): Daemon for submitting L2 transaction and state root batches to L1
*[`batch-submitter`](./packages/batch-submitter): Daemon for submitting L2 transaction and state root batches to L1
*[`message-relayer`](./packages/message-relayer): Service for relaying L2 messages to L1
*[`message-relayer`](./packages/message-relayer): Service for relaying L2 messages to L1
*[`replica-healthcheck`](./packages/replica-healthcheck): Service to monitor the health of different replica deployments
*[`l2geth`](./l2geth): Fork of [go-ethereum v1.9.10](https://github.com/ethereum/go-ethereum/tree/v1.9.10) implementing the [OVM](https://research.paradigm.xyz/optimism#optimistic-geth).
*[`l2geth`](./l2geth): Fork of [go-ethereum v1.9.10](https://github.com/ethereum/go-ethereum/tree/v1.9.10) implementing the [OVM](https://research.paradigm.xyz/optimism#optimistic-geth).
*[`integration-tests`](./integration-tests): Integration tests between a L1 testnet, `l2geth`,
*[`integration-tests`](./integration-tests): Integration tests between a L1 testnet, `l2geth`,
*[`ops`](./ops): Contains Dockerfiles for containerizing each service involved in the protocol,
*[`ops`](./ops): Contains Dockerfiles for containerizing each service involved in the protocol,
`replica-healthcheck` is an express server to be run alongside a replica instance, to ensure that the replica is healthy. Currently, it exposes metrics on syncing stats and exits when the replica has a mismatched state root against the sequencer.
## Getting started
### Building and usage
After cloning and switching to the repository, install dependencies:
```bash
$ yarn
```
Use the following commands to build, use, test, and lint:
```bash
$ yarn build
$ yarn start
$ yarn test
$ yarn lint
```
### Configuration
We're using `dotenv` for our configuration.
To configure the project, clone this repository and copy the `env.example` file to `.env`.
| REPLICA_HEALTHCHECK\_\_ETH_NETWORK | Ethereum Layer1 and Layer2 network (mainnet,kovan) | mainnet (change to `kovan` for the test network) |
| REPLICA_HEALTHCHECK\_\_ETH_NETWORK_RPC_PROVIDER | Layer2 source of truth endpoint, used for the sync check | https://mainnet.optimism.io (change to `https://kovan.optimism.io` for the test network) |
| REPLICA_HEALTHCHECK\_\_ETH_REPLICA_RPC_PROVIDER | Layer2 local replica endpoint, used for the sync check | http://localhost:9991 |
| REPLICA_HEALTHCHECK\_\_L2GETH_IMAGE_TAG | L2geth version | 0.4. |