skywire
skywire copied to clipboard
Services array in visor config & fall over
Services Array
Every instance of a URL for a service specified in the visor's config should become an array of strings instead of just a string
"dmsg": {
"discovery": "http://dmsgd.skywire.skycoin.com",
"sessions_count": 1,
"servers": []
},
"transport": {
"discovery": "http://tpd.skywire.skycoin.com",
"address_resolver": "http://ar.skywire.skycoin.com",
"public_autoconnect": false,
"transport_setup_nodes": null,
"log_store": {
"type": "file",
"location": "/opt/skywire/local/transport_logs",
"rotation_interval": "168h0m0s"
}
},
"routing": {
"setup_nodes": [
"0324579f003e6b4048bae2def4365e634d8e0e3054a20fc7af49daf2a179658557"
],
"route_finder": "http://rf.skywire.skycoin.com",
"route_finder_timeout": "10s",
"min_hops": 0
},
"uptime_tracker": {
"addr": "http://ut.skywire.skycoin.com"
},
"launcher": {
"service_discovery": "http://sd.skycoin.com",
the above would become
{
"dmsg": [
{
"discovery": "http://dmsgd.skywire.skycoin.com",
"sessions_count": 1,
"servers": []
},
{
"discovery": "http://dmsgd.skywire.dev",
"sessions_count": 1,
"servers": []
}
],
"transport": [
{
"discovery": "http://tpd.skywire.skycoin.com",
"address_resolver": "http://ar.skywire.skycoin.com",
"public_autoconnect": false,
"transport_setup_nodes": null,
"log_store": {
"type": "file",
"location": "/opt/skywire/local/transport_logs",
"rotation_interval": "168h0m0s"
}
},
{
"discovery": "http://tpd.skywire.dev",
"address_resolver": "http://ar.skywire.dev",
"public_autoconnect": true,
"transport_setup_nodes": null,
"log_store": {
"type": "file",
"location": "./local/transport_logs",
"rotation_interval": "168h0m0s"
}
}
],
"routing": [
{
"setup_nodes": [
"0324579f003e6b4048bae2def4365e634d8e0e3054a20fc7af49daf2a179658557"
],
"route_finder": "http://rf.skywire.skycoin.com",
"route_finder_timeout": "10s",
"min_hops": 0
},
{
"setup_nodes": [
"026c2a3e92d6253c5abd71a42628db6fca9dd9aa037ab6f4e3a31108558dfd87cf"
],
"route_finder": "http://rf.skywire.dev",
"route_finder_timeout": "10s",
"min_hops": 0
}
],
"uptime_tracker": [
{
"addr": "http://ut.skywire.skycoin.com"
},
{
"addr": "http://ut.skywire.dev"
}
],
"launcher": [
{
"service_discovery": "http://sd.skycoin.com"
},
{
"service_discovery": "http://sd.skywire.dev"
}
]
}
the transport log store location needs to be a unique path or else the transport logs need to be identified per the transport discovery used
Fall over
These services should be used based on their order in the array. If an operation is unsuccessful (after n tries?) the next configured service should be used, and so on.