CLI

control

status

Run
1
oasis-node control status
Copied!
to get information like the following (example taken from a runtime compute node):
1
{
2
"software_version": "21.3",
3
"identity": {
4
"node": "iWq6Nft6dU2GWAr9U7ICbhXWwmAINIniKzMMblSo5Xs=",
5
"p2p": "dGd+pGgIlkJb0dnkBQ7vI2EWWG81pF5M1G+jL2/6pyA=",
6
"consensus": "QaMdKVwX1da0Uf82cp0DDukQQwrSjr8BwlIxc//ANE8=",
7
"tls": [
8
"Kj8ANHwfMzcWoA1vx0OMhn4oGv8Y0vc46xMOdQUIh5c=",
9
"1C8rWqyuARkSxNXuPbDPh9XID/SiYAU3GxGk6nMwR0Q="
10
]
11
},
12
"consensus": {
13
"version": {
14
"major": 4
15
},
16
"backend": "tendermint",
17
"features": 3,
18
"node_peers": [
19
21
],
22
"latest_height": 5960191,
23
"latest_hash": "091c29c3d588c52421a4f215268c6b4ab1a7762c429a98fec5de9251f8907add",
24
"latest_time": "2021-09-24T21:42:29+02:00",
25
"latest_epoch": 10489,
26
"latest_state_root": {
27
"ns": "0000000000000000000000000000000000000000000000000000000000000000",
28
"version": 5960190,
29
"root_type": 1,
30
"hash": "c34581dcec59d80656d6082260d63f3206aef0a1b950c1f2c06d1eaa36a22ec3"
31
},
32
"genesis_height": 5891596,
33
"genesis_hash": "e9d9fb99baefc3192a866581c35bf43d7f0499c64e1c150171e87b2d5dc35087",
34
"last_retained_height": 5891596,
35
"last_retained_hash": "e9d9fb99baefc3192a866581c35bf43d7f0499c64e1c150171e87b2d5dc35087",
36
"chain_context": "9ee492b63e99eab58fd979a23dfc9b246e5fc151bfdecd48d3ba26a9d0712c2b",
37
"is_validator": true
38
},
39
"runtimes": {
40
"0000000000000000000000000000000000000000000000000000000000000001": {
41
"descriptor": {
42
"v": 2,
43
"id": "0000000000000000000000000000000000000000000000000000000000000001",
44
"entity_id": "Ldzg8aeLiUBrMYxidd5DqEzpamyV2cprmRH0pG8d/Jg=",
45
"genesis": {
46
"state_root": "c672b8d1ef56ed28ab87c3622c5114069bdd3ad7b8f9737498d0c01ecef0967a",
47
"state": null,
48
"storage_receipts": null,
49
"round": 0
50
},
51
"kind": 1,
52
"tee_hardware": 0,
53
"versions": {
54
"version": {
55
"minor": 2
56
}
57
},
58
"executor": {
59
"group_size": 3,
60
"group_backup_size": 3,
61
"allowed_stragglers": 1,
62
"round_timeout": 5,
63
"max_messages": 256
64
},
65
"txn_scheduler": {
66
"algorithm": "simple",
67
"batch_flush_timeout": 1000000000,
68
"max_batch_size": 100,
69
"max_batch_size_bytes": 1048576,
70
"propose_batch_timeout": 2
71
},
72
"storage": {
73
"group_size": 3,
74
"min_write_replication": 2,
75
"max_apply_write_log_entries": 10000,
76
"max_apply_ops": 2,
77
"checkpoint_interval": 100,
78
"checkpoint_num_kept": 2,
79
"checkpoint_chunk_size": 8388608
80
},
81
"admission_policy": {
82
"any_node": {}
83
},
84
"constraints": {
85
"executor": {
86
"backup-worker": {
87
"max_nodes": {
88
"limit": 1
89
},
90
"min_pool_size": {
91
"limit": 3
92
}
93
},
94
"worker": {
95
"max_nodes": {
96
"limit": 1
97
},
98
"min_pool_size": {
99
"limit": 3
100
}
101
}
102
},
103
"storage": {
104
"worker": {
105
"max_nodes": {
106
"limit": 1
107
},
108
"min_pool_size": {
109
"limit": 3
110
}
111
}
112
}
113
},
114
"staking": {},
115
"governance_model": "entity"
116
},
117
"latest_round": 1355,
118
"latest_hash": "2a11820c0524a8a753f7f4a268ee2d0a4f4588a89121f92a43f4be9cc6acca7e",
119
"latest_time": "2021-09-24T21:41:29+02:00",
120
"latest_state_root": {
121
"ns": "0000000000000000000000000000000000000000000000000000000000000000",
122
"version": 1355,
123
"root_type": 1,
124
"hash": "45168e11548ac5322a9a206abff4368983b5cf676b1bcb2269f5dfbdf9df7be3"
125
},
126
"genesis_round": 0,
127
"genesis_hash": "aed94c03ebd2d16dfb5f6434021abf69c8c15fc69b6b19554d23da8a5a053776",
128
"committee": {
129
"latest_round": 1355,
130
"latest_height": 5960180,
131
"last_committee_update_height": 5960174,
132
"executor_roles": [
133
"worker",
134
"backup-worker"
135
],
136
"storage_roles": [
137
"worker"
138
],
139
"is_txn_scheduler": false,
140
"peers": [
141
"/ip4/57.71.39.73/tcp/41002/p2p/12D3KooWJvL8mYzHbcLtj91bf5sHhtrB7C8CWND5sV6Kk24eUdpQ",
142
"/ip4/108.67.32.45/tcp/26648/p2p/12D3KooWBKgcH7TGMSLuxzLxK41nTwk6DsxHRpb7HpWQXJzLurcv"
143
]
144
},
145
"storage": {
146
"last_finalized_round": 1355
147
}
148
}
149
},
150
"registration": {
151
"last_registration": "2021-09-24T21:41:08+02:00",
152
"descriptor": {
153
"v": 1,
154
"id": "iWq6Nft6dU2GWAr9U7ICbhXWwmAINIniKzMMblSo5Xs=",
155
"entity_id": "4G4ISI8hANvMRYTbxdXU+0r9m/6ZySHERR+2RDbNOU8=",
156
"expiration": 10491,
157
"tls": {
158
"pub_key": "Kj8ANHwfMzcWoA1vx0OMhn4oGv8Y0vc46xMOdQUIh5c=",
159
"next_pub_key": "1C8rWqyuARkSxNXuPbDPh9XID/SiYAU3GxGk6nMwR0Q=",
160
"addresses": [
161
162
"1C8rWqyuARkSxNXuPbDPh9XID/[email protected]:30001"
163
]
164
},
165
"p2p": {
166
"id": "dGd+pGgIlkJb0dnkBQ7vI2EWWG81pF5M1G+jL2/6pyA=",
167
"addresses": [
168
"159.89.215.24:30002"
169
]
170
},
171
"consensus": {
172
"id": "QaMdKVwX1da0Uf82cp0DDukQQwrSjr8BwlIxc//ANE8=",
173
"addresses": [
174
"dGd+pGgIlkJb0dnkBQ7vI2EWWG81pF5M1G+jL2/[email protected]:26656"
175
]
176
},
177
"beacon": {
178
"point": "BHg8TOqKD4wV8UCu9nICvJt7rhXFd8CxXuYiHa6X/NnzlIndzGNEJyyTr00s5rgKwX25yPmv+r2xRFbcQK6hGLE="
179
},
180
"runtimes": [
181
{
182
"id": "0000000000000000000000000000000000000000000000000000000000000001",
183
"version": {
184
"minor": 2
185
},
186
"capabilities": {},
187
"extra_info": null
188
}
189
],
190
"roles": "compute,storage,validator"
191
},
192
"node_status": {
193
"expiration_processed": false,
194
"freeze_end_time": 0,
195
"election_eligible_after": 9810
196
}
197
},
198
"pending_upgrades": []
199
}
Copied!

genesis

check

To check if a given genesis file is valid, run:
1
oasis-node genesis check --genesis.file /path/to/genesis.json
Copied!
This also checks if the genesis file is in the canonical form.

dump

To dump the state of the network at a specific block height, e.g. 717600, to a genesis file, run:
1
oasis-node genesis dump \
2
--address unix:/path/to/node/internal.sock \
3
--genesis.file /path/to/genesis_dump.json \
4
--height 717600
Copied!
You must only run the following command after the given block height has been reached on the network.

init

To initialize a new genesis file with the given chain id and staking token symbol, run:
1
oasis-node genesis init --genesis.file /path/to/genesis.json \
2
--chain.id "name-of-my-network" \
3
--staking.token_symbol TEST
Copied!
You can set a lot of parameters for the various consensus layer services.
To see the full list, run:
1
oasis-node genesis init --help
Copied!

stake

account

info

Run
1
oasis-node stake account info \
2
--stake.account.address <account address> \
3
--address unix:/path/to/node/internal.sock
Copied!
to get staking information for a specific account:
1
General Account:
2
Balance: TEST 0.0
3
Nonce: 0
4
Escrow Account:
5
Active:
6
Balance: TEST 0.0
7
Total Shares: 0
8
Debonding:
9
Balance: TEST 0.0
10
Total Shares: 0
11
Commission Schedule:
12
Rates: (none)
13
Rate Bounds: (none)
14
Stake Accumulator:
15
Claims:
16
- Name: registry.RegisterEntity
17
Staking Thresholds:
18
- Global: entity
19
- Name: registry.RegisterNode.LQu4ZtFg8OJ0MC4M4QMeUR7Is6Xt4A/CW+PK/7TPiH0=
20
Staking Thresholds:
21
- Global: node-validator
Copied!

pubkey2address

Run
1
oasis-node stake pubkey2address --public_key <public_key>
Copied!
to get staking account address from an entity or node public key. Example response:
1
oasis1qqncl383h8458mr9cytatygctzwsx02n4c5f8ed7
Copied!
Last modified 23d ago