This is the entry-point project for the Emeris backend system.
The following blog posts give a good, high-level overview of the product's vision.
The Emeris backend can be summarised as a multi-blockchain indexer.
Original diagram is here
- api-server
- cns-server
- price-oracle
- rpc-watcher
- trace-listener
- ticket-watcher
- sdk-service
- models (shared library)
- utils (shared library)
The Github actions to deploy to various envs are in the .github subfolder.
The CI/CD workflows are described in the following diagram
Original diagram is here
Each push/merge to a service's main
branch (which passes testing), creates a Docker image.
This in turn triggers an automatic deployment to the DEV env.
We use Tilt to manage our local development
For more instructions see this page.
When monitoring is enabled, Grafana is installed with default credentials and will ask for a password change on first setup. Find below the default credentials
Username: admin Password: admin
The Github actions of this repo are using the following secrets
Secret | Notes | Source |
---|---|---|
SLACK_PROD_ALERTS | Webhook to the #emeris-alerts channel |
Alerts-PROD |
SLACK_STAGING_ALERTS | Webhook to the #emeris-alerts-staging channel |
Alerts-Staging |
SLACK_BACKEND_GHN | Webhook to the #emeris-backend-ghn channel |
Backend-GHN |
KUBECONFIG | DEV K8s cluster configuration | - |
KUBECONFIG_B64 | Dev K8s cluster configuration (Base64) | - |
KUBECONFIG_STAGING | Staging K8s cluster configuration | - |
KUBECONFIG_STAGING_B64 | Staging K8s cluster configuration (Base64) | - |
KUBECONFIG_PROD | PROD K8s cluster configuration | - |
KUBECONFIG_PROD_B64 | PROD K8s cluster configuration (Base64) | - |
FIXER_KEY | API key for token fiat prices | CoinLayer API |