2022-12-19 05:55:28 +00:00
|
|
|
syntax = "proto3";
|
2022-12-19 06:14:18 +00:00
|
|
|
package vulcanize.registry.v1beta1;
|
2022-12-19 05:55:28 +00:00
|
|
|
|
|
|
|
import "gogoproto/gogo.proto";
|
|
|
|
|
2022-12-19 06:14:18 +00:00
|
|
|
option go_package = "github.com/cerc-io/laconicd/x/registry/types";
|
2022-12-19 05:55:28 +00:00
|
|
|
|
2023-03-06 21:54:02 +00:00
|
|
|
message ServiceProviderRegistration {
|
2022-12-19 05:55:28 +00:00
|
|
|
string bond_id = 1 [(gogoproto.moretags) = "json:\"bondId\" yaml:\"bondId\""];
|
|
|
|
string laconic_id = 2 [(gogoproto.moretags) = "json:\"laconicId\" yaml:\"laconicId\""];
|
|
|
|
X500 x500 = 3 [(gogoproto.moretags) = "json:\"x500\" yaml:\"x500\""];
|
|
|
|
string type = 4 [(gogoproto.moretags) = "json:\"type\" yaml:\"type\""];
|
2023-01-02 12:14:06 +00:00
|
|
|
string version = 6 [(gogoproto.moretags) = "json:\"version\" yaml:\"version\""];
|
2022-12-19 05:55:28 +00:00
|
|
|
}
|
|
|
|
|
2023-03-06 21:54:02 +00:00
|
|
|
message X500 {
|
|
|
|
string common_name = 1 [(gogoproto.moretags) = "json:\"commonName\" yaml:\"commonName\""];
|
|
|
|
string organization_unit = 2 [(gogoproto.moretags) = "json:\"organizationUnit\" yaml:\"organizationUnit\""];
|
|
|
|
string organization_name = 3 [(gogoproto.moretags) = "json:\"organizationName\" yaml:\"organizationName\""];
|
|
|
|
string locality_name = 4 [(gogoproto.moretags) = "json:\"localityName\" yaml:\"localityName\""];
|
|
|
|
string state_name = 5 [(gogoproto.moretags) = "json:\"stateName\" yaml:\"stateName\""];
|
|
|
|
string country = 6 [(gogoproto.moretags) = "json:\"country\" yaml:\"country\""];
|
|
|
|
}
|
2023-03-06 21:17:43 +00:00
|
|
|
|
2022-12-19 05:55:28 +00:00
|
|
|
message WebsiteRegistrationRecord {
|
|
|
|
string url = 1 [(gogoproto.moretags) = "json:\"url\" yaml:\"url\""];
|
2023-03-06 21:54:02 +00:00
|
|
|
string repo_registration_record_cid = 2
|
|
|
|
[(gogoproto.moretags) = "json:\"repoRegistrationRecordCID\" yaml:\"repoRegistrationRecordCID\""];
|
|
|
|
string build_artifact_cid = 3 [(gogoproto.moretags) = "json:\"buildArtifactCID\" yaml:\"buildArtifactCID\""];
|
|
|
|
string tls_cert_cid = 4 [(gogoproto.moretags) = "json:\"TLSCertCID\" yaml:\"TLSCertCID\""];
|
2022-12-19 05:55:28 +00:00
|
|
|
string type = 5 [(gogoproto.moretags) = "json:\"type\" yaml:\"type\""];
|
2023-01-02 12:14:06 +00:00
|
|
|
string version = 6 [(gogoproto.moretags) = "json:\"version\" yaml:\"version\""];
|
Add new record types ApplicationRecord, WebAppDeploymentRecord, GeneralRecord (#44)
See also: https://git.vdb.to/cerc-io/laconicd/pulls/113
![image](/attachments/db05bbb6-86ca-4fbb-a8a4-fcd06501b1b1)
```
message ApplicationRecord {
string type = 1 [(gogoproto.moretags) = "json:\"type\" yaml:\"type\""];
string name = 2 [(gogoproto.moretags) = "json:\"name\" yaml:\"name\""];
string description = 3 [(gogoproto.moretags) = "json:\"description\" yaml:\"description\""];
string version = 4 [(gogoproto.moretags) = "json:\"version\" yaml:\"version\""];
string homepage = 5 [(gogoproto.moretags) = "json:\"homepage\" yaml:\"homepage\""];
string license = 6 [(gogoproto.moretags) = "json:\"license\" yaml:\"license\""];
string author = 7 [(gogoproto.moretags) = "json:\"author\" yaml:\"author\""];
string repository = 8 [(gogoproto.moretags) = "json:\"repository\" yaml:\"repository\""];
string repository_tag = 9 [(gogoproto.moretags) = "json:\"repositoryTag\" yaml:\"repositoryTag\""];
string app_version = 10 [(gogoproto.moretags) = "json:\"appVersion\" yaml:\"appVersion\""];
string app_type = 11 [(gogoproto.moretags) = "json:\"appType\" yaml:\"appType\""];
string meta = 20 [(gogoproto.moretags) = "json:\"meta\" yaml:\"meta\""];
repeated string tags = 21 [(gogoproto.moretags) = "json:\"tags\" yaml:\"tags\""];
}
message WebAppDeploymentRecord {
string type = 1 [(gogoproto.moretags) = "json:\"type\" yaml:\"type\""];
string name = 2 [(gogoproto.moretags) = "json:\"name\" yaml:\"name\""];
string description = 3 [(gogoproto.moretags) = "json:\"description\" yaml:\"description\""];
string version = 4 [(gogoproto.moretags) = "json:\"version\" yaml:\"version\""];
string application = 5 [(gogoproto.moretags) = "json:\"application\" yaml:\"application\""];
string url = 6 [(gogoproto.moretags) = "json:\"\" yaml:\"name\""];
string meta = 20 [(gogoproto.moretags) = "json:\"meta\" yaml:\"meta\""];
repeated string tags = 21 [(gogoproto.moretags) = "json:\"tags\" yaml:\"tags\""];
}
message GeneralRecord {
string type = 1 [(gogoproto.moretags) = "json:\"type\" yaml:\"type\""];
string name = 2 [(gogoproto.moretags) = "json:\"name\" yaml:\"name\""];
string description = 3 [(gogoproto.moretags) = "json:\"description\" yaml:\"description\""];
string version = 4 [(gogoproto.moretags) = "json:\"version\" yaml:\"version\""];
string category = 5 [(gogoproto.moretags) = "json:\"category\" yaml:\"category\""];
string value = 6 [(gogoproto.moretags) = "json:\"value\" yaml:\"value\""];
string meta = 20 [(gogoproto.moretags) = "json:\"meta\" yaml:\"meta\""];
repeated string tags = 21 [(gogoproto.moretags) = "json:\"tags\" yaml:\"tags\""];
```
```
❯ cat general.yml
record:
type: GeneralRecord
name: my-generic-record
version: 0.0.1
value: "anything-goes-here"
category: filter-by-this
tags:
- a
- b
- c
meta:
foo: bar
bar:
baz: boz
❯ bin/laconic cns record publish --filename general.yml --bond-id ba774084e25af5b29be126dda0bb910d93dea3634713a438ac257da5bbdc631c
{
"id": "bafyreigt3he52eia5g4i5pnst4dfcuwwgjdoul6xmcke2obz5os4xwoo3q"
}
❯ bin/laconic cns record get --id bafyreigt3he52eia5g4i5pnst4dfcuwwgjdoul6xmcke2obz5os4xwoo3q
[
{
"id": "bafyreigt3he52eia5g4i5pnst4dfcuwwgjdoul6xmcke2obz5os4xwoo3q",
"names": null,
"owners": [
"9A66500A9AA574CAAB4EDB26F7333590BF452CE0"
],
"bondId": "ba774084e25af5b29be126dda0bb910d93dea3634713a438ac257da5bbdc631c",
"createTime": "2023-11-17T23:11:27Z",
"expiryTime": "2024-11-16T23:11:27Z",
"attributes": {
"meta": "{\"foo\":\"bar\",\"bar\":{\"baz\":\"boz\"}}",
"tags": [
"a",
"b",
"c"
],
"type": "GeneralRecord",
"name": "my-generic-record",
"version": "0.0.1",
"category": "filter-by-this",
"value": "anything-goes-here"
}
}
]
```
> Note: The repeated items are preserved as lists, but the object/map ends up encoded as a string. It would be nice to avoid this.
Reviewed-on: https://git.vdb.to/cerc-io/laconic-sdk/pulls/44
Reviewed-by: David Boreham <dboreham@noreply.git.vdb.to>
Co-authored-by: Thomas E Lackey <telackey@bozemanpass.com>
Co-committed-by: Thomas E Lackey <telackey@bozemanpass.com>
2023-11-20 22:01:19 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
message ApplicationRecord {
|
|
|
|
string type = 1 [(gogoproto.moretags) = "json:\"type\" yaml:\"type\""];
|
|
|
|
string name = 2 [(gogoproto.moretags) = "json:\"name\" yaml:\"name\""];
|
|
|
|
string description = 3 [(gogoproto.moretags) = "json:\"description\" yaml:\"description\""];
|
|
|
|
string version = 4 [(gogoproto.moretags) = "json:\"version\" yaml:\"version\""];
|
|
|
|
string homepage = 5 [(gogoproto.moretags) = "json:\"homepage\" yaml:\"homepage\""];
|
|
|
|
string license = 6 [(gogoproto.moretags) = "json:\"license\" yaml:\"license\""];
|
|
|
|
string author = 7 [(gogoproto.moretags) = "json:\"author\" yaml:\"author\""];
|
|
|
|
string repository = 8 [(gogoproto.moretags) = "json:\"repository\" yaml:\"repository\""];
|
2023-12-07 22:08:49 +00:00
|
|
|
string repository_ref = 9 [(gogoproto.moretags) = "json:\"repositoryRef\" yaml:\"repositoryRef\""];
|
Add new record types ApplicationRecord, WebAppDeploymentRecord, GeneralRecord (#44)
See also: https://git.vdb.to/cerc-io/laconicd/pulls/113
![image](/attachments/db05bbb6-86ca-4fbb-a8a4-fcd06501b1b1)
```
message ApplicationRecord {
string type = 1 [(gogoproto.moretags) = "json:\"type\" yaml:\"type\""];
string name = 2 [(gogoproto.moretags) = "json:\"name\" yaml:\"name\""];
string description = 3 [(gogoproto.moretags) = "json:\"description\" yaml:\"description\""];
string version = 4 [(gogoproto.moretags) = "json:\"version\" yaml:\"version\""];
string homepage = 5 [(gogoproto.moretags) = "json:\"homepage\" yaml:\"homepage\""];
string license = 6 [(gogoproto.moretags) = "json:\"license\" yaml:\"license\""];
string author = 7 [(gogoproto.moretags) = "json:\"author\" yaml:\"author\""];
string repository = 8 [(gogoproto.moretags) = "json:\"repository\" yaml:\"repository\""];
string repository_tag = 9 [(gogoproto.moretags) = "json:\"repositoryTag\" yaml:\"repositoryTag\""];
string app_version = 10 [(gogoproto.moretags) = "json:\"appVersion\" yaml:\"appVersion\""];
string app_type = 11 [(gogoproto.moretags) = "json:\"appType\" yaml:\"appType\""];
string meta = 20 [(gogoproto.moretags) = "json:\"meta\" yaml:\"meta\""];
repeated string tags = 21 [(gogoproto.moretags) = "json:\"tags\" yaml:\"tags\""];
}
message WebAppDeploymentRecord {
string type = 1 [(gogoproto.moretags) = "json:\"type\" yaml:\"type\""];
string name = 2 [(gogoproto.moretags) = "json:\"name\" yaml:\"name\""];
string description = 3 [(gogoproto.moretags) = "json:\"description\" yaml:\"description\""];
string version = 4 [(gogoproto.moretags) = "json:\"version\" yaml:\"version\""];
string application = 5 [(gogoproto.moretags) = "json:\"application\" yaml:\"application\""];
string url = 6 [(gogoproto.moretags) = "json:\"\" yaml:\"name\""];
string meta = 20 [(gogoproto.moretags) = "json:\"meta\" yaml:\"meta\""];
repeated string tags = 21 [(gogoproto.moretags) = "json:\"tags\" yaml:\"tags\""];
}
message GeneralRecord {
string type = 1 [(gogoproto.moretags) = "json:\"type\" yaml:\"type\""];
string name = 2 [(gogoproto.moretags) = "json:\"name\" yaml:\"name\""];
string description = 3 [(gogoproto.moretags) = "json:\"description\" yaml:\"description\""];
string version = 4 [(gogoproto.moretags) = "json:\"version\" yaml:\"version\""];
string category = 5 [(gogoproto.moretags) = "json:\"category\" yaml:\"category\""];
string value = 6 [(gogoproto.moretags) = "json:\"value\" yaml:\"value\""];
string meta = 20 [(gogoproto.moretags) = "json:\"meta\" yaml:\"meta\""];
repeated string tags = 21 [(gogoproto.moretags) = "json:\"tags\" yaml:\"tags\""];
```
```
❯ cat general.yml
record:
type: GeneralRecord
name: my-generic-record
version: 0.0.1
value: "anything-goes-here"
category: filter-by-this
tags:
- a
- b
- c
meta:
foo: bar
bar:
baz: boz
❯ bin/laconic cns record publish --filename general.yml --bond-id ba774084e25af5b29be126dda0bb910d93dea3634713a438ac257da5bbdc631c
{
"id": "bafyreigt3he52eia5g4i5pnst4dfcuwwgjdoul6xmcke2obz5os4xwoo3q"
}
❯ bin/laconic cns record get --id bafyreigt3he52eia5g4i5pnst4dfcuwwgjdoul6xmcke2obz5os4xwoo3q
[
{
"id": "bafyreigt3he52eia5g4i5pnst4dfcuwwgjdoul6xmcke2obz5os4xwoo3q",
"names": null,
"owners": [
"9A66500A9AA574CAAB4EDB26F7333590BF452CE0"
],
"bondId": "ba774084e25af5b29be126dda0bb910d93dea3634713a438ac257da5bbdc631c",
"createTime": "2023-11-17T23:11:27Z",
"expiryTime": "2024-11-16T23:11:27Z",
"attributes": {
"meta": "{\"foo\":\"bar\",\"bar\":{\"baz\":\"boz\"}}",
"tags": [
"a",
"b",
"c"
],
"type": "GeneralRecord",
"name": "my-generic-record",
"version": "0.0.1",
"category": "filter-by-this",
"value": "anything-goes-here"
}
}
]
```
> Note: The repeated items are preserved as lists, but the object/map ends up encoded as a string. It would be nice to avoid this.
Reviewed-on: https://git.vdb.to/cerc-io/laconic-sdk/pulls/44
Reviewed-by: David Boreham <dboreham@noreply.git.vdb.to>
Co-authored-by: Thomas E Lackey <telackey@bozemanpass.com>
Co-committed-by: Thomas E Lackey <telackey@bozemanpass.com>
2023-11-20 22:01:19 +00:00
|
|
|
string app_version = 10 [(gogoproto.moretags) = "json:\"appVersion\" yaml:\"appVersion\""];
|
|
|
|
string app_type = 11 [(gogoproto.moretags) = "json:\"appType\" yaml:\"appType\""];
|
|
|
|
string engines = 12 [(gogoproto.moretags) = "json:\"engines\" yaml:\"engines\""];
|
|
|
|
repeated string os = 13 [(gogoproto.moretags) = "json:\"os\" yaml:\"os\""];
|
|
|
|
repeated string cpu = 14 [(gogoproto.moretags) = "json:\"cpu\" yaml:\"cpu\""];
|
|
|
|
string meta = 20 [(gogoproto.moretags) = "json:\"meta\" yaml:\"meta\""];
|
|
|
|
repeated string tags = 21 [(gogoproto.moretags) = "json:\"tags\" yaml:\"tags\""];
|
|
|
|
}
|
|
|
|
|
2023-12-07 22:08:49 +00:00
|
|
|
message DnsRecord {
|
|
|
|
string type = 1 [(gogoproto.moretags) = "json:\"type\" yaml:\"type\""];
|
|
|
|
string name = 2 [(gogoproto.moretags) = "json:\"name\" yaml:\"name\""];
|
|
|
|
string version = 3 [(gogoproto.moretags) = "json:\"version\" yaml:\"version\""];
|
|
|
|
string resource_type = 4 [(gogoproto.moretags) = "json:\"resourceType\" yaml:\"resourceType\""];
|
|
|
|
string value = 5 [(gogoproto.moretags) = "json:\"value\" yaml:\"value\""];
|
|
|
|
string meta = 20 [(gogoproto.moretags) = "json:\"meta\" yaml:\"meta\""];
|
|
|
|
repeated string tags = 21 [(gogoproto.moretags) = "json:\"tags\" yaml:\"tags\""];
|
|
|
|
}
|
|
|
|
|
|
|
|
message ApplicationDeploymentRequest {
|
|
|
|
string type = 1 [(gogoproto.moretags) = "json:\"type\" yaml:\"type\""];
|
|
|
|
string name = 2 [(gogoproto.moretags) = "json:\"name\" yaml:\"name\""];
|
|
|
|
string version = 3 [(gogoproto.moretags) = "json:\"version\" yaml:\"version\""];
|
|
|
|
string application = 4 [(gogoproto.moretags) = "json:\"application\" yaml:\"application\""];
|
|
|
|
string dns = 5 [(gogoproto.moretags) = "json:\"dns\" yaml:\"dns\""];
|
|
|
|
string config = 6 [(gogoproto.moretags) = "json:\"config\" yaml:\"config\""];
|
2023-12-08 04:37:09 +00:00
|
|
|
string deployment = 7 [(gogoproto.moretags) = "json:\"deployment\" yaml:\"deployment\""];
|
2023-12-07 22:08:49 +00:00
|
|
|
string meta = 20 [(gogoproto.moretags) = "json:\"meta\" yaml:\"meta\""];
|
|
|
|
repeated string tags = 21 [(gogoproto.moretags) = "json:\"tags\" yaml:\"tags\""];
|
|
|
|
}
|
|
|
|
|
|
|
|
message ApplicationDeploymentRecord {
|
Add new record types ApplicationRecord, WebAppDeploymentRecord, GeneralRecord (#44)
See also: https://git.vdb.to/cerc-io/laconicd/pulls/113
![image](/attachments/db05bbb6-86ca-4fbb-a8a4-fcd06501b1b1)
```
message ApplicationRecord {
string type = 1 [(gogoproto.moretags) = "json:\"type\" yaml:\"type\""];
string name = 2 [(gogoproto.moretags) = "json:\"name\" yaml:\"name\""];
string description = 3 [(gogoproto.moretags) = "json:\"description\" yaml:\"description\""];
string version = 4 [(gogoproto.moretags) = "json:\"version\" yaml:\"version\""];
string homepage = 5 [(gogoproto.moretags) = "json:\"homepage\" yaml:\"homepage\""];
string license = 6 [(gogoproto.moretags) = "json:\"license\" yaml:\"license\""];
string author = 7 [(gogoproto.moretags) = "json:\"author\" yaml:\"author\""];
string repository = 8 [(gogoproto.moretags) = "json:\"repository\" yaml:\"repository\""];
string repository_tag = 9 [(gogoproto.moretags) = "json:\"repositoryTag\" yaml:\"repositoryTag\""];
string app_version = 10 [(gogoproto.moretags) = "json:\"appVersion\" yaml:\"appVersion\""];
string app_type = 11 [(gogoproto.moretags) = "json:\"appType\" yaml:\"appType\""];
string meta = 20 [(gogoproto.moretags) = "json:\"meta\" yaml:\"meta\""];
repeated string tags = 21 [(gogoproto.moretags) = "json:\"tags\" yaml:\"tags\""];
}
message WebAppDeploymentRecord {
string type = 1 [(gogoproto.moretags) = "json:\"type\" yaml:\"type\""];
string name = 2 [(gogoproto.moretags) = "json:\"name\" yaml:\"name\""];
string description = 3 [(gogoproto.moretags) = "json:\"description\" yaml:\"description\""];
string version = 4 [(gogoproto.moretags) = "json:\"version\" yaml:\"version\""];
string application = 5 [(gogoproto.moretags) = "json:\"application\" yaml:\"application\""];
string url = 6 [(gogoproto.moretags) = "json:\"\" yaml:\"name\""];
string meta = 20 [(gogoproto.moretags) = "json:\"meta\" yaml:\"meta\""];
repeated string tags = 21 [(gogoproto.moretags) = "json:\"tags\" yaml:\"tags\""];
}
message GeneralRecord {
string type = 1 [(gogoproto.moretags) = "json:\"type\" yaml:\"type\""];
string name = 2 [(gogoproto.moretags) = "json:\"name\" yaml:\"name\""];
string description = 3 [(gogoproto.moretags) = "json:\"description\" yaml:\"description\""];
string version = 4 [(gogoproto.moretags) = "json:\"version\" yaml:\"version\""];
string category = 5 [(gogoproto.moretags) = "json:\"category\" yaml:\"category\""];
string value = 6 [(gogoproto.moretags) = "json:\"value\" yaml:\"value\""];
string meta = 20 [(gogoproto.moretags) = "json:\"meta\" yaml:\"meta\""];
repeated string tags = 21 [(gogoproto.moretags) = "json:\"tags\" yaml:\"tags\""];
```
```
❯ cat general.yml
record:
type: GeneralRecord
name: my-generic-record
version: 0.0.1
value: "anything-goes-here"
category: filter-by-this
tags:
- a
- b
- c
meta:
foo: bar
bar:
baz: boz
❯ bin/laconic cns record publish --filename general.yml --bond-id ba774084e25af5b29be126dda0bb910d93dea3634713a438ac257da5bbdc631c
{
"id": "bafyreigt3he52eia5g4i5pnst4dfcuwwgjdoul6xmcke2obz5os4xwoo3q"
}
❯ bin/laconic cns record get --id bafyreigt3he52eia5g4i5pnst4dfcuwwgjdoul6xmcke2obz5os4xwoo3q
[
{
"id": "bafyreigt3he52eia5g4i5pnst4dfcuwwgjdoul6xmcke2obz5os4xwoo3q",
"names": null,
"owners": [
"9A66500A9AA574CAAB4EDB26F7333590BF452CE0"
],
"bondId": "ba774084e25af5b29be126dda0bb910d93dea3634713a438ac257da5bbdc631c",
"createTime": "2023-11-17T23:11:27Z",
"expiryTime": "2024-11-16T23:11:27Z",
"attributes": {
"meta": "{\"foo\":\"bar\",\"bar\":{\"baz\":\"boz\"}}",
"tags": [
"a",
"b",
"c"
],
"type": "GeneralRecord",
"name": "my-generic-record",
"version": "0.0.1",
"category": "filter-by-this",
"value": "anything-goes-here"
}
}
]
```
> Note: The repeated items are preserved as lists, but the object/map ends up encoded as a string. It would be nice to avoid this.
Reviewed-on: https://git.vdb.to/cerc-io/laconic-sdk/pulls/44
Reviewed-by: David Boreham <dboreham@noreply.git.vdb.to>
Co-authored-by: Thomas E Lackey <telackey@bozemanpass.com>
Co-committed-by: Thomas E Lackey <telackey@bozemanpass.com>
2023-11-20 22:01:19 +00:00
|
|
|
string type = 1 [(gogoproto.moretags) = "json:\"type\" yaml:\"type\""];
|
|
|
|
string name = 2 [(gogoproto.moretags) = "json:\"name\" yaml:\"name\""];
|
|
|
|
string description = 3 [(gogoproto.moretags) = "json:\"description\" yaml:\"description\""];
|
|
|
|
string version = 4 [(gogoproto.moretags) = "json:\"version\" yaml:\"version\""];
|
|
|
|
string application = 5 [(gogoproto.moretags) = "json:\"application\" yaml:\"application\""];
|
|
|
|
string url = 6 [(gogoproto.moretags) = "json:\"url\" yaml:\"url\""];
|
2023-12-07 22:08:49 +00:00
|
|
|
string dns = 7 [(gogoproto.moretags) = "json:\"dns\" yaml:\"dns\""];
|
|
|
|
string request = 8 [(gogoproto.moretags) = "json:\"request\" yaml:\"request\""];
|
Add new record types ApplicationRecord, WebAppDeploymentRecord, GeneralRecord (#44)
See also: https://git.vdb.to/cerc-io/laconicd/pulls/113
![image](/attachments/db05bbb6-86ca-4fbb-a8a4-fcd06501b1b1)
```
message ApplicationRecord {
string type = 1 [(gogoproto.moretags) = "json:\"type\" yaml:\"type\""];
string name = 2 [(gogoproto.moretags) = "json:\"name\" yaml:\"name\""];
string description = 3 [(gogoproto.moretags) = "json:\"description\" yaml:\"description\""];
string version = 4 [(gogoproto.moretags) = "json:\"version\" yaml:\"version\""];
string homepage = 5 [(gogoproto.moretags) = "json:\"homepage\" yaml:\"homepage\""];
string license = 6 [(gogoproto.moretags) = "json:\"license\" yaml:\"license\""];
string author = 7 [(gogoproto.moretags) = "json:\"author\" yaml:\"author\""];
string repository = 8 [(gogoproto.moretags) = "json:\"repository\" yaml:\"repository\""];
string repository_tag = 9 [(gogoproto.moretags) = "json:\"repositoryTag\" yaml:\"repositoryTag\""];
string app_version = 10 [(gogoproto.moretags) = "json:\"appVersion\" yaml:\"appVersion\""];
string app_type = 11 [(gogoproto.moretags) = "json:\"appType\" yaml:\"appType\""];
string meta = 20 [(gogoproto.moretags) = "json:\"meta\" yaml:\"meta\""];
repeated string tags = 21 [(gogoproto.moretags) = "json:\"tags\" yaml:\"tags\""];
}
message WebAppDeploymentRecord {
string type = 1 [(gogoproto.moretags) = "json:\"type\" yaml:\"type\""];
string name = 2 [(gogoproto.moretags) = "json:\"name\" yaml:\"name\""];
string description = 3 [(gogoproto.moretags) = "json:\"description\" yaml:\"description\""];
string version = 4 [(gogoproto.moretags) = "json:\"version\" yaml:\"version\""];
string application = 5 [(gogoproto.moretags) = "json:\"application\" yaml:\"application\""];
string url = 6 [(gogoproto.moretags) = "json:\"\" yaml:\"name\""];
string meta = 20 [(gogoproto.moretags) = "json:\"meta\" yaml:\"meta\""];
repeated string tags = 21 [(gogoproto.moretags) = "json:\"tags\" yaml:\"tags\""];
}
message GeneralRecord {
string type = 1 [(gogoproto.moretags) = "json:\"type\" yaml:\"type\""];
string name = 2 [(gogoproto.moretags) = "json:\"name\" yaml:\"name\""];
string description = 3 [(gogoproto.moretags) = "json:\"description\" yaml:\"description\""];
string version = 4 [(gogoproto.moretags) = "json:\"version\" yaml:\"version\""];
string category = 5 [(gogoproto.moretags) = "json:\"category\" yaml:\"category\""];
string value = 6 [(gogoproto.moretags) = "json:\"value\" yaml:\"value\""];
string meta = 20 [(gogoproto.moretags) = "json:\"meta\" yaml:\"meta\""];
repeated string tags = 21 [(gogoproto.moretags) = "json:\"tags\" yaml:\"tags\""];
```
```
❯ cat general.yml
record:
type: GeneralRecord
name: my-generic-record
version: 0.0.1
value: "anything-goes-here"
category: filter-by-this
tags:
- a
- b
- c
meta:
foo: bar
bar:
baz: boz
❯ bin/laconic cns record publish --filename general.yml --bond-id ba774084e25af5b29be126dda0bb910d93dea3634713a438ac257da5bbdc631c
{
"id": "bafyreigt3he52eia5g4i5pnst4dfcuwwgjdoul6xmcke2obz5os4xwoo3q"
}
❯ bin/laconic cns record get --id bafyreigt3he52eia5g4i5pnst4dfcuwwgjdoul6xmcke2obz5os4xwoo3q
[
{
"id": "bafyreigt3he52eia5g4i5pnst4dfcuwwgjdoul6xmcke2obz5os4xwoo3q",
"names": null,
"owners": [
"9A66500A9AA574CAAB4EDB26F7333590BF452CE0"
],
"bondId": "ba774084e25af5b29be126dda0bb910d93dea3634713a438ac257da5bbdc631c",
"createTime": "2023-11-17T23:11:27Z",
"expiryTime": "2024-11-16T23:11:27Z",
"attributes": {
"meta": "{\"foo\":\"bar\",\"bar\":{\"baz\":\"boz\"}}",
"tags": [
"a",
"b",
"c"
],
"type": "GeneralRecord",
"name": "my-generic-record",
"version": "0.0.1",
"category": "filter-by-this",
"value": "anything-goes-here"
}
}
]
```
> Note: The repeated items are preserved as lists, but the object/map ends up encoded as a string. It would be nice to avoid this.
Reviewed-on: https://git.vdb.to/cerc-io/laconic-sdk/pulls/44
Reviewed-by: David Boreham <dboreham@noreply.git.vdb.to>
Co-authored-by: Thomas E Lackey <telackey@bozemanpass.com>
Co-committed-by: Thomas E Lackey <telackey@bozemanpass.com>
2023-11-20 22:01:19 +00:00
|
|
|
string meta = 20 [(gogoproto.moretags) = "json:\"meta\" yaml:\"meta\""];
|
|
|
|
repeated string tags = 21 [(gogoproto.moretags) = "json:\"tags\" yaml:\"tags\""];
|
|
|
|
}
|
|
|
|
|
|
|
|
message GeneralRecord {
|
|
|
|
string type = 1 [(gogoproto.moretags) = "json:\"type\" yaml:\"type\""];
|
|
|
|
string name = 2 [(gogoproto.moretags) = "json:\"name\" yaml:\"name\""];
|
|
|
|
string description = 3 [(gogoproto.moretags) = "json:\"description\" yaml:\"description\""];
|
|
|
|
string version = 4 [(gogoproto.moretags) = "json:\"version\" yaml:\"version\""];
|
|
|
|
string category = 5 [(gogoproto.moretags) = "json:\"category\" yaml:\"category\""];
|
|
|
|
string value = 6 [(gogoproto.moretags) = "json:\"value\" yaml:\"value\""];
|
|
|
|
string meta = 20 [(gogoproto.moretags) = "json:\"meta\" yaml:\"meta\""];
|
|
|
|
repeated string tags = 21 [(gogoproto.moretags) = "json:\"tags\" yaml:\"tags\""];
|
2023-12-07 22:08:49 +00:00
|
|
|
}
|