Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat(local-remote-config): added solo version to local config and remote config #1384

Conversation

instamenta
Copy link
Contributor

@instamenta instamenta commented Feb 13, 2025

Description

  • Added new field soloVersion to both the local and remote config.
  • Add new helper function getSoloVersion() that should get the version in the same way that Yargs does.
  • Added new fields to remote config only:
    • soloChartVersion
    • hederaPlatformVersion
    • hederaMirrorNodeChartVersion
    • hederaExplorerChartVersion
    • hederaJsonRpcRelayChartVersion
  • Add new field deploymentName inside the remote-config's metadata
  • Renamed existing field name inside the remote-config's metadata to namespace
  • Added new field deployment inside the remote-config's clusters.cluster
  • Prompt for nodeAliases during solo deployment create, otherwise the network deploy fails

local-config.yaml

userEmailAddress: [email protected]
deployments:
  kind-solo-e2e:
    namespace: solo-e2e
    clusters:
      - kind-solo-e2e
clusterRefs:
  kind-solo-e2e: kind-solo-e2e
soloVersion: 0.34.0

remote-config.yaml

metadata:
  namespace: solo-e2e
  deploymentName: kind-solo-e2e
  lastUpdatedAt: 2025-02-13T10:53:13.251000Z
  lastUpdateBy: [email protected]
  soloChartVersion: 0.44.0
  hederaPlatformVersion: v0.58.5
  hederaMirrorNodeChartVersion: v0.122
  hederaExplorerChartVersion: 24.12.0
  hederaJsonRpcRelayChartVersion: v0.63.2
  soloVersion: 0.34.0
clusters:
  kind-solo-e2e:
    name: kind-solo-e2e
    namespace: solo-e2e
    deployment: kind-solo-e2e
    dnsBaseDomain: cluster.local
    dnsConsensusNodePattern: network-${nodeAlias}-svc.${namespace}.svc
 components:
  relays:
    relay:
      consensusNodeAliases:
        - node1
      name: relay
      cluster: kind-solo-e2e
      namespace: solo-e2e
  haProxies:
    haproxy-node1:
      name: haproxy-node1
      cluster: kind-solo-e2e
      namespace: solo-e2e
  mirrorNodes:
    mirrorNode:
      name: mirrorNode
      cluster: kind-solo-e2e
      namespace: solo-e2e
  envoyProxies:
    envoy-proxy-node1:
      name: envoy-proxy-node1
      cluster: kind-solo-e2e
      namespace: solo-e2e
  consensusNodes:
    node1:
      name: node1
      cluster: kind-solo-e2e
      namespace: solo-e2e
      state: started
      nodeId: 0
  mirrorNodeExplorers:
    mirrorNodeExplorer:
      name: mirrorNodeExplorer
      cluster: kind-solo-e2e
      namespace: solo-e2e
commandHistory:
  - deployment create
  - "Executed by [email protected]: network deploy --node-aliases node1
    --deployment kind-solo-e2e"
  - "Executed by [email protected]: node setup --node-aliases node1 --deployment
     kind-solo-e2e"
  - "Executed by [email protected]: node start --node-aliases node1 --deployment
    kind-solo-e2e"
  - "Executed by [email protected]: mirror-node deploy --deployment kind-solo-e2e"
  - "Executed by [email protected]: relay deploy --deployment kind-solo-e2e
    --node-aliases node1"
  - "Executed by [email protected]: explorer deploy --deployment kind-solo-e2e"
  - "Executed by [email protected]: explorer deploy --deployment kind-solo-e2e"
lastExecutedCommand: deployment create
flags:
  nodeAliasesUnparsed: node1
  releaseTag: v0.58.5
  relayReleaseTag: v0.63.2
  hederaExplorerVersion: 24.12.0
  mirrorNodeVersion: v0.122

Related Issues

@instamenta instamenta self-assigned this Feb 13, 2025
@instamenta instamenta linked an issue Feb 13, 2025 that may be closed by this pull request
Copy link
Contributor

github-actions bot commented Feb 13, 2025

Unit Test Results - Linux

  1 files  ±0   62 suites  ±0   3s ⏱️ -1s
241 tests +1  241 ✅ +1  0 💤 ±0  0 ❌ ±0 
250 runs  +1  250 ✅ +1  0 💤 ±0  0 ❌ ±0 

Results for commit c1b169b. ± Comparison against base commit 49ee4f8.

This pull request removes 1 and adds 2 tests. Note that renamed tests count towards both.
should be able to load version from package json ‑ Helpers should be able to load version from package json
invalidSoloVersion not set invalid soloVersion ‑ LocalConfig invalidSoloVersion not set invalid soloVersion
should set soloVersion ‑ LocalConfig should set soloVersion

♻️ This comment has been updated with latest results.

Copy link
Contributor

github-actions bot commented Feb 13, 2025

Unit Test Results - Windows

  1 files  ±0   62 suites  ±0   4s ⏱️ ±0s
241 tests +1  241 ✅ +1  0 💤 ±0  0 ❌ ±0 
250 runs  +1  250 ✅ +1  0 💤 ±0  0 ❌ ±0 

Results for commit c1b169b. ± Comparison against base commit 49ee4f8.

This pull request removes 1 and adds 2 tests. Note that renamed tests count towards both.
should be able to load version from package json ‑ Helpers should be able to load version from package json
invalidSoloVersion not set invalid soloVersion ‑ LocalConfig invalidSoloVersion not set invalid soloVersion
should set soloVersion ‑ LocalConfig should set soloVersion

♻️ This comment has been updated with latest results.

@instamenta instamenta marked this pull request as ready for review February 13, 2025 15:53
@instamenta instamenta requested review from leninmehedy and a team as code owners February 13, 2025 15:53
@instamenta instamenta added the PR: Unresolved Comments A pull request where there are comments and they need to be resolved. label Feb 14, 2025
…version-information-to-the-remote-configuration
…version-information-to-the-remote-configuration

# Conflicts:
#	src/core/config/local_config.ts
#	src/core/config/local_config_data.ts
#	src/core/config/remote/remote_config_manager.ts
#	src/core/helpers.ts
…version-information-to-the-remote-configuration
@instamenta instamenta removed the PR: Unresolved Comments A pull request where there are comments and they need to be resolved. label Feb 14, 2025
Signed-off-by: instamenta <[email protected]>
Copy link
Contributor

github-actions bot commented Feb 14, 2025

E2E Test Report

 17 files  126 suites   1h 35m 57s ⏱️
270 tests 270 ✅ 0 💤 0 ❌
285 runs  285 ✅ 0 💤 0 ❌

Results for commit c1b169b.

♻️ This comment has been updated with latest results.

Copy link

codacy-production bot commented Feb 14, 2025

Coverage summary from Codacy

See diff coverage on Codacy

Coverage variation Diff coverage
-3.05% (target: -1.00%) 82.78%
Coverage variation details
Coverable lines Covered lines Coverage
Common ancestor commit (49ee4f8) 24872 21067 84.70%
Head commit (c1b169b) 24937 (+65) 20361 (-706) 81.65% (-3.05%)

Coverage variation is the difference between the coverage for the head and common ancestor commits of the pull request branch: <coverage of head commit> - <coverage of common ancestor commit>

Diff coverage details
Coverable lines Covered lines Diff coverage
Pull request (#1384) 180 149 82.78%

Diff coverage is the percentage of lines that are covered by tests out of the coverable lines that the pull request added or modified: <covered lines added or modified>/<coverable lines added or modified> * 100%

See your quality gate settings    Change summary preferences

Codacy stopped sending the deprecated coverage status on June 5th, 2024. Learn more

Copy link

codecov bot commented Feb 14, 2025

Codecov Report

Attention: Patch coverage is 70.55556% with 53 lines in your changes missing coverage. Please review.

Project coverage is 83.55%. Comparing base (49ee4f8) to head (c1b169b).
Report is 42 commits behind head on main.

Files with missing lines Patch % Lines
src/core/config/remote/remote_config_manager.ts 41.17% 21 Missing and 19 partials ⚠️
src/core/config/remote/metadata.ts 89.36% 5 Missing ⚠️
src/core/helpers.ts 66.66% 5 Missing ⚠️
src/core/config/local_config.ts 83.33% 3 Missing ⚠️
Additional details and impacted files

Impacted file tree graph

@@            Coverage Diff             @@
##             main    #1384      +/-   ##
==========================================
- Coverage   83.68%   83.55%   -0.14%     
==========================================
  Files         131      131              
  Lines       24872    24937      +65     
  Branches     1767     1727      -40     
==========================================
+ Hits        20815    20835      +20     
- Misses       3941     3999      +58     
+ Partials      116      103      -13     
Files with missing lines Coverage Δ
src/commands/cluster/tasks.ts 83.48% <100.00%> (ø)
src/commands/network.ts 70.27% <100.00%> (+0.07%) ⬆️
src/core/config/remote/cluster.ts 100.00% <100.00%> (ø)
src/core/config_manager.ts 94.50% <100.00%> (ø)
src/core/error_messages.ts 86.95% <100.00%> (+0.59%) ⬆️
src/core/config/local_config.ts 65.15% <83.33%> (+1.52%) ⬆️
src/core/config/remote/metadata.ts 95.55% <89.36%> (-4.45%) ⬇️
src/core/helpers.ts 79.35% <66.66%> (-0.70%) ⬇️
src/core/config/remote/remote_config_manager.ts 75.92% <41.17%> (-6.78%) ⬇️

... and 10 files with indirect coverage changes

Impacted file tree graph

…version-information-to-the-remote-configuration
…otherwise it fails during 'solo network deploy'

Signed-off-by: instamenta <[email protected]>
@jeromy-cannon jeromy-cannon added the PR: Unresolved Comments A pull request where there are comments and they need to be resolved. label Feb 14, 2025
…replaced with the new function 'getSoloVersion'

Signed-off-by: instamenta <[email protected]>
@instamenta instamenta removed the PR: Unresolved Comments A pull request where there are comments and they need to be resolved. label Feb 14, 2025
…version-information-to-the-remote-configuration
@jeromy-cannon jeromy-cannon added the PR: Ready to Merge A pull request that is ready to merge. label Feb 14, 2025
@instamenta instamenta merged commit 2dca095 into main Feb 14, 2025
40 of 42 checks passed
@instamenta instamenta deleted the 01375-add-additional-version-information-to-the-remote-configuration branch February 14, 2025 17:16
jeromy-cannon pushed a commit that referenced this pull request Feb 14, 2025
…ote config (#1384)

Signed-off-by: instamenta <[email protected]>
Signed-off-by: Jeromy Cannon <[email protected]>
swirlds-automation added a commit that referenced this pull request Feb 20, 2025
## [0.35.0](v0.34.0...v0.35.0) (2025-02-20)

### Features

* Add adminKey flag to node setup command ([#1193](#1193)) ([b044fcc](b044fcc))
* add BaseCommand.getConsensusNodes() method ([#1364](#1364)) ([44703a4](44703a4))
* add BaseCommand.getContexts() method ([#1366](#1366)) ([7a5b05b](7a5b05b))
* add basic multi-cluster support to `solo network deploy` ([#1389](#1389)) ([22ed9ae](22ed9ae))
* add clusters fluent interface implementation ([#1291](#1291)) ([95c71f0](95c71f0))
* add concurrent to the task of copying hedera jar files to network node ([#1289](#1289)) ([c50f4c3](c50f4c3))
* add configmaps fluent interface implementation ([#1295](#1295)) ([2c5d6f3](2c5d6f3))
* add contexts fluent interface implementation ([#1297](#1297)) ([938a956](938a956))
* add factory and injection logic ([#1352](#1352)) ([c794610](c794610))
* add flags to support aws as storage destination ([#1372](#1372)) ([5ca0e47](5ca0e47))
* add secrets fluent interface implementation ([#1312](#1312)) ([fb92fd6](fb92fd6))
* add service and services fluent interface implementation ([#1303](#1303)) ([8ef6998](8ef6998))
* add support for --force-port-forward as a top level flag ([#1404](#1404)) ([5c18967](5c18967))
* add support for multi-cluster testing via KinD ([#1392](#1392)) ([ec7eca1](ec7eca1))
* add support for using load balancer address in gossip configuration ([#1405](#1405)) ([0e3f41f](0e3f41f))
* **cli:** add new command `solo deployment list` that lists deployments on that specific cluster ([#1220](#1220)) ([6b0b486](6b0b486))
* **cli:** reduce redundancy on context to cluster flags in command `deployment create` ([#1156](#1156)) ([4ab4dd5](4ab4dd5))
* create the v059x node-override.yaml via solo ([#1192](#1192)) ([283d35c](283d35c))
* **external-database:** add ability to pass readonly user to the external database ([#1350](#1350)) ([d9626ac](d9626ac))
* **local-remote-config:** added solo version to local config and remote config ([#1384](#1384)) ([2dca095](2dca095))
* **mirror-node:** Enhance mirror-node external database feature ([#1230](#1230)) ([bce75d5](bce75d5))
* **multi-cluster:** 'solo relay deploy' to handle cluster-ref value ([#1394](#1394)) ([e73114c](e73114c))
* **multi-cluster:** make remote config validation compatible with multi-cluster K8 implementation ([#1407](#1407)) ([7614a39](7614a39))
* **multi-cluster:** Update `solo node setup` to support multiple clusters ([#1368](#1368)) ([4618a43](4618a43))
* **remote-config:** instead of keeping just the command and the subcommand inside the remote config keep the flags as passed ([#1208](#1208)) ([a31498e](a31498e))
* **remote-config:** save reusable solo flags in remoteconfig ([#1191](#1191)) ([809d0ab](809d0ab))
* Separate concepts for namespace and deployment name ([#1231](#1231)) ([2566c90](2566c90))
* update solo to support pathPrefix of mirror node importer ([#1204](#1204)) ([d9a3592](d9a3592))

### Bug Fixes

* ensure network active check supports multi-cluster deployments ([#1431](#1431)) ([a07801f](a07801f))
* ensure staking updates support multi-cluster deployments  ([#1432](#1432)) ([ef5435e](ef5435e))
* fixed issue with taskfile forcing an incorrect cluster and context and added a dual cluster readme ([#1396](#1396)) ([cc672c2](cc672c2))
* fixed merge issue with incorrect license header ([#1235](#1235)) ([cb91806](cb91806))
* increase number of attempts to wait for active nodes ([#1430](#1430)) ([d113167](d113167))
* mirror node command changes required for multi-cluster support ([#1433](#1433)) ([f43870e](f43870e))
* **multi-cluster:** fix 'solo node setup' command, failing when running multiple clusters ([#1421](#1421)) ([eacdf1f](eacdf1f))
* **network-command:** wrong value passed to addDebugOptions inside the 'network' command ([#1415](#1415)) ([c2e5c3b](c2e5c3b))
* Resolve `cannot read properties of undefined `error thrown during `solo network deploy` ([#1410](#1410)) ([401b937](401b937))
* test script of google storage ([#1397](#1397)) ([370f57b](370f57b))
* update default solo helm chart version ([#1378](#1378)) ([5b5e276](5b5e276))
* update RemoteConfig to handle multi-cluster networking ([#1348](#1348)) ([77b769f](77b769f))
* use better internal IPs for 0.58.5+ ([#1429](#1429)) ([26279ac](26279ac))
@swirlds-automation
Copy link
Contributor

🎉 This PR is included in version 0.35.0 🎉

The release is available on:

Your semantic-release bot 📦🚀

@swirlds-automation
Copy link
Contributor

🎉 This PR is included in version 0.35.0 🎉

The release is available on:

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
PR: Ready to Merge A pull request that is ready to merge. released on @0.35.x released
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Add additional version information to the remote configuration
3 participants