refactor: necessary changes due to moving fleet config to the desktop app
This commit doesn't remove fleet configuration completely but it's more like a step before the final one.
This commit is contained in:
parent
e1ba033633
commit
1f07ce9a8f
|
@ -62,7 +62,7 @@ proc generateAlias*(self: AccountModel, publicKey: string): string =
|
||||||
proc generateIdenticon*(self: AccountModel, publicKey: string): string =
|
proc generateIdenticon*(self: AccountModel, publicKey: string): string =
|
||||||
result = generateIdenticon(publicKey)
|
result = generateIdenticon(publicKey)
|
||||||
|
|
||||||
proc changeNetwork*(self: AccountModel, fleetConfig: FleetConfig, network: string) =
|
proc changeNetwork*(self: AccountModel, network: string) =
|
||||||
var statusGoResult = status_settings.setNetwork(network)
|
var statusGoResult = status_settings.setNetwork(network)
|
||||||
if statusGoResult.error != "":
|
if statusGoResult.error != "":
|
||||||
error "Error saving updated node config", msg=statusGoResult.error
|
error "Error saving updated node config", msg=statusGoResult.error
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
import json, json_serialization
|
import json, json_serialization, strutils
|
||||||
|
|
||||||
import statusgo_backend/settings as statusgo_backend_settings
|
import statusgo_backend/settings as statusgo_backend_settings
|
||||||
import ../eventemitter
|
import ../eventemitter
|
||||||
|
@ -36,8 +36,8 @@ proc pinMailserver*(self: SettingsModel, enode: string = "") =
|
||||||
proc saveMailserver*(self: SettingsModel, name, enode: string) =
|
proc saveMailserver*(self: SettingsModel, name, enode: string) =
|
||||||
statusgo_backend_settings.saveMailserver(name, enode)
|
statusgo_backend_settings.saveMailserver(name, enode)
|
||||||
|
|
||||||
proc getFleet*(self: SettingsModel): Fleet =
|
proc getFleet*(self: SettingsModel): string =
|
||||||
result = statusgo_backend_settings.getFleet()
|
statusgo_backend_settings.getFleet()
|
||||||
|
|
||||||
proc getCurrentNetwork*(self: SettingsModel): NetworkType =
|
proc getCurrentNetwork*(self: SettingsModel): NetworkType =
|
||||||
result = statusgo_backend_settings.getCurrentNetwork()
|
result = statusgo_backend_settings.getCurrentNetwork()
|
||||||
|
@ -51,7 +51,7 @@ proc getWakuVersion*(self: SettingsModel): int =
|
||||||
proc setBloomFilterMode*(self: SettingsModel, bloomFilterMode: bool): StatusGoError =
|
proc setBloomFilterMode*(self: SettingsModel, bloomFilterMode: bool): StatusGoError =
|
||||||
statusgo_backend_settings.setBloomFilterMode(bloomFilterMode)
|
statusgo_backend_settings.setBloomFilterMode(bloomFilterMode)
|
||||||
|
|
||||||
proc setFleet*(self: SettingsModel, fleetConfig: FleetConfig, fleet: Fleet): StatusGoError =
|
proc setFleet*(self: SettingsModel, fleetConfig: FleetConfig, fleet: string): StatusGoError =
|
||||||
statusgo_backend_settings.setFleet(fleetConfig, fleet)
|
statusgo_backend_settings.setFleet(fleetConfig, fleet)
|
||||||
|
|
||||||
proc setV2LightMode*(self: SettingsModel, enabled: bool): StatusGoError =
|
proc setV2LightMode*(self: SettingsModel, enabled: bool): StatusGoError =
|
||||||
|
|
|
@ -9,12 +9,11 @@ import ./keycard
|
||||||
|
|
||||||
import ../backends/backend
|
import ../backends/backend
|
||||||
|
|
||||||
export chat, accounts, node, messages, contacts, profile, network, permissions, fleet, eventemitter
|
export chat, accounts, node, messages, contacts, profile, network, permissions, eventemitter
|
||||||
|
|
||||||
type Status* = ref object
|
type Status* = ref object
|
||||||
backend*: Backend
|
backend*: Backend
|
||||||
events*: EventEmitter
|
events*: EventEmitter
|
||||||
fleet*: FleetModel
|
|
||||||
chat*: ChatModel
|
chat*: ChatModel
|
||||||
messages*: MessagesModel
|
messages*: MessagesModel
|
||||||
accounts*: AccountModel
|
accounts*: AccountModel
|
||||||
|
@ -31,11 +30,10 @@ type Status* = ref object
|
||||||
provider*: ProviderModel
|
provider*: ProviderModel
|
||||||
keycard*: KeycardModel
|
keycard*: KeycardModel
|
||||||
|
|
||||||
proc newStatusInstance*(fleetConfig: string, backendName: string = "statusgo"): Status =
|
proc newStatusInstanceInternal(backendName: string = "statusgo"): Status =
|
||||||
result = Status()
|
result = Status()
|
||||||
result.backend = newBackend(backendName)
|
result.backend = newBackend(backendName)
|
||||||
result.events = createEventEmitter()
|
result.events = createEventEmitter()
|
||||||
result.fleet = fleet.newFleetModel(fleetConfig)
|
|
||||||
result.chat = chat.newChatModel(result.events)
|
result.chat = chat.newChatModel(result.events)
|
||||||
result.accounts = accounts.newAccountModel(result.events)
|
result.accounts = accounts.newAccountModel(result.events)
|
||||||
result.wallet = wallet.newWalletModel(result.events)
|
result.wallet = wallet.newWalletModel(result.events)
|
||||||
|
@ -95,8 +93,8 @@ proc getBloomFilterBitsSet*(self: Status): int {.exportc, dynlib.} =
|
||||||
# exported correctly
|
# exported correctly
|
||||||
|
|
||||||
|
|
||||||
proc newStatusInstance*(fleetConfig: cstring): Status {.exportc, dynlib.} =
|
proc newStatusInstance*(): Status {.exportc, dynlib.} =
|
||||||
newStatusInstance($fleetConfig)
|
newStatusInstanceInternal()
|
||||||
|
|
||||||
proc initNode*(self: Status, statusGoDir, keystoreDir: cstring) {.exportc, dynlib.} =
|
proc initNode*(self: Status, statusGoDir, keystoreDir: cstring) {.exportc, dynlib.} =
|
||||||
self.initNode($statusGoDir, $keystoreDir)
|
self.initNode($statusGoDir, $keystoreDir)
|
||||||
|
|
|
@ -89,9 +89,8 @@ proc getCurrentNetworkDetails*(): NetworkDetails =
|
||||||
proc getLinkPreviewWhitelist*(): JsonNode =
|
proc getLinkPreviewWhitelist*(): JsonNode =
|
||||||
result = callPrivateRPC("getLinkPreviewWhitelist".prefix, %* []).parseJSON()["result"]
|
result = callPrivateRPC("getLinkPreviewWhitelist".prefix, %* []).parseJSON()["result"]
|
||||||
|
|
||||||
proc getFleet*(): Fleet =
|
proc getFleet*(): string =
|
||||||
let fleet = getSetting[string](Setting.Fleet, $Fleet.PROD)
|
result = getSetting[string](Setting.Fleet, $Fleet.PROD)
|
||||||
result = parseEnum[Fleet](fleet)
|
|
||||||
|
|
||||||
proc getPinnedMailserver*(): string =
|
proc getPinnedMailserver*(): string =
|
||||||
let pinnedMailservers = getSetting[JsonNode](Setting.PinnedMailservers, %*{})
|
let pinnedMailservers = getSetting[JsonNode](Setting.PinnedMailservers, %*{})
|
||||||
|
@ -203,20 +202,21 @@ proc setBloomLevel*(bloomFilterMode: bool, fullNode: bool): StatusGoError =
|
||||||
nodeConfig["WakuConfig"]["LightClient"] = newJBool(not fullNode)
|
nodeConfig["WakuConfig"]["LightClient"] = newJBool(not fullNode)
|
||||||
return saveSetting(Setting.NodeConfig, nodeConfig)
|
return saveSetting(Setting.NodeConfig, nodeConfig)
|
||||||
|
|
||||||
proc setFleet*(fleetConfig: FleetConfig, fleet: Fleet): StatusGoError =
|
proc setFleet*(fleetConfig: FleetConfig, fleet: string): StatusGoError =
|
||||||
let statusGoResult = saveSetting(Setting.Fleet, $fleet)
|
let fleetType = parseEnum[Fleet](fleet)
|
||||||
|
let statusGoResult = saveSetting(Setting.Fleet, fleet)
|
||||||
if statusGoResult.error != "":
|
if statusGoResult.error != "":
|
||||||
return statusGoResult
|
return statusGoResult
|
||||||
var nodeConfig = getNodeConfig()
|
var nodeConfig = getNodeConfig()
|
||||||
nodeConfig["ClusterConfig"]["Fleet"] = newJString($fleet)
|
nodeConfig["ClusterConfig"]["Fleet"] = newJString(fleet)
|
||||||
nodeConfig["ClusterConfig"]["BootNodes"] = %* fleetConfig.getNodes(fleet, FleetNodes.Bootnodes)
|
nodeConfig["ClusterConfig"]["BootNodes"] = %* fleetConfig.getNodes(fleetType, FleetNodes.Bootnodes)
|
||||||
nodeConfig["ClusterConfig"]["TrustedMailServers"] = %* fleetConfig.getNodes(fleet, FleetNodes.Mailservers)
|
nodeConfig["ClusterConfig"]["TrustedMailServers"] = %* fleetConfig.getNodes(fleetType, FleetNodes.Mailservers)
|
||||||
nodeConfig["ClusterConfig"]["StaticNodes"] = %* fleetConfig.getNodes(fleet, FleetNodes.Whisper)
|
nodeConfig["ClusterConfig"]["StaticNodes"] = %* fleetConfig.getNodes(fleetType, FleetNodes.Whisper)
|
||||||
nodeConfig["ClusterConfig"]["RendezvousNodes"] = %* fleetConfig.getNodes(fleet, FleetNodes.Rendezvous)
|
nodeConfig["ClusterConfig"]["RendezvousNodes"] = %* fleetConfig.getNodes(fleetType, FleetNodes.Rendezvous)
|
||||||
nodeConfig["ClusterConfig"]["RelayNodes"] = %* @["enrtree://AOFTICU2XWDULNLZGRMQS4RIZPAZEHYMV4FYHAPW563HNRAOERP7C@test.waku.nodes.status.im"]
|
nodeConfig["ClusterConfig"]["RelayNodes"] = %* @["enrtree://AOFTICU2XWDULNLZGRMQS4RIZPAZEHYMV4FYHAPW563HNRAOERP7C@test.nodes.vac.dev"]
|
||||||
nodeConfig["ClusterConfig"]["StoreNodes"] = %* @["enrtree://AOFTICU2XWDULNLZGRMQS4RIZPAZEHYMV4FYHAPW563HNRAOERP7C@test.waku.nodes.status.im"]
|
nodeConfig["ClusterConfig"]["StoreNodes"] = %* @["enrtree://AOFTICU2XWDULNLZGRMQS4RIZPAZEHYMV4FYHAPW563HNRAOERP7C@test.nodes.vac.dev"]
|
||||||
nodeConfig["ClusterConfig"]["FilterNodes"] = %* @["enrtree://AOFTICU2XWDULNLZGRMQS4RIZPAZEHYMV4FYHAPW563HNRAOERP7C@test.waku.nodes.status.im"]
|
nodeConfig["ClusterConfig"]["FilterNodes"] = %* @["enrtree://AOFTICU2XWDULNLZGRMQS4RIZPAZEHYMV4FYHAPW563HNRAOERP7C@test.nodes.vac.dev"]
|
||||||
nodeConfig["ClusterConfig"]["LightpushNodes"] = %* @["enrtree://AOFTICU2XWDULNLZGRMQS4RIZPAZEHYMV4FYHAPW563HNRAOERP7C@test.waku.nodes.status.im"]
|
nodeConfig["ClusterConfig"]["LightpushNodes"] = %* @["enrtree://AOFTICU2XWDULNLZGRMQS4RIZPAZEHYMV4FYHAPW563HNRAOERP7C@test.nodes.vac.dev"]
|
||||||
|
|
||||||
#TODO: in the meantime we're using the go-waku test fleet for rendezvous.
|
#TODO: in the meantime we're using the go-waku test fleet for rendezvous.
|
||||||
# once we have a prod fleet this code needs to be updated
|
# once we have a prod fleet this code needs to be updated
|
||||||
|
|
Loading…
Reference in New Issue