Add a script to publish records from a given directory #62
@ -2,10 +2,12 @@
|
|||||||
|
|
||||||
## Setup
|
## Setup
|
||||||
|
|
||||||
|
* Install laconic CLI globally as suggested in the [installation steps](../README.md#install)
|
||||||
|
|
||||||
* Run the laconicd chain:
|
* Run the laconicd chain:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
# In laconcid
|
# In laconci2d repo
|
||||||
make install
|
make install
|
||||||
./scripts/init.sh clean
|
./scripts/init.sh clean
|
||||||
```
|
```
|
||||||
@ -13,38 +15,38 @@
|
|||||||
* Create and populate `config.yml` following [config.example.yml](./config.example.yml):
|
* Create and populate `config.yml` following [config.example.yml](./config.example.yml):
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
|
# In laconic-registry-cli repo root
|
||||||
cp config.example.yml config.yml
|
cp config.example.yml config.yml
|
||||||
|
|
||||||
# Change the gas value in config.yml
|
# Update the gas value in config.yml
|
||||||
# gas: 500000
|
# gas: 500000
|
||||||
|
|
||||||
# Get user key and set it to userKey in config.yml
|
# Get user private key
|
||||||
laconicd keys export alice --unarmored-hex --unsafe --keyring-backend test --home ~/.laconicd
|
laconicd keys export alice --unarmored-hex --unsafe --keyring-backend test --home ~/.laconicd
|
||||||
|
|
||||||
|
# Set the output as 'userKey' in config.yml
|
||||||
|
# userKey: <ALICE_PRIVATE_KEY>
|
||||||
|
|
||||||
# Create a bond
|
# Create a bond
|
||||||
laconicd tx bond create 100000000000photon --fees 100photon --from alice
|
laconic --config config.yml registry bond create --type photon --quantity 100000000000
|
||||||
|
|
||||||
# Get the bond id and set it to bondId in config.yml
|
# Get the bond id
|
||||||
laconicd query bond list
|
laconic --config config.yml registry bond list | jq -r '.[].id'
|
||||||
```
|
|
||||||
|
|
||||||
* Install the CLI:
|
# Set the output as 'bondId' in config.yml
|
||||||
|
# bondId: <BOND_ID>
|
||||||
```bash
|
|
||||||
yarn && yarn build
|
|
||||||
yarn global add file:$PWD
|
|
||||||
```
|
```
|
||||||
|
|
||||||
## Run
|
## Run
|
||||||
|
|
||||||
* Publish records from [`demo/records`](./demo/records):
|
* Publish records:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
# Publishes records and corresponding 'deployment' records
|
# Publishes records and corresponding 'deployment' records from given directory
|
||||||
|
|
||||||
# In laconic-registry-cli
|
# In laconic-registry-cli repo root
|
||||||
# Use records dir path for '--records' as required
|
# Use records dir path for '--records' as required
|
||||||
yarn ts-node demo/scripts/publish-records.ts --config config.yml --records demo/records
|
yarn ts-node demo/scripts/publish-records.ts --config config.yml --records <RECORDS_DIR>
|
||||||
```
|
```
|
||||||
|
|
||||||
### Example
|
### Example
|
||||||
|
@ -1,16 +0,0 @@
|
|||||||
{
|
|
||||||
"type": "ServiceDeploymentRecord",
|
|
||||||
"version": "0.1.0",
|
|
||||||
"schema": "",
|
|
||||||
"request": "",
|
|
||||||
"name": "lotus",
|
|
||||||
"service": "<service-record-id>",
|
|
||||||
"url": "https://lotus-rpc-endpoint.example.com",
|
|
||||||
"needs_auth": false,
|
|
||||||
"meta": {
|
|
||||||
"machine_name": "",
|
|
||||||
"node_type": "archive",
|
|
||||||
"chain": "314",
|
|
||||||
"eth_rpc_enabled": true
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,16 +0,0 @@
|
|||||||
{
|
|
||||||
"type": "ServiceDeploymentRecord",
|
|
||||||
"version": "0.1.0",
|
|
||||||
"schema": "",
|
|
||||||
"request": "",
|
|
||||||
"name": "geth",
|
|
||||||
"service": "<service-record-id>",
|
|
||||||
"url": "https://geth-rpc-endpoint-2.example.com",
|
|
||||||
"needs_auth": false,
|
|
||||||
"meta": {
|
|
||||||
"machine_name": "gibbon",
|
|
||||||
"chain": "1",
|
|
||||||
"sync_mode": "snap",
|
|
||||||
"gc_mode": "archive"
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,16 +0,0 @@
|
|||||||
{
|
|
||||||
"type": "ServiceDeploymentRecord",
|
|
||||||
"version": "0.1.0",
|
|
||||||
"schema": "",
|
|
||||||
"request": "",
|
|
||||||
"name": "geth",
|
|
||||||
"service": "<service-record-id>",
|
|
||||||
"url": "https://geth-rpc-endpoint-1.example.com",
|
|
||||||
"needs_auth": false,
|
|
||||||
"meta": {
|
|
||||||
"machine_name": "kindred",
|
|
||||||
"chain": "1",
|
|
||||||
"sync_mode": "full",
|
|
||||||
"gc_mode": "archive"
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,16 +0,0 @@
|
|||||||
{
|
|
||||||
"type": "ServiceDeploymentRecord",
|
|
||||||
"version": "0.1.0",
|
|
||||||
"schema": "",
|
|
||||||
"request": "",
|
|
||||||
"name": "lotus",
|
|
||||||
"service": "<service-record-id>",
|
|
||||||
"url": "https://lotus-rpc-endpoint.example.com",
|
|
||||||
"needs_auth": false,
|
|
||||||
"meta": {
|
|
||||||
"machine_name": "sandman",
|
|
||||||
"node_type": "full",
|
|
||||||
"chain": "314",
|
|
||||||
"eth_rpc_enabled": true
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,9 +0,0 @@
|
|||||||
{
|
|
||||||
"type": "ServiceRecord",
|
|
||||||
"version": "0.1.0",
|
|
||||||
"schema": "",
|
|
||||||
"name": "geth",
|
|
||||||
"repository": "https://git.vdb.to/cerc-io/plugeth",
|
|
||||||
"repository_ref": "c50b6cc026207b195ad7f9afdbe919a1fe676e67",
|
|
||||||
"repository_tag": "v1.13.14-cerc-0"
|
|
||||||
}
|
|
@ -1,9 +0,0 @@
|
|||||||
{
|
|
||||||
"type": "ServiceRecord",
|
|
||||||
"version": "0.1.0",
|
|
||||||
"schema": "",
|
|
||||||
"name": "lotus",
|
|
||||||
"repository": "https://git.vdb.to/cerc-io/lotus",
|
|
||||||
"repository_ref": "9dc9a5cf45acc7ee86371af2092dd7c04db26930",
|
|
||||||
"repository_tag": "v1.26.1"
|
|
||||||
}
|
|
@ -1,14 +0,0 @@
|
|||||||
{
|
|
||||||
"type": "SubgraphDeploymentRecord",
|
|
||||||
"version": "0.1.0",
|
|
||||||
"schema": "",
|
|
||||||
"request": "",
|
|
||||||
"name": "sushiswap-blocks-subgraph",
|
|
||||||
"subgraph_name": "sushiswap/blocks",
|
|
||||||
"subgraph": "<subgraph-record-id>",
|
|
||||||
"subgraph_id": "QmfBt5NbZdNhBoZS6MFj891YpNWQs8ysWkwVeEHF6rvscg",
|
|
||||||
"network": "filecoin",
|
|
||||||
"chain": "314",
|
|
||||||
"url": "https://sushiswap-blocks-subgraph-endpoint.example.com",
|
|
||||||
"needs_auth": false
|
|
||||||
}
|
|
@ -1,14 +0,0 @@
|
|||||||
{
|
|
||||||
"type": "SubgraphDeploymentRecord",
|
|
||||||
"version": "0.1.0",
|
|
||||||
"schema": "",
|
|
||||||
"request": "",
|
|
||||||
"name": "sushiswap-route-processor-subgraph",
|
|
||||||
"subgraph_name": "sushiswap/rp4-filecoin",
|
|
||||||
"subgraph": "<subgraph-record-id>",
|
|
||||||
"subgraph_id": "QmcHTxwH74YgaMJFXKrNqpVVdQQWAyhbxMh9xUtYjKa3fw",
|
|
||||||
"network": "filecoin",
|
|
||||||
"chain": "314",
|
|
||||||
"url": "https://sushiswap-route-processor-subgraph-endpoint.example.com",
|
|
||||||
"needs_auth": false
|
|
||||||
}
|
|
@ -1,14 +0,0 @@
|
|||||||
{
|
|
||||||
"type": "SubgraphDeploymentRecord",
|
|
||||||
"version": "0.1.0",
|
|
||||||
"schema": "",
|
|
||||||
"request": "",
|
|
||||||
"name": "sushiswap-subgraph",
|
|
||||||
"subgraph_name": "sushiswap/sushiswap-filecoin",
|
|
||||||
"subgraph": "<subgraph-record-id>",
|
|
||||||
"subgraph_id": "QmbZdkSH5NoS1aycafeqQZ7QJycokDVBXG2526g5KmuR1F",
|
|
||||||
"network": "filecoin",
|
|
||||||
"chain": "314",
|
|
||||||
"url": "https://sushiswap-subgraph-endpoint.example.com",
|
|
||||||
"needs_auth": false
|
|
||||||
}
|
|
@ -1,14 +0,0 @@
|
|||||||
{
|
|
||||||
"type": "SubgraphDeploymentRecord",
|
|
||||||
"version": "0.1.0",
|
|
||||||
"schema": "",
|
|
||||||
"request": "",
|
|
||||||
"name": "sushiswap-v2-subgraph",
|
|
||||||
"subgraph_name": "sushiswap/v2-filecoin",
|
|
||||||
"subgraph": "<subgraph-record-id>",
|
|
||||||
"subgraph_id": "QmejnkeYZxJKxz6kV62V6mSmAKVDuyoiDsempRC6NMunYo",
|
|
||||||
"network": "filecoin",
|
|
||||||
"chain": "314",
|
|
||||||
"url": "https://sushiswap-v2-subgraph-endpoint.example.com",
|
|
||||||
"needs_auth": false
|
|
||||||
}
|
|
@ -1,14 +0,0 @@
|
|||||||
{
|
|
||||||
"type": "SubgraphDeploymentRecord",
|
|
||||||
"version": "0.1.0",
|
|
||||||
"schema": "",
|
|
||||||
"request": "",
|
|
||||||
"name": "sushiswap-v3-subgraph",
|
|
||||||
"subgraph_name": "sushiswap/v3-filecoin",
|
|
||||||
"subgraph": "<subgraph-record-id>",
|
|
||||||
"subgraph_id": "QmRPQM4ZtRJYr8WiNdg6oqKRNQHHXv5rZrD4gzqQrJpPhz",
|
|
||||||
"network": "filecoin",
|
|
||||||
"chain": "314",
|
|
||||||
"url": "https://sushiswap-v3-subgraph-endpoint.example.com",
|
|
||||||
"needs_auth": false
|
|
||||||
}
|
|
@ -1,10 +0,0 @@
|
|||||||
{
|
|
||||||
"type": "SubgraphRecord",
|
|
||||||
"version": "0.1.0",
|
|
||||||
"schema": "",
|
|
||||||
"name": "sushiswap-blocks-subgraph",
|
|
||||||
"repository": "https://github.com/sushiswap/subgraphs",
|
|
||||||
"repository_ref": "533749731563023903410a58013167bc10d06a88",
|
|
||||||
"repository_tag": "",
|
|
||||||
"subgraph_dir": "subgraphs/blocks"
|
|
||||||
}
|
|
@ -1,10 +0,0 @@
|
|||||||
{
|
|
||||||
"type": "SubgraphRecord",
|
|
||||||
"version": "0.1.0",
|
|
||||||
"schema": "",
|
|
||||||
"name": "sushiswap-route-processor-subgraph",
|
|
||||||
"repository": "https://github.com/sushiswap/subgraphs",
|
|
||||||
"repository_ref": "382f888489ffc27d394775f9c1719dba7bacef63",
|
|
||||||
"repository_tag": "",
|
|
||||||
"subgraph_dir": "subgraphs/route-processor"
|
|
||||||
}
|
|
@ -1,10 +0,0 @@
|
|||||||
{
|
|
||||||
"type": "SubgraphRecord",
|
|
||||||
"version": "0.1.0",
|
|
||||||
"schema": "",
|
|
||||||
"name": "sushiswap-subgraph",
|
|
||||||
"repository": "https://github.com/sushiswap/subgraphs",
|
|
||||||
"repository_ref": "533749731563023903410a58013167bc10d06a88",
|
|
||||||
"repository_tag": "",
|
|
||||||
"subgraph_dir": "subgraphs/sushiswap"
|
|
||||||
}
|
|
@ -1,10 +0,0 @@
|
|||||||
{
|
|
||||||
"type": "SubgraphRecord",
|
|
||||||
"version": "0.1.0",
|
|
||||||
"schema": "",
|
|
||||||
"name": "sushiswap-v2-subgraph",
|
|
||||||
"repository": "https://github.com/sushiswap/subgraphs",
|
|
||||||
"repository_ref": "d491b69adb9ff3666162ac284ab77a146f231794",
|
|
||||||
"repository_tag": "",
|
|
||||||
"subgraph_dir": "subgraphs/v2"
|
|
||||||
}
|
|
@ -1,10 +0,0 @@
|
|||||||
{
|
|
||||||
"type": "SubgraphRecord",
|
|
||||||
"version": "0.1.0",
|
|
||||||
"schema": "",
|
|
||||||
"name": "sushiswap-v3-subgraph",
|
|
||||||
"repository": "https://github.com/sushiswap/subgraphs",
|
|
||||||
"repository_ref": "d491b69adb9ff3666162ac284ab77a146f231794",
|
|
||||||
"repository_tag": "",
|
|
||||||
"subgraph_dir": "subgraphs/v3"
|
|
||||||
}
|
|
@ -1,10 +0,0 @@
|
|||||||
{
|
|
||||||
"type": "WatcherRecord",
|
|
||||||
"version": "0.1.0",
|
|
||||||
"schema": "",
|
|
||||||
"name": "ajna-watcher",
|
|
||||||
"repository": "https://git.vdb.to/cerc-io/ajna-watcher-ts",
|
|
||||||
"repository_ref": "66b8d96308eacab1ef6a4f3cb74a0f28fb18dc67",
|
|
||||||
"repository_tag": "v0.1.3",
|
|
||||||
"is_subgraph_watcher": true
|
|
||||||
}
|
|
@ -1,10 +0,0 @@
|
|||||||
{
|
|
||||||
"type": "WatcherRecord",
|
|
||||||
"version": "0.1.0",
|
|
||||||
"schema": "",
|
|
||||||
"name": "azimuth-watcher",
|
|
||||||
"repository": "https://github.com/cerc-io/azimuth-watcher-ts",
|
|
||||||
"repository_ref": "ffd8baa4bcdd0b0fff701d942de572b7ddf33191",
|
|
||||||
"repository_tag": "v0.1.3",
|
|
||||||
"is_subgraph_watcher": false
|
|
||||||
}
|
|
@ -1,12 +0,0 @@
|
|||||||
{
|
|
||||||
"type": "WatcherDeploymentRecord",
|
|
||||||
"version": "0.1.0",
|
|
||||||
"schema": "",
|
|
||||||
"request": "",
|
|
||||||
"name": "ajna-watcher",
|
|
||||||
"watcher": "<watcher-record-id>",
|
|
||||||
"kind": "active",
|
|
||||||
"chain": "314",
|
|
||||||
"url": "https://ajna-watcher-endpoint.example.com",
|
|
||||||
"needs_auth": true
|
|
||||||
}
|
|
@ -1,12 +0,0 @@
|
|||||||
{
|
|
||||||
"type": "WatcherDeploymentRecord",
|
|
||||||
"version": "0.1.0",
|
|
||||||
"schema": "",
|
|
||||||
"request": "",
|
|
||||||
"name": "azimuth-watcher",
|
|
||||||
"watcher": "<watcher-record-id>",
|
|
||||||
"kind": "active",
|
|
||||||
"chain": "1",
|
|
||||||
"url": "https://azimuth-watcher-endpoint.example.com",
|
|
||||||
"needs_auth": false
|
|
||||||
}
|
|
@ -1,12 +0,0 @@
|
|||||||
{
|
|
||||||
"type": "WatcherDeploymentRecord",
|
|
||||||
"version": "0.1.0",
|
|
||||||
"schema": "",
|
|
||||||
"request": "",
|
|
||||||
"name": "sushiswap-v3-watcher",
|
|
||||||
"watcher": "<watcher-record-id>",
|
|
||||||
"kind": "active",
|
|
||||||
"chain": "314",
|
|
||||||
"url": "https://sushiswap-v3-watcher-endpoint.example.com",
|
|
||||||
"needs_auth": true
|
|
||||||
}
|
|
@ -1,10 +0,0 @@
|
|||||||
{
|
|
||||||
"type": "WatcherRecord",
|
|
||||||
"version": "0.1.0",
|
|
||||||
"schema": "",
|
|
||||||
"name": "sushiswap-v3-watcher",
|
|
||||||
"repository": "https://github.com/cerc-io/sushiswap-v3-watcher-ts",
|
|
||||||
"repository_ref": "2f9f4d1ca191805922a51d1e3b471c06314fbc64",
|
|
||||||
"repository_tag": "v0.1.9",
|
|
||||||
"is_subgraph_watcher": true
|
|
||||||
}
|
|
5
demo/types/common/main.d.ts
vendored
5
demo/types/common/main.d.ts
vendored
@ -1,5 +0,0 @@
|
|||||||
//
|
|
||||||
// Copyright 2022 Vulcanize, Inc.
|
|
||||||
//
|
|
||||||
|
|
||||||
declare module 'lodash-clean';
|
|
1
src/types/common/main.d.ts
vendored
Normal file
1
src/types/common/main.d.ts
vendored
Normal file
@ -0,0 +1 @@
|
|||||||
|
declare module 'lodash-clean';
|
@ -31,7 +31,7 @@
|
|||||||
// "paths": {}, /* Specify a set of entries that re-map imports to additional lookup locations. */
|
// "paths": {}, /* Specify a set of entries that re-map imports to additional lookup locations. */
|
||||||
// "rootDirs": [], /* Allow multiple folders to be treated as one when resolving modules. */
|
// "rootDirs": [], /* Allow multiple folders to be treated as one when resolving modules. */
|
||||||
"typeRoots": [
|
"typeRoots": [
|
||||||
"./demo/types"
|
"src/types"
|
||||||
],
|
],
|
||||||
// "types": [], /* Specify type package names to be included without being referenced in a source file. */
|
// "types": [], /* Specify type package names to be included without being referenced in a source file. */
|
||||||
// "allowUmdGlobalAccess": true, /* Allow accessing UMD globals from modules. */
|
// "allowUmdGlobalAccess": true, /* Allow accessing UMD globals from modules. */
|
||||||
@ -100,6 +100,6 @@
|
|||||||
// "skipDefaultLibCheck": true, /* Skip type checking .d.ts files that are included with TypeScript. */
|
// "skipDefaultLibCheck": true, /* Skip type checking .d.ts files that are included with TypeScript. */
|
||||||
"skipLibCheck": true /* Skip type checking all .d.ts files. */
|
"skipLibCheck": true /* Skip type checking all .d.ts files. */
|
||||||
},
|
},
|
||||||
"include": ["src", "demo"],
|
"include": ["src"],
|
||||||
"exclude": ["test"]
|
"exclude": ["test"]
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user