summaryrefslogtreecommitdiffstats
path: root/app/admin.go
diff options
context:
space:
mode:
authorCorey Hulen <corey@hulen.com>2017-06-19 08:44:04 -0700
committerGitHub <noreply@github.com>2017-06-19 08:44:04 -0700
commit36f216cb7cb16958d98b3d77e121198596fd2213 (patch)
treeac2a5b79494749b3dffc2f5778092f2529c98d1a /app/admin.go
parentfe48987a32fbd600458edd4e81318071ae558ba4 (diff)
downloadchat-36f216cb7cb16958d98b3d77e121198596fd2213.tar.gz
chat-36f216cb7cb16958d98b3d77e121198596fd2213.tar.bz2
chat-36f216cb7cb16958d98b3d77e121198596fd2213.zip
PLT-6080 moving clustering to memberlist (#6499)
* PLT-6080 adding cluster discovery service * Adding memberlist lib * Adding memberlist lib * WIP * WIP * WIP * WIP * Rolling back config changes * Fixing make file * Fixing config for cluster * WIP * Fixing system console for clustering * Fixing default config * Fixing config * Fixing system console for clustering * Tweaking hub setting * Bumping up time * merging vendor dir * Updating vendor dir * Fixing unit test * Fixing bad merge * Remove some testing code * Moving comment * PLT-6868 adding db ping retry * Removing unused loc strings * Adding defer to cancel
Diffstat (limited to 'app/admin.go')
-rw-r--r--app/admin.go44
1 files changed, 29 insertions, 15 deletions
diff --git a/app/admin.go b/app/admin.go
index 103c4617b..4f8125106 100644
--- a/app/admin.go
+++ b/app/admin.go
@@ -19,12 +19,23 @@ import (
)
func GetLogs(page, perPage int) ([]string, *model.AppError) {
- lines, err := GetLogsSkipSend(page, perPage)
+ var lines []string
+ if einterfaces.GetClusterInterface() != nil && *utils.Cfg.ClusterSettings.Enable {
+ lines = append(lines, "-----------------------------------------------------------------------------------------------------------")
+ lines = append(lines, "-----------------------------------------------------------------------------------------------------------")
+ lines = append(lines, einterfaces.GetClusterInterface().GetClusterId())
+ lines = append(lines, "-----------------------------------------------------------------------------------------------------------")
+ lines = append(lines, "-----------------------------------------------------------------------------------------------------------")
+ }
+
+ melines, err := GetLogsSkipSend(page, perPage)
if err != nil {
return nil, err
}
- if einterfaces.GetClusterInterface() != nil {
+ lines = append(lines, melines...)
+
+ if einterfaces.GetClusterInterface() != nil && *utils.Cfg.ClusterSettings.Enable {
clines, err := einterfaces.GetClusterInterface().GetLogs(page, perPage)
if err != nil {
return nil, err
@@ -84,10 +95,14 @@ func InvalidateAllCaches() *model.AppError {
InvalidateAllCachesSkipSend()
if einterfaces.GetClusterInterface() != nil {
- err := einterfaces.GetClusterInterface().InvalidateAllCaches()
- if err != nil {
- return err
+
+ msg := &model.ClusterMessage{
+ Event: model.CLUSTER_EVENT_INVALIDATE_ALL_CACHES,
+ SendType: model.CLUSTER_SEND_RELIABLE,
+ WaitForAllToSend: true,
}
+
+ einterfaces.GetClusterInterface().SendClusterMessage(msg)
}
return nil
@@ -120,7 +135,8 @@ func ReloadConfig() {
InitEmailBatching()
}
-func SaveConfig(cfg *model.Config) *model.AppError {
+func SaveConfig(cfg *model.Config, sendConfigChangeClusterMessage bool) *model.AppError {
+ oldCfg := utils.Cfg
cfg.SetDefaults()
utils.Desanitize(cfg)
@@ -132,7 +148,7 @@ func SaveConfig(cfg *model.Config) *model.AppError {
return err
}
- if *utils.Cfg.ClusterSettings.Enable {
+ if *utils.Cfg.ClusterSettings.Enable && *utils.Cfg.ClusterSettings.ReadOnlyConfig {
return model.NewLocAppError("saveConfig", "ent.cluster.save_config.error", nil, "")
}
@@ -149,14 +165,12 @@ func SaveConfig(cfg *model.Config) *model.AppError {
}
}
- // oldCfg := utils.Cfg
- // Future feature is to sync the configuration files
- // if einterfaces.GetClusterInterface() != nil {
- // err := einterfaces.GetClusterInterface().ConfigChanged(cfg, oldCfg, true)
- // if err != nil {
- // return err
- // }
- // }
+ if einterfaces.GetClusterInterface() != nil {
+ err := einterfaces.GetClusterInterface().ConfigChanged(cfg, oldCfg, sendConfigChangeClusterMessage)
+ if err != nil {
+ return err
+ }
+ }
// start/restart email batching job if necessary
InitEmailBatching()