secured-finance-watcher-stack/stack-orchestrator/stacks/secured-finance/README.md
Nabarun Gogoi b41b1fc315
Create stack for running secured-finanace-watcher-ts (#1)
* Clone required repositories

* Build container for stack

* Create deployment from spec file

* Rename directories

* Update README for clean up steps

* Update README

---------

Co-authored-by: neeraj <neeraj.rtly@gmail.com>
2024-05-30 11:24:30 +05:30

111 lines
2.5 KiB
Markdown

# Secured finance watcher
## Clone the stack repo
```bash
laconic-so fetch-stack git.vdb.to/cerc-io/secured-finance-watcher-stack
```
## Clone required repositories
```bash
laconic-so --stack ~/cerc/secured-finance-watcher-stack/stack-orchestrator/stacks/secured-finance setup-repositories
```
## Build the container image
```bash
laconic-so --stack ~/cerc/secured-finance-watcher-stack/stack-orchestrator/stacks/secured-finance build-containers
```
## Create a spec file for the deployment
```bash
laconic-so --stack ~/cerc/secured-finance-watcher-stack/stack-orchestrator/stacks/secured-finance deploy init --output secured-finance-spec.yml
```
### Ports
Edit `network` in the spec file to map container ports to host ports as required:
```yml
...
network:
ports:
secured-finance-watcher-db:
- 15432:5432
secured-finance-watcher-job-runner:
- 9000:9000
secured-finance-watcher-server:
- 3008:3008
- 9001:9001
```
## Create a deployment from the spec file
```bash
laconic-so --stack ~/cerc/secured-finance-watcher-stack/stack-orchestrator/stacks/secured-finance deploy create --spec-file secured-finance-spec.yml --deployment-dir secured-finance-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_ENDPOINTS=https://example-lotus-endpoint-1/rpc/v1,https://example-lotus-endpoint-2/rpc/v1
```
## Start the deployment
```bash
laconic-so deployment --dir secured-finance-deployment start
```
* To list down and monitor the running containers:
```bash
# With status
docker ps -a
# Check logs for a container
docker logs -f <CONTAINER_ID>
```
* Open the GQL playground at <http://localhost:3008/graphql>
```graphql
# Example query
query {
_meta {
block {
hash
number
timestamp
}
deployment
hasIndexingErrors
}
```
## Clean up
Stop all the secured finance services running in background:
```bash
# Only stop the docker containers
laconic-so deployment --dir secured-finance-deployment stop
# Run 'start' to restart the deployment
```
To stop all the secured finance services and also delete data:
```bash
# Stop the docker containers
laconic-so deployment --dir secured-finance-deployment stop --delete-volumes
# Remove deployment directory (deployment will have to be recreated for a re-run)
rm -r secured-finance-deployment
```