Run laconic-console
stack as part of fixturenet deployment (#1)
Part of [Create an external fixturenet-laconicd stack](https://www.notion.so/Create-an-external-fixturenet-laconicd-stack-3b33cc2317444f4da209c4472f4244ed) Reviewed-on: #1 Co-authored-by: Prathamesh Musale <prathamesh.musale0@gmail.com> Co-committed-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
This commit is contained in:
parent
9499bb6b1d
commit
57f4648be1
@ -8,7 +8,7 @@ services:
|
|||||||
TEST_REGISTRY_EXPIRY: ${TEST_REGISTRY_EXPIRY:-false}
|
TEST_REGISTRY_EXPIRY: ${TEST_REGISTRY_EXPIRY:-false}
|
||||||
volumes:
|
volumes:
|
||||||
- laconicd-data:/root/.laconicd
|
- laconicd-data:/root/.laconicd
|
||||||
- ../config/fixturenet-laconicd/scripts/create-fixturenet.sh:/docker-entrypoint-scripts.d/create-fixturenet.sh
|
- ../config/fixturenet-laconicd/create-fixturenet.sh:/docker-entrypoint-scripts.d/create-fixturenet.sh
|
||||||
ports:
|
ports:
|
||||||
- "6060"
|
- "6060"
|
||||||
- "26657"
|
- "26657"
|
||||||
|
7
stack-orchestrator/config/demo-records/demo-record-1.yml
Normal file
7
stack-orchestrator/config/demo-records/demo-record-1.yml
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
record:
|
||||||
|
type: WebsiteRegistrationRecord
|
||||||
|
url: 'https://hello-urbit.laconic.com'
|
||||||
|
repo_registration_record_cid: QmTZQ8ZJS6mALjEM2wY71msFno6zzxFftVCiZELj9xREPx
|
||||||
|
build_artifact_cid: '~lostex-rabdur-labtul-moltev/hello-urbit'
|
||||||
|
tls_cert_cid: QmR1acEmQt7Tjmhp9cFtymie2eFcrHURQKt9kGto1TQTW1
|
||||||
|
version: 0.2.4
|
14
stack-orchestrator/config/demo-records/demo-record-10.yml
Normal file
14
stack-orchestrator/config/demo-records/demo-record-10.yml
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
record:
|
||||||
|
type: ApplicationDeploymentRecord
|
||||||
|
version: 1.2.3
|
||||||
|
name: name
|
||||||
|
description: description
|
||||||
|
application: application
|
||||||
|
url: url
|
||||||
|
dns: dns
|
||||||
|
request: request
|
||||||
|
meta:
|
||||||
|
foo: bar
|
||||||
|
tags:
|
||||||
|
- a
|
||||||
|
- b
|
12
stack-orchestrator/config/demo-records/demo-record-11.yml
Normal file
12
stack-orchestrator/config/demo-records/demo-record-11.yml
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
record:
|
||||||
|
type: GeneralRecord
|
||||||
|
version: 1.2.3
|
||||||
|
name: name
|
||||||
|
description: description
|
||||||
|
category: category
|
||||||
|
value: value
|
||||||
|
meta:
|
||||||
|
foo: bar
|
||||||
|
tags:
|
||||||
|
- a
|
||||||
|
- b
|
17
stack-orchestrator/config/demo-records/demo-record-12.yml
Normal file
17
stack-orchestrator/config/demo-records/demo-record-12.yml
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
record:
|
||||||
|
type: ApplicationArtifact
|
||||||
|
version: 1.2.3
|
||||||
|
name: name
|
||||||
|
description: description
|
||||||
|
application: appidgoeshere
|
||||||
|
content_type: content_type
|
||||||
|
os: os
|
||||||
|
cpu: cpu
|
||||||
|
uri:
|
||||||
|
- uri://a
|
||||||
|
- uri://b
|
||||||
|
meta:
|
||||||
|
foo: bar
|
||||||
|
tags:
|
||||||
|
- a
|
||||||
|
- b
|
7
stack-orchestrator/config/demo-records/demo-record-2.yml
Normal file
7
stack-orchestrator/config/demo-records/demo-record-2.yml
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
record:
|
||||||
|
type: WebsiteRegistrationRecord
|
||||||
|
url: 'https://dev-hello-urbit.laconic.com'
|
||||||
|
repo_registration_record_cid: QmPbKkK7gKojnGAgKAE6bK5qBY8BcYp2YDB1e4b28NxvVv
|
||||||
|
build_artifact_cid: '~lostex-rabdur-labtul-moltev/hello-urbit-dev'
|
||||||
|
tls_cert_cid: QmWbCv4k9Q9P6XptHNJN6EupDyKVLSLRV6W6T2sAYkfBxr
|
||||||
|
version: 0.2.5
|
7
stack-orchestrator/config/demo-records/demo-record-3.yml
Normal file
7
stack-orchestrator/config/demo-records/demo-record-3.yml
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
record:
|
||||||
|
type: WebsiteRegistrationRecord
|
||||||
|
url: 'https://app.osmosis.zone'
|
||||||
|
repo_registration_record_cid: QmSnuWmxptJZdLJpKRarxBMS2Ju2oANVrgbr2xWbie9b2D
|
||||||
|
build_artifact_cid: '~larryx-woldyr/osmosis:latest'
|
||||||
|
tls_cert_cid: QmbWqxBEKC3P8tqsKc98xmWNzrzDtRLMiMPL8wBuTGsMnR
|
||||||
|
version: 1.3.5
|
7
stack-orchestrator/config/demo-records/demo-record-4.yml
Normal file
7
stack-orchestrator/config/demo-records/demo-record-4.yml
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
record:
|
||||||
|
type: WebsiteRegistrationRecord
|
||||||
|
url: 'https://dev.osmosis.zone'
|
||||||
|
repo_registration_record_cid: QmPbKkK7gKojnGAgKAE6bK5qBY8BcYp2YDB1e4b28NxvVv
|
||||||
|
build_artifact_cid: '~larryx-woldyr/osmosis:dev'
|
||||||
|
tls_cert_cid: QmWbCv4k9Q9P6XptHNJN6EupDyKVLSLRV6W6T2sAYkfBxr
|
||||||
|
version: 1.3.6
|
7
stack-orchestrator/config/demo-records/demo-record-5.yml
Normal file
7
stack-orchestrator/config/demo-records/demo-record-5.yml
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
record:
|
||||||
|
type: WebsiteRegistrationRecord
|
||||||
|
url: 'https://pwa-1-1-3.iglootools.xyz'
|
||||||
|
repo_registration_record_cid: QmSnuWmxptJZdLJpKRarxBMS2Ju2oANVrgbr2xWbie9b2D
|
||||||
|
build_artifact_cid: https://ipfs.io/ipfs/QmP8jTG1m9GSDJLCbeWhVSVgEzCPPwXRdCRuJtQ5Tz9Kc9
|
||||||
|
tls_cert_cid: QmbWqxBEKC3P8tqsKc98xmWNzrzDtRLMiMPL8wBuTGsMnR
|
||||||
|
version: 1.1.3
|
7
stack-orchestrator/config/demo-records/demo-record-6.yml
Normal file
7
stack-orchestrator/config/demo-records/demo-record-6.yml
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
record:
|
||||||
|
type: WebsiteRegistrationRecord
|
||||||
|
url: 'https://pwa-1-2-3.iglootools.xyz'
|
||||||
|
repo_registration_record_cid: QmVjYQ59z3fuKfYUV1aXhDR82JAKxdqB5JMPfUsHkJUkJq
|
||||||
|
build_artifact_cid: https://ipfs.io/ipfs/QmN2yevgjC92gzGi2BY6Q2yBWmR6JNWQ9yscoPPyy1V2Hv
|
||||||
|
tls_cert_cid: QmTAnmDMSnzqAN3yyXtFD4KpyATkeze62ZkbmXHjJ8xQW8
|
||||||
|
version: 1.2.3
|
11
stack-orchestrator/config/demo-records/demo-record-7.yml
Normal file
11
stack-orchestrator/config/demo-records/demo-record-7.yml
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
record:
|
||||||
|
type: DnsRecord
|
||||||
|
version: 0.0.1
|
||||||
|
name: "foo"
|
||||||
|
resource_type: "A"
|
||||||
|
value: "bar"
|
||||||
|
meta:
|
||||||
|
foo: bar
|
||||||
|
tags:
|
||||||
|
- a
|
||||||
|
- b
|
18
stack-orchestrator/config/demo-records/demo-record-8.yml
Normal file
18
stack-orchestrator/config/demo-records/demo-record-8.yml
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
record:
|
||||||
|
type: ApplicationRecord
|
||||||
|
version: 0.0.1
|
||||||
|
name: my-demo-app
|
||||||
|
description: "Description of my app"
|
||||||
|
homepage: http://my.demo.app
|
||||||
|
license: license
|
||||||
|
author: author
|
||||||
|
repository:
|
||||||
|
- "https://my.demo.repo"
|
||||||
|
repository_ref: "v0.1.0"
|
||||||
|
app_version: "0.1.0"
|
||||||
|
app_type: "webapp"
|
||||||
|
meta:
|
||||||
|
foo: bar
|
||||||
|
tags:
|
||||||
|
- a
|
||||||
|
- b
|
17
stack-orchestrator/config/demo-records/demo-record-9.yml
Normal file
17
stack-orchestrator/config/demo-records/demo-record-9.yml
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
record:
|
||||||
|
type: ApplicationDeploymentRequest
|
||||||
|
version: 1.2.3
|
||||||
|
application: application
|
||||||
|
dns: dns
|
||||||
|
config:
|
||||||
|
env:
|
||||||
|
ENV_VAR_A: A
|
||||||
|
ENV_VAR_B: B
|
||||||
|
crn:
|
||||||
|
- crn://foo.bar
|
||||||
|
- crn://bar.baz
|
||||||
|
meta:
|
||||||
|
foo: bar
|
||||||
|
tags:
|
||||||
|
- a
|
||||||
|
- b
|
@ -1,36 +1,57 @@
|
|||||||
# fixturenet-laconicd-stack
|
# fixturenet-laconicd-stack
|
||||||
|
|
||||||
|
Instructions for running a laconicd fixturenet along with registry CLI and console
|
||||||
|
|
||||||
## Setup
|
## Setup
|
||||||
|
|
||||||
* Clone the stack repo
|
* Clone the stack repos:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
laconic-so fetch-stack git.vdb.to/cerc-io/fixturenet-laconicd-stack
|
laconic-so fetch-stack git.vdb.to/cerc-io/fixturenet-laconicd-stack
|
||||||
|
laconic-so fetch-stack git.vdb.to/cerc-io/testnet-laconicd-stack
|
||||||
```
|
```
|
||||||
|
|
||||||
* Clone required repositories:
|
* Clone required repositories:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
|
# laconicd
|
||||||
laconic-so --stack ~/cerc/fixturenet-laconicd-stack/stack-orchestrator/stacks/fixturenet-laconicd setup-repositories
|
laconic-so --stack ~/cerc/fixturenet-laconicd-stack/stack-orchestrator/stacks/fixturenet-laconicd setup-repositories
|
||||||
|
|
||||||
|
# laconic cli and console
|
||||||
|
laconic-so --stack ~/cerc/testnet-laconicd-stack/stack-orchestrator/stacks/laconic-console setup-repositories
|
||||||
```
|
```
|
||||||
|
|
||||||
* Build the container images:
|
* Build the container images:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
|
# laconicd
|
||||||
laconic-so --stack ~/cerc/fixturenet-laconicd-stack/stack-orchestrator/stacks/fixturenet-laconicd build-containers
|
laconic-so --stack ~/cerc/fixturenet-laconicd-stack/stack-orchestrator/stacks/fixturenet-laconicd build-containers
|
||||||
|
|
||||||
|
# laconic cli and console
|
||||||
|
laconic-so --stack ~/cerc/testnet-laconicd-stack/stack-orchestrator/stacks/laconic-console build-containers
|
||||||
```
|
```
|
||||||
|
|
||||||
|
This should create the following docker images locally:
|
||||||
|
|
||||||
|
* `cerc/laconic2d`
|
||||||
|
* `cerc/laconic2-registry-cli`
|
||||||
|
* `cerc/webapp-base`
|
||||||
|
* `cerc/laconic2-console-host`
|
||||||
|
|
||||||
## Create a deployment
|
## Create a deployment
|
||||||
|
|
||||||
* Create a spec file for the deployment:
|
* Create spec files for the deployment:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
laconic-so --stack ~/cerc/fixturenet-laconicd-stack/stack-orchestrator/stacks/fixturenet-laconicd deploy init --output fixturenet-laconicd-spec.yml
|
laconic-so --stack ~/cerc/fixturenet-laconicd-stack/stack-orchestrator/stacks/fixturenet-laconicd deploy init --output fixturenet-laconicd-spec.yml
|
||||||
|
|
||||||
|
laconic-so --stack ~/cerc/testnet-laconicd-stack/stack-orchestrator/stacks/laconic-console deploy init --output laconic-console-spec.yml
|
||||||
```
|
```
|
||||||
|
|
||||||
* Edit `network` in the spec file to map container ports to host ports as required:
|
* Edit `network` in the spec file to map container ports to host ports as required:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
|
# testnet-laconicd-spec.yml
|
||||||
...
|
...
|
||||||
network:
|
network:
|
||||||
ports:
|
ports:
|
||||||
@ -41,18 +62,51 @@
|
|||||||
- '9473:9473'
|
- '9473:9473'
|
||||||
- '9090:9090'
|
- '9090:9090'
|
||||||
- '1317:1317'
|
- '1317:1317'
|
||||||
|
|
||||||
|
# laconic-console-spec.yml
|
||||||
|
...
|
||||||
|
network:
|
||||||
|
ports:
|
||||||
|
console:
|
||||||
|
- '8080:80'
|
||||||
```
|
```
|
||||||
|
|
||||||
* Create a deployment from the spec file:
|
* Create deployment from the spec files:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
laconic-so --stack ~/cerc/fixturenet-laconicd-stack/stack-orchestrator/stacks/fixturenet-laconicd deploy create --spec-file fixturenet-laconicd-spec.yml --deployment-dir fixturenet-laconicd-deployment
|
laconic-so --stack ~/cerc/fixturenet-laconicd-stack/stack-orchestrator/stacks/fixturenet-laconicd deploy create --spec-file fixturenet-laconicd-spec.yml --deployment-dir fixturenet-laconicd-deployment
|
||||||
|
|
||||||
|
laconic-so --stack ~/cerc/testnet-laconicd-stack/stack-orchestrator/stacks/laconic-console deploy create --spec-file laconic-console-spec.yml --deployment-dir laconic-console-deployment
|
||||||
|
|
||||||
|
# Place them both in the same namespace (cluster)
|
||||||
|
cp fixturenet-laconicd-deployment/deployment.yml laconic-console-deployment/deployment.yml
|
||||||
|
```
|
||||||
|
|
||||||
|
## Configuration
|
||||||
|
|
||||||
|
* Inside the `laconic-console-deployment` deployment directory, open `config.env` file and set following env variables:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# Optional CLI configuration
|
||||||
|
|
||||||
|
# laconicd user private key for txs
|
||||||
|
CERC_LACONICD_USER_KEY=
|
||||||
|
|
||||||
|
# laconicd bond id for txs
|
||||||
|
CERC_LACONICD_BOND_ID=
|
||||||
|
|
||||||
|
# Gas limit for txs (default: 200000)
|
||||||
|
CERC_LACONICD_GAS=
|
||||||
|
|
||||||
|
# Max fees for txs (default: 200000photon)
|
||||||
|
CERC_LACONICD_FEES=
|
||||||
```
|
```
|
||||||
|
|
||||||
## Start the deployment
|
## Start the deployment
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
laconic-so deployment --dir fixturenet-laconicd-deployment start
|
laconic-so deployment --dir fixturenet-laconicd-deployment start
|
||||||
|
laconic-so deployment --dir laconic-console-deployment start
|
||||||
```
|
```
|
||||||
|
|
||||||
## Check status
|
## Check status
|
||||||
@ -67,6 +121,31 @@ laconic-so deployment --dir fixturenet-laconicd-deployment start
|
|||||||
laconic-so deployment --dir fixturenet-laconicd-deployment logs laconicd -f
|
laconic-so deployment --dir fixturenet-laconicd-deployment logs laconicd -f
|
||||||
```
|
```
|
||||||
|
|
||||||
|
* View the laconic console at <http://localhost:8080>
|
||||||
|
|
||||||
|
* Use the cli service for registry CLI operations:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# Example
|
||||||
|
laconic-so deployment --dir laconic-console-deployment exec cli "laconic registry status"
|
||||||
|
```
|
||||||
|
|
||||||
|
## Perform operations
|
||||||
|
|
||||||
|
* Example (bond creation):
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# Get the PK from your node
|
||||||
|
ALICE_PK=$(echo y | laconic-so deployment --dir fixturenet-laconicd-deployment exec laconicd "laconicd keys export alice --unarmored-hex --unsafe")
|
||||||
|
|
||||||
|
# Create a bond:
|
||||||
|
laconic-so deployment --dir laconic-console-deployment exec cli "laconic registry bond create --type photon --quantity 100000000000 --user-key $ALICE_PK" | jq -r '.bondId'
|
||||||
|
```
|
||||||
|
|
||||||
|
## Demo
|
||||||
|
|
||||||
|
* Follow the [records-demo](./records-demo.md) to try loading data into registry
|
||||||
|
|
||||||
## Clean up
|
## Clean up
|
||||||
|
|
||||||
* Stop all services running in the background:
|
* Stop all services running in the background:
|
||||||
|
119
stack-orchestrator/stacks/fixturenet-laconicd/records-demo.md
Normal file
119
stack-orchestrator/stacks/fixturenet-laconicd/records-demo.md
Normal file
@ -0,0 +1,119 @@
|
|||||||
|
# records-demo
|
||||||
|
|
||||||
|
## Setup
|
||||||
|
|
||||||
|
* Set account key and bond id in the CLI config:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# Set bond id to the bond created earlier or create a new one
|
||||||
|
BOND_ID=<bond-id>
|
||||||
|
|
||||||
|
# Update CLI config
|
||||||
|
laconic-so deployment --dir laconic-console-deployment exec cli "CERC_LACONICD_USER_KEY=${ALICE_PK} CERC_LACONICD_BOND_ID=${BOND_ID} /app/create-config.sh"
|
||||||
|
|
||||||
|
# Note: Update the values in 'laconic-console-deployment/config.env' accordingly before restarting
|
||||||
|
```
|
||||||
|
|
||||||
|
## Run
|
||||||
|
|
||||||
|
* Copy over all records from a dir to the data dir in `laconic-console-deployment` (`laconic-console-deployment/data/laconic-registry-data`) and publish the records:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# Example: for demo records
|
||||||
|
# Copy over the records
|
||||||
|
cp -r /home/user/fixturenet-laconicd-stack/stack-orchestrator/config/demo-records laconic-console-deployment/data/laconic-registry-data/
|
||||||
|
|
||||||
|
# Publish the records from `laconic-registry-data` directory
|
||||||
|
laconic-so deployment --dir laconic-console-deployment exec cli "yarn ts-node demo/scripts/publish-records.ts --config config.yml --records /laconic-registry-data/demo-records"
|
||||||
|
```
|
||||||
|
|
||||||
|
OR
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# Example: for testnet records
|
||||||
|
# Copy over the records
|
||||||
|
cp -r /home/user/laconic-testnet-data/records/repo laconic-console-deployment/data/laconic-registry-data/repo-records
|
||||||
|
rsync -av --exclude 'repo' /home/user/laconic-testnet-data/records laconic-console-deployment/data/laconic-registry-data/
|
||||||
|
|
||||||
|
# Publish repository records first
|
||||||
|
laconic-so deployment --dir laconic-console-deployment exec cli "yarn ts-node demo/scripts/publish-records.ts --config config.yml --records /laconic-registry-data/repo-records"
|
||||||
|
|
||||||
|
# Publish rest of the records
|
||||||
|
laconic-so deployment --dir laconic-console-deployment exec cli "yarn ts-node demo/scripts/publish-records.ts --config config.yml --records /laconic-registry-data/records"
|
||||||
|
```
|
||||||
|
|
||||||
|
## Query
|
||||||
|
|
||||||
|
* All the published records can be viewed on the console at <http://localhost:8080>
|
||||||
|
* explore the console for more information
|
||||||
|
* click on the link aside a record that opens the GraphQL console
|
||||||
|
* the query is pre-loaded, run it and inspect the output
|
||||||
|
|
||||||
|
### CLI Examples
|
||||||
|
|
||||||
|
* Query all records:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
laconic-so deployment --dir laconic-console-deployment exec cli "laconic registry record list"
|
||||||
|
```
|
||||||
|
|
||||||
|
* Query for `geth` service deployment(s):
|
||||||
|
|
||||||
|
* Find the `ServiceRecord` for `geth`:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
SERVICE_RECORD_ID=$(laconic-so deployment --dir laconic-console-deployment exec cli "laconic registry record list --all --type ServiceRecord --name geth | jq -r '.[].id'")
|
||||||
|
```
|
||||||
|
|
||||||
|
* Find corresponding deployment(s):
|
||||||
|
|
||||||
|
```bash
|
||||||
|
laconic-so deployment --dir laconic-console-deployment exec cli "laconic registry record list --all --type ServiceDeploymentRecord service $SERVICE_RECORD_ID"
|
||||||
|
|
||||||
|
# Get the deployment URL(s)
|
||||||
|
laconic-so deployment --dir laconic-console-deployment exec cli "laconic registry record list --all --type ServiceDeploymentRecord service $SERVICE_RECORD_ID | jq -r '.[].attributes.url'"
|
||||||
|
|
||||||
|
# Expected output:
|
||||||
|
# https://geth-rpc-endpoint-1.example.com
|
||||||
|
# https://geth-rpc-endpoint-2.example.com
|
||||||
|
```
|
||||||
|
|
||||||
|
* Query for `azimuth-watcher` deployment(s):
|
||||||
|
|
||||||
|
* Find the `WatcherRecord` for `azimuth-watcher`:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
WATCHER_RECORD_ID=$(laconic-so deployment --dir laconic-console-deployment exec cli "laconic registry record list --all --type WatcherRecord --name azimuth-watcher | jq -r '.[].id'")
|
||||||
|
```
|
||||||
|
|
||||||
|
* Find corresponding deployment(s):
|
||||||
|
|
||||||
|
```bash
|
||||||
|
laconic-so deployment --dir laconic-console-deployment exec cli "laconic registry record list --all --type WatcherDeploymentRecord watcher $WATCHER_RECORD_ID"
|
||||||
|
|
||||||
|
# Get the deployment URL(s)
|
||||||
|
laconic-so deployment --dir laconic-console-deployment exec cli "laconic registry record list --all --type WatcherDeploymentRecord watcher $WATCHER_RECORD_ID | jq -r '.[].attributes.url'"
|
||||||
|
|
||||||
|
# Expected output:
|
||||||
|
https://azimuth-watcher-endpoint.example.com
|
||||||
|
```
|
||||||
|
|
||||||
|
* Query for `bsc-node` stack:
|
||||||
|
|
||||||
|
* Find the `StackRecord` for `bsc-node` stack:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
laconic-so deployment --dir laconic-console-deployment exec cli "laconic registry record list --all --type StackRecord --name bsc-node"
|
||||||
|
|
||||||
|
# Get the repo record id
|
||||||
|
STACK_REPO_RECORD_ID=$(laconic-so deployment --dir laconic-console-deployment exec cli "laconic registry record list --all --type StackRecord --name bsc-node | jq -r '.[].attributes.repository'")
|
||||||
|
```
|
||||||
|
|
||||||
|
* Find the corresponding `RepositoryRecord`:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
laconic-so deployment --dir laconic-console-deployment exec cli "laconic registry record get --id $STACK_REPO_RECORD_ID"
|
||||||
|
|
||||||
|
# Get the repo URL
|
||||||
|
laconic-so deployment --dir laconic-console-deployment exec cli "laconic registry record get --id $STACK_REPO_RECORD_ID | jq -r '.[].attributes.url'"
|
||||||
|
```
|
Loading…
Reference in New Issue
Block a user