-
Notifications
You must be signed in to change notification settings - Fork 13k
feat: multi-instance app status #35721
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
Conversation
|
Looks like this PR is ready to merge! 🎉 |
🦋 Changeset detectedLatest commit: 74a1b94 The changes in this PR will be included in the next version bump. This PR includes changesets to release 37 packages
Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
1a200cb to
de52066
Compare
|
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## develop #35721 +/- ##
===========================================
- Coverage 61.21% 61.15% -0.07%
===========================================
Files 3001 3003 +2
Lines 71121 71350 +229
Branches 16241 16333 +92
===========================================
+ Hits 43538 43634 +96
- Misses 24620 24750 +130
- Partials 2963 2966 +3
Flags with carried forward coverage won't be shown. Click here to find out more. 🚀 New features to boost your workflow:
|
a32c218 to
fe93d5e
Compare
d35844c to
d0a32de
Compare
Code Review Completed! 🔥The code review was successfully completed based on your current configurations. Kody Guide: Usage and ConfigurationInteracting with Kody
Current Kody ConfigurationReview OptionsThe following review options are enabled or disabled:
|
1 similar comment
Code Review Completed! 🔥The code review was successfully completed based on your current configurations. Kody Guide: Usage and ConfigurationInteracting with Kody
Current Kody ConfigurationReview OptionsThe following review options are enabled or disabled:
|
Code Review Completed! 🔥The code review was successfully completed based on your current configurations. Kody Guide: Usage and ConfigurationInteracting with Kody
Current Kody ConfigurationReview OptionsThe following review options are enabled or disabled:
|
abdf64c to
8ef0398
Compare
Kody Review CompleteGreat news! 🎉 Keep up the excellent work! 🚀 Kody Guide: Usage and ConfigurationInteracting with Kody
Current Kody ConfigurationReview OptionsThe following review options are enabled or disabled:
|
f27faa9 to
263c9ae
Compare
Code Review Completed! 🔥The code review was successfully completed based on your current configurations. Kody Guide: Usage and ConfigurationInteracting with Kody
Current Kody ConfigurationReview OptionsThe following review options are enabled or disabled:
|
263c9ae to
2f74e06
Compare
e51594d to
397cd72
Compare
Kody Review CompleteGreat news! 🎉 Keep up the excellent work! 🚀 Kody Guide: Usage and ConfigurationInteracting with Kody
Current Kody ConfigurationReview OptionsThe following review options are enabled or disabled:
|
5893867 to
a0d92ea
Compare
Kody Review CompleteGreat news! 🎉 Keep up the excellent work! 🚀 Kody Guide: Usage and ConfigurationInteracting with Kody
Current Kody ConfigurationReview OptionsThe following review options are enabled or disabled:
|
Code Review Completed! 🔥The code review was successfully completed based on your current configurations. Kody Guide: Usage and ConfigurationInteracting with Kody
Current Kody ConfigurationReview OptionsThe following review options are enabled or disabled:
|
Proposed changes (including videos or screenshots)
Issue(s)
CONN-610
Steps to test or reproduce
Further comments
This pull request introduces a feature for managing multi-instance app status in the Rocket.Chat application. It includes the following changes:
Cluster App Status Fetching: A new function is added to
fetchAppsStatusFromCluster.tsto retrieve app statuses from a cluster, accommodating both Moleculer and high availability scenarios. It includes error handling for missing instances and ports.AppsEngineService Enhancements: New methods are added to the
AppsEngineServiceclass inservice.tsfor retrieving app status locally and across a cluster, along with necessary type imports and utility functions.Network and Local Broker Updates: The
NetworkBrokerandLocalBrokerclasses have updated method signatures for thecallfunction, introducing an optionaloptionsparameter of typeCallingOptions. A warning log is added inLocalBrokerif options are provided.API and Interface Modifications:
Apiclass andIApiServiceinterface now include an optionaloptionsparameter in thecallmethod.AppStatusReportand a methodgetAppsStatusInClusterare added to theIAppsEngineServiceinterface.IBrokerinterface is updated to accept the newCallingOptionstype as an optional parameter.Endpoint Authentication Change: The authentication requirement for the 'installed' endpoint in
rest.tsis removed, with a comment questioning if there's a better approach.Core Services Module Organization: The
index.tsfile incore-servicesis updated to improve type safety and module organization through new exports and modifications to existing ones.These changes aim to enhance the app status management capabilities in a multi-instance environment, improve type safety, and refine module organization.
This pull request introduces a feature to manage multi-instance app status within the Rocket.Chat application. Key changes include:
Cluster App Status Fetching: A new function is added to
fetchAppsStatusFromCluster.tsto retrieve app statuses from a cluster, accommodating both Moleculer and high availability scenarios. It includes error handling for missing instances and ports.AppsEngineService Enhancements: New methods are added to the
AppsEngineServiceclass inservice.tsfor retrieving app status locally and across a cluster.Network and Local Broker Updates: The
NetworkBrokerandLocalBrokerclasses have updated method signatures for thecallfunction, introducing an optionaloptionsparameter of typeCallingOptions.Type and Interface Modifications:
AppStatusReportand a methodgetAppsStatusInClusterare added to theIAppsEngineServiceinterface.CallingOptionstype is introduced and integrated into various interfaces and method signatures to enhance flexibility and type safety.REST Endpoint Change: The authentication requirement for the 'installed' endpoint in
rest.tsis removed, which may expose sensitive app information.Module Organization and Type Safety: Improvements in module organization and type safety are made through updated exports and imports in
index.tsandApi.ts.These changes aim to improve the management and retrieval of app statuses in a multi-instance environment, while also enhancing the flexibility and organization of the codebase.
This pull request introduces a new feature to the Rocket.Chat repository, specifically targeting the multi-instance app status functionality. The changes include:
Cluster App Status Fetching: A new function is added to fetch the status of apps from a cluster, accommodating both Moleculer and high availability scenarios. It includes error handling for missing instances and ports, and processes app status data from the fetched results.
AppsEngineService Enhancements: New methods are introduced to the
AppsEngineServiceclass for retrieving app status both locally and across a cluster. This includes necessary imports and utility functions.NetworkBroker and LocalBroker Updates:
NetworkBrokerclass now includes a new method signature for thecallfunction, with an optionaloptionsparameter of typeCallingOptions, allowing for more flexible method calls.LocalBroker'scallmethod is updated to supportCallingOptions, maintaining backward compatibility and adding a warning for unsupported options.Type and Interface Modifications:
CallingOptionsandAppStatusReportare introduced.IAppsEngineServiceinterface now includes agetAppsStatusInClustermethod.IBrokerinterface'scallmethod is modified to accept theCallingOptionstype as an optional parameter.API and Service Interface Improvements:
Apiclass andIApiServiceinterface are updated to importCallingOptionsand extend thecallmethod to accept an options parameter, enhancing method flexibility.index.tsimprove type safety and accessibility of various service interfaces.Security Consideration: The authentication requirement for the 'installed' endpoint in
rest.tsis removed, which may expose sensitive app information to unauthorized users.These changes aim to enhance the app status management across multiple instances in a cluster, while also improving the flexibility and type safety of service interfaces.