From 13b6d5a0c3dac4bd1f71f392122058ead93119f3 Mon Sep 17 00:00:00 2001 From: Michal Iskierko Date: Wed, 16 Nov 2022 11:23:10 +0100 Subject: [PATCH] feat(@desktop/cpp): Use env variable WAKUV2_PORT Issue #8274 --- .../Onboarding/Accounts/AccountsService.cpp | 20 ++++++++++++------- resources/node-config.json | 4 ++-- 2 files changed, 15 insertions(+), 9 deletions(-) diff --git a/libs/Onboarding/src/Onboarding/Accounts/AccountsService.cpp b/libs/Onboarding/src/Onboarding/Accounts/AccountsService.cpp index 100205e452..53abffb8ce 100644 --- a/libs/Onboarding/src/Onboarding/Accounts/AccountsService.cpp +++ b/libs/Onboarding/src/Onboarding/Accounts/AccountsService.cpp @@ -363,26 +363,32 @@ QJsonObject AccountsService::getDefaultNodeConfig(const QString& installationId) { try { + const auto envVarInfuraToken = "INFURA_TOKEN"; + const auto envVarWakuV2Port = "WAKUV2_PORT"; + auto templateNodeConfigJsonStr = getDataFromFile(":/Status/StaticConfig/node-config.json").value(); auto fleetJson = getDataFromFile(":/Status/StaticConfig/fleets.json").value(); - auto envInfuraKey = qEnvironmentVariable("INFURA_TOKEN"); - auto infuraKey = - envInfuraKey.isEmpty() ? getDataFromFile(":/Status/StaticConfig/infura_key").value() : envInfuraKey; + const auto infuraKey = qEnvironmentVariable(envVarInfuraToken, getDataFromFile(":/Status/StaticConfig/infura_key").value()); auto templateDefaultNetworksJson = getDataFromFile(":/Status/StaticConfig/default-networks.json").value(); QString defaultNetworksContent = templateDefaultNetworksJson.replace("%INFURA_TOKEN_RESOLVED%", infuraKey); QJsonArray defaultNetworksJson = QJsonDocument::fromJson(defaultNetworksContent.toUtf8()).array(); - auto DEFAULT_TORRENT_CONFIG_PORT = 9025; - auto DEFAULT_TORRENT_CONFIG_DATADIR = m_statusgoDataDir / "archivedata"; - auto DEFAULT_TORRENT_CONFIG_TORRENTDIR = m_statusgoDataDir / "torrents"; + const auto DEFAULT_WAKUV2_CONFIG_PORT = "0"; + const auto DEFAULT_TORRENT_CONFIG_PORT = 9025; + const auto DEFAULT_TORRENT_CONFIG_DATADIR = m_statusgoDataDir / "archivedata"; + const auto DEFAULT_TORRENT_CONFIG_TORRENTDIR = m_statusgoDataDir / "torrents"; + + const auto wakuV2Port = qEnvironmentVariable(envVarWakuV2Port, DEFAULT_WAKUV2_CONFIG_PORT); auto nodeConfigJsonStr = templateNodeConfigJsonStr.replace("%INSTALLATIONID%", installationId) .replace("%INFURA_TOKEN_RESOLVED%", infuraKey) .replace("%DEFAULT_TORRENT_CONFIG_PORT%", QString::number(DEFAULT_TORRENT_CONFIG_PORT)) .replace("%DEFAULT_TORRENT_CONFIG_DATADIR%", DEFAULT_TORRENT_CONFIG_DATADIR.c_str()) - .replace("%DEFAULT_TORRENT_CONFIG_TORRENTDIR%", DEFAULT_TORRENT_CONFIG_TORRENTDIR.c_str()); + .replace("%DEFAULT_TORRENT_CONFIG_TORRENTDIR%", DEFAULT_TORRENT_CONFIG_TORRENTDIR.c_str()) + .replace("%DEFAULT_WAKUV2_CONFIG_PORT%", wakuV2Port); + QJsonObject nodeConfigJson = QJsonDocument::fromJson(nodeConfigJsonStr.toUtf8()).object(); QJsonObject clusterConfig = nodeConfigJson["ClusterConfig"].toObject(); diff --git a/resources/node-config.json b/resources/node-config.json index a5030a7c07..46a82d22dd 100644 --- a/resources/node-config.json +++ b/resources/node-config.json @@ -64,11 +64,11 @@ "WakuV2Config": { "Enabled": false, "Host": "0.0.0.0", - "Port": 0, + "Port": %DEFAULT_WAKUV2_CONFIG_PORT%, "LightClient": false, "PersistPeers": true, "EnableDiscV5": true, - "UDPPort": 0, + "UDPPort": %DEFAULT_WAKUV2_CONFIG_PORT%, "PeerExchange": true, "AutoUpdate": true },