Update subgraph watcher versions and instructions to use deployments (#775)

Part of https://www.notion.so/Setup-watchers-on-sandman-34b5514a10634c6fbf3ec338967c871c

Reviewed-on: cerc-io/stack-orchestrator#775
Co-authored-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
Co-committed-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
This commit is contained in:
Prathamesh Musale 2024-03-12 05:32:55 +00:00 committed by ashwin
parent 523b5779be
commit 17e860d6e4
5 changed files with 129 additions and 44 deletions

View File

@ -16,26 +16,55 @@ laconic-so --stack merkl-sushiswap-v3 build-containers
## Deploy ## Deploy
### Configuration Create a spec file for the deployment:
Create and update an env file to be used in the next step:
```bash ```bash
# External Filecoin (ETH RPC) endpoint to point the watcher laconic-so --stack merkl-sushiswap-v3 deploy init --output merkl-sushiswap-v3-spec.yml
CERC_ETH_RPC_ENDPOINT=
``` ```
### Deploy the stack ### Ports
Edit `network` in the spec file to map container ports to host ports as required:
```
...
network:
ports:
merkl-sushiswap-v3-watcher-db:
- '5432'
merkl-sushiswap-v3-watcher-job-runner:
- 9002:9000
merkl-sushiswap-v3-watcher-server:
- 127.0.0.1:3007:3008
- 9003:9001
```
### Create a deployment
Create a deployment from the spec file:
```bash ```bash
laconic-so --stack merkl-sushiswap-v3 deploy --cluster merkl_sushiswap_v3 --env-file <PATH_TO_ENV_FILE> up laconic-so --stack merkl-sushiswap-v3 deploy create --spec-file merkl-sushiswap-v3-spec.yml --deployment-dir merkl-sushiswap-v3-deployment
```
### Configuration
Inside deployment directory, open the `config.env` file and set following env variables:
```bash
# External Filecoin (ETH RPC) endpoint to point the watcher to
CERC_ETH_RPC_ENDPOINT=https://example-lotus-endpoint/rpc/v1
```
### Start the deployment
```bash
laconic-so deployment --dir merkl-sushiswap-v3-deployment start
``` ```
* To list down and monitor the running containers: * To list down and monitor the running containers:
```bash ```bash
laconic-so --stack merkl-sushiswap-v3 deploy --cluster merkl_sushiswap_v3 ps
# With status # With status
docker ps -a docker ps -a
@ -46,6 +75,7 @@ laconic-so --stack merkl-sushiswap-v3 deploy --cluster merkl_sushiswap_v3 --env-
* Open the GQL playground at http://localhost:3007/graphql * Open the GQL playground at http://localhost:3007/graphql
```graphql ```graphql
# Example query
{ {
_meta { _meta {
block { block {
@ -64,18 +94,21 @@ laconic-so --stack merkl-sushiswap-v3 deploy --cluster merkl_sushiswap_v3 --env-
## Clean up ## Clean up
Stop all the services running in background: Stop all the merkl-sushiswap-v3 services running in background:
```bash ```bash
laconic-so --stack merkl-sushiswap-v3 deploy --cluster merkl_sushiswap_v3 down # Only stop the docker containers
laconic-so deployment --dir merkl-sushiswap-v3-deployment stop
# Run 'start' to restart the deployment
``` ```
Clear volumes created by this stack: To stop all the merkl-sushiswap-v3 services and also delete data:
```bash ```bash
# List all relevant volumes # Stop the docker containers
docker volume ls -q --filter "name=merkl_sushiswap_v3" laconic-so deployment --dir merkl-sushiswap-v3-deployment stop --delete-volumes
# Remove all the listed volumes # Remove deployment directory (deployment will have to be recreated for a re-run)
docker volume rm $(docker volume ls -q --filter "name=merkl_sushiswap_v3") rm -r merkl-sushiswap-v3-deployment
``` ```

View File

@ -2,7 +2,7 @@ version: "1.0"
name: merkl-sushiswap-v3 name: merkl-sushiswap-v3
description: "SushiSwap v3 watcher stack" description: "SushiSwap v3 watcher stack"
repos: repos:
- github.com/cerc-io/merkl-sushiswap-v3-watcher-ts@v0.1.6 - github.com/cerc-io/merkl-sushiswap-v3-watcher-ts@v0.1.7
containers: containers:
- cerc/watcher-merkl-sushiswap-v3 - cerc/watcher-merkl-sushiswap-v3
pods: pods:

View File

@ -55,7 +55,7 @@ ports:
Create deployment: Create deployment:
```bash ```bash
laconic-so deploy create --spec-file sushiswap-subgraph-spec.yml --deployment-dir sushiswap-subgraph-deployment laconic-so --stack sushiswap-subgraph deploy create --spec-file sushiswap-subgraph-spec.yml --deployment-dir sushiswap-subgraph-deployment
``` ```
## Start the stack ## Start the stack

View File

@ -16,26 +16,55 @@ laconic-so --stack sushiswap-v3 build-containers
## Deploy ## Deploy
### Configuration Create a spec file for the deployment:
Create and update an env file to be used in the next step:
```bash ```bash
# External Filecoin (ETH RPC) endpoint to point the watcher laconic-so --stack sushiswap-v3 deploy init --output sushiswap-v3-spec.yml
CERC_ETH_RPC_ENDPOINT=
``` ```
### Deploy the stack ### Ports
Edit `network` in the spec file to map container ports to host ports as required:
```
...
network:
ports:
sushiswap-v3-watcher-db:
- '5432'
sushiswap-v3-watcher-job-runner:
- 9000:9000
sushiswap-v3-watcher-server:
- 127.0.0.1:3008:3008
- 9001:9001
```
### Create a deployment
Create a deployment from the spec file:
```bash ```bash
laconic-so --stack sushiswap-v3 deploy --cluster sushiswap_v3 --env-file <PATH_TO_ENV_FILE> up laconic-so --stack sushiswap-v3 deploy create --spec-file sushiswap-v3-spec.yml --deployment-dir sushiswap-v3-deployment
```
### Configuration
Inside deployment directory, open the `config.env` file and set following env variables:
```bash
# External Filecoin (ETH RPC) endpoint to point the watcher to
CERC_ETH_RPC_ENDPOINT=https://example-lotus-endpoint/rpc/v1
```
### Start the deployment
```bash
laconic-so deployment --dir sushiswap-v3-deployment start
``` ```
* To list down and monitor the running containers: * To list down and monitor the running containers:
```bash ```bash
laconic-so --stack sushiswap-v3 deploy --cluster sushiswap_v3 ps
# With status # With status
docker ps -a docker ps -a
@ -43,20 +72,43 @@ laconic-so --stack sushiswap-v3 deploy --cluster sushiswap_v3 --env-file <PATH_T
docker logs -f <CONTAINER_ID> docker logs -f <CONTAINER_ID>
``` ```
* Open the GQL playground at http://localhost:3008/graphql
```graphql
# Example query
{
_meta {
block {
number
timestamp
}
hasIndexingErrors
}
factories {
id
poolCount
}
}
```
## Clean up ## Clean up
Stop all the services running in background: Stop all the sushiswap-v3 services running in background:
```bash ```bash
laconic-so --stack sushiswap-v3 deploy --cluster sushiswap_v3 down # Only stop the docker containers
laconic-so deployment --dir sushiswap-v3-deployment stop
# Run 'start' to restart the deployment
``` ```
Clear volumes created by this stack: To stop all the sushiswap-v3 services and also delete data:
```bash ```bash
# List all relevant volumes # Stop the docker containers
docker volume ls -q --filter "name=sushiswap_v3" laconic-so deployment --dir sushiswap-v3-deployment stop --delete-volumes
# Remove all the listed volumes # Remove deployment directory (deployment will have to be recreated for a re-run)
docker volume rm $(docker volume ls -q --filter "name=sushiswap_v3") rm -r sushiswap-v3-deployment
``` ```

View File

@ -2,7 +2,7 @@ version: "1.0"
name: sushiswap-v3 name: sushiswap-v3
description: "SushiSwap v3 watcher stack" description: "SushiSwap v3 watcher stack"
repos: repos:
- github.com/cerc-io/sushiswap-v3-watcher-ts@v0.1.6 - github.com/cerc-io/sushiswap-v3-watcher-ts@v0.1.7
containers: containers:
- cerc/watcher-sushiswap-v3 - cerc/watcher-sushiswap-v3
pods: pods: