mirror of
https://github.com/openimsdk/open-im-server.git
synced 2025-10-26 21:22:16 +08:00
chore: config
This commit is contained in:
parent
7f1a723557
commit
d21eb35c75
@ -4,21 +4,68 @@ import (
|
|||||||
"encoding/json"
|
"encoding/json"
|
||||||
|
|
||||||
"github.com/gin-gonic/gin"
|
"github.com/gin-gonic/gin"
|
||||||
|
"github.com/openimsdk/open-im-server/v3/pkg/apistruct"
|
||||||
|
"github.com/openimsdk/open-im-server/v3/pkg/authverify"
|
||||||
"github.com/openimsdk/open-im-server/v3/pkg/common/config"
|
"github.com/openimsdk/open-im-server/v3/pkg/common/config"
|
||||||
|
"github.com/openimsdk/open-im-server/v3/version"
|
||||||
"github.com/openimsdk/tools/apiresp"
|
"github.com/openimsdk/tools/apiresp"
|
||||||
|
"github.com/openimsdk/tools/errs"
|
||||||
|
"github.com/openimsdk/tools/utils/runtimeenv"
|
||||||
)
|
)
|
||||||
|
|
||||||
type ConfigManager struct {
|
type ConfigManager struct {
|
||||||
config *config.AllConfig
|
imAdminUserID []string
|
||||||
|
config *config.AllConfig
|
||||||
}
|
}
|
||||||
|
|
||||||
func NewConfigManager(cfg *config.AllConfig) *ConfigManager {
|
func NewConfigManager(IMAdminUserID []string, cfg *config.AllConfig) *ConfigManager {
|
||||||
return &ConfigManager{
|
return &ConfigManager{
|
||||||
config: cfg,
|
imAdminUserID: IMAdminUserID,
|
||||||
|
config: cfg,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (cm *ConfigManager) CheckAdmin(c *gin.Context) {
|
||||||
|
if err := authverify.CheckAdmin(c, cm.imAdminUserID); err != nil {
|
||||||
|
apiresp.GinError(c, err)
|
||||||
|
c.Abort()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
func (cm *ConfigManager) GetConfig(c *gin.Context) {
|
func (cm *ConfigManager) GetConfig(c *gin.Context) {
|
||||||
|
var req apistruct.GetConfigReq
|
||||||
|
if err := c.BindJSON(&req); err != nil {
|
||||||
|
apiresp.GinError(c, errs.ErrArgs.WithDetail(err.Error()).Wrap())
|
||||||
|
return
|
||||||
|
}
|
||||||
|
conf := cm.config.Name2Config(req.ConfigName)
|
||||||
|
if conf == nil {
|
||||||
|
apiresp.GinError(c, errs.ErrArgs.WithDetail("config name not found").Wrap())
|
||||||
|
return
|
||||||
|
}
|
||||||
|
b, err := json.Marshal(cm.config)
|
||||||
|
if err != nil {
|
||||||
|
apiresp.GinError(c, err)
|
||||||
|
return
|
||||||
|
}
|
||||||
|
apiresp.GinSuccess(c, string(b))
|
||||||
|
}
|
||||||
|
|
||||||
|
func (cm *ConfigManager) GetConfigList(c *gin.Context) {
|
||||||
|
var resp apistruct.GetConfigListResp
|
||||||
|
resp.ConfigNames = cm.config.GetConfigNames()
|
||||||
|
resp.Environment = runtimeenv.PrintRuntimeEnvironment()
|
||||||
|
resp.Version = version.Version
|
||||||
|
|
||||||
|
apiresp.GinSuccess(c, resp)
|
||||||
|
}
|
||||||
|
|
||||||
|
func (cm *ConfigManager) SetConfig(c *gin.Context) {
|
||||||
|
var req apistruct.SetConfigReq
|
||||||
|
if err := c.BindJSON(&req); err != nil {
|
||||||
|
apiresp.GinError(c, errs.ErrArgs.WithDetail(err.Error()).Wrap())
|
||||||
|
return
|
||||||
|
}
|
||||||
b, err := json.Marshal(cm.config)
|
b, err := json.Marshal(cm.config)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
apiresp.GinError(c, err) // args option error
|
apiresp.GinError(c, err) // args option error
|
||||||
|
|||||||
@ -27,7 +27,7 @@ import (
|
|||||||
"time"
|
"time"
|
||||||
|
|
||||||
conf "github.com/openimsdk/open-im-server/v3/pkg/common/config"
|
conf "github.com/openimsdk/open-im-server/v3/pkg/common/config"
|
||||||
kdisc "github.com/openimsdk/open-im-server/v3/pkg/common/discoveryregister"
|
kdisc "github.com/openimsdk/open-im-server/v3/pkg/common/discovery"
|
||||||
"github.com/openimsdk/open-im-server/v3/pkg/common/prommetrics"
|
"github.com/openimsdk/open-im-server/v3/pkg/common/prommetrics"
|
||||||
"github.com/openimsdk/open-im-server/v3/pkg/rpcclient"
|
"github.com/openimsdk/open-im-server/v3/pkg/rpcclient"
|
||||||
"github.com/openimsdk/tools/discovery/etcd"
|
"github.com/openimsdk/tools/discovery/etcd"
|
||||||
|
|||||||
@ -259,9 +259,11 @@ func newGinRouter(disCov discovery.SvcDiscoveryRegistry, config *Config) *gin.En
|
|||||||
proDiscoveryGroup.GET("/msg_gateway", pd.MessageGateway)
|
proDiscoveryGroup.GET("/msg_gateway", pd.MessageGateway)
|
||||||
proDiscoveryGroup.GET("/msg_transfer", pd.MessageTransfer)
|
proDiscoveryGroup.GET("/msg_transfer", pd.MessageTransfer)
|
||||||
|
|
||||||
cm := NewConfigManager(config.AllConfig)
|
cm := NewConfigManager(config.Share.IMAdminUserID, config.AllConfig)
|
||||||
configGroup := r.Group("/config")
|
configGroup := r.Group("/config", cm.CheckAdmin)
|
||||||
configGroup.GET("/api", cm.GetConfig)
|
configGroup.POST("/get_config_list", cm.GetConfigList)
|
||||||
|
configGroup.POST("/get_config", cm.GetConfig)
|
||||||
|
configGroup.POST("/set_config", cm.SetConfig)
|
||||||
return r
|
return r
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -40,7 +40,7 @@ import (
|
|||||||
"github.com/openimsdk/tools/utils/runtimeenv"
|
"github.com/openimsdk/tools/utils/runtimeenv"
|
||||||
|
|
||||||
conf "github.com/openimsdk/open-im-server/v3/pkg/common/config"
|
conf "github.com/openimsdk/open-im-server/v3/pkg/common/config"
|
||||||
discRegister "github.com/openimsdk/open-im-server/v3/pkg/common/discoveryregister"
|
discRegister "github.com/openimsdk/open-im-server/v3/pkg/common/discovery"
|
||||||
"github.com/openimsdk/open-im-server/v3/pkg/common/storage/controller"
|
"github.com/openimsdk/open-im-server/v3/pkg/common/storage/controller"
|
||||||
"github.com/openimsdk/tools/errs"
|
"github.com/openimsdk/tools/errs"
|
||||||
"github.com/openimsdk/tools/log"
|
"github.com/openimsdk/tools/log"
|
||||||
|
|||||||
@ -7,7 +7,7 @@ import (
|
|||||||
"time"
|
"time"
|
||||||
|
|
||||||
"github.com/openimsdk/open-im-server/v3/pkg/common/config"
|
"github.com/openimsdk/open-im-server/v3/pkg/common/config"
|
||||||
kdisc "github.com/openimsdk/open-im-server/v3/pkg/common/discoveryregister"
|
kdisc "github.com/openimsdk/open-im-server/v3/pkg/common/discovery"
|
||||||
pbconversation "github.com/openimsdk/protocol/conversation"
|
pbconversation "github.com/openimsdk/protocol/conversation"
|
||||||
"github.com/openimsdk/protocol/msg"
|
"github.com/openimsdk/protocol/msg"
|
||||||
"github.com/openimsdk/protocol/third"
|
"github.com/openimsdk/protocol/third"
|
||||||
|
|||||||
@ -4,11 +4,13 @@ type GetConfigReq struct {
|
|||||||
ConfigName string `json:"config_name"`
|
ConfigName string `json:"config_name"`
|
||||||
}
|
}
|
||||||
|
|
||||||
type GetConfigListReq struct {
|
|
||||||
}
|
|
||||||
|
|
||||||
type GetConfigListResp struct {
|
type GetConfigListResp struct {
|
||||||
Environment string `json:"environment"`
|
Environment string `json:"environment"`
|
||||||
Version string `json:"version"`
|
Version string `json:"version"`
|
||||||
ConfigNames []string `json:"config_names"`
|
ConfigNames []string `json:"config_names"`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
type SetConfigReq struct {
|
||||||
|
ConfigName string `json:"config_name"`
|
||||||
|
Data string `json:"data"`
|
||||||
|
}
|
||||||
|
|||||||
@ -18,6 +18,7 @@ import (
|
|||||||
"context"
|
"context"
|
||||||
|
|
||||||
"github.com/openimsdk/open-im-server/v3/internal/api"
|
"github.com/openimsdk/open-im-server/v3/internal/api"
|
||||||
|
"github.com/openimsdk/open-im-server/v3/pkg/common/config"
|
||||||
"github.com/openimsdk/open-im-server/v3/version"
|
"github.com/openimsdk/open-im-server/v3/version"
|
||||||
"github.com/openimsdk/tools/system/program"
|
"github.com/openimsdk/tools/system/program"
|
||||||
"github.com/spf13/cobra"
|
"github.com/spf13/cobra"
|
||||||
@ -34,9 +35,23 @@ func NewApiCmd() *ApiCmd {
|
|||||||
var apiConfig api.Config
|
var apiConfig api.Config
|
||||||
ret := &ApiCmd{apiConfig: &apiConfig}
|
ret := &ApiCmd{apiConfig: &apiConfig}
|
||||||
ret.configMap = map[string]any{
|
ret.configMap = map[string]any{
|
||||||
OpenIMAPICfgFileName: &apiConfig.API,
|
config.DiscoveryConfigFilename: &apiConfig.Discovery,
|
||||||
ShareFileName: &apiConfig.Share,
|
config.LocalCacheConfigFileName: &apiConfig.LocalCache,
|
||||||
DiscoveryConfigFilename: &apiConfig.Discovery,
|
config.LogConfigFileName: &apiConfig.Log,
|
||||||
|
config.OpenIMAPICfgFileName: &apiConfig.API,
|
||||||
|
config.OpenIMCronTaskCfgFileName: &apiConfig.CronTask,
|
||||||
|
config.OpenIMMsgGatewayCfgFileName: &apiConfig.MsgGateway,
|
||||||
|
config.OpenIMMsgTransferCfgFileName: &apiConfig.MsgTransfer,
|
||||||
|
config.OpenIMPushCfgFileName: &apiConfig.Push,
|
||||||
|
config.OpenIMRPCAuthCfgFileName: &apiConfig.Auth,
|
||||||
|
config.OpenIMRPCConversationCfgFileName: &apiConfig.Conversation,
|
||||||
|
config.OpenIMRPCFriendCfgFileName: &apiConfig.Friend,
|
||||||
|
config.OpenIMRPCGroupCfgFileName: &apiConfig.Group,
|
||||||
|
config.OpenIMRPCMsgCfgFileName: &apiConfig.Msg,
|
||||||
|
config.OpenIMRPCThirdCfgFileName: &apiConfig.Third,
|
||||||
|
config.OpenIMRPCUserCfgFileName: &apiConfig.User,
|
||||||
|
config.ShareFileName: &apiConfig.Share,
|
||||||
|
config.WebhooksConfigFileName: &apiConfig.Webhooks,
|
||||||
}
|
}
|
||||||
ret.RootCmd = NewRootCmd(program.GetProcessName(), WithConfigMap(ret.configMap))
|
ret.RootCmd = NewRootCmd(program.GetProcessName(), WithConfigMap(ret.configMap))
|
||||||
ret.ctx = context.WithValue(context.Background(), "version", version.Version)
|
ret.ctx = context.WithValue(context.Background(), "version", version.Version)
|
||||||
|
|||||||
@ -18,6 +18,7 @@ import (
|
|||||||
"context"
|
"context"
|
||||||
|
|
||||||
"github.com/openimsdk/open-im-server/v3/internal/rpc/auth"
|
"github.com/openimsdk/open-im-server/v3/internal/rpc/auth"
|
||||||
|
"github.com/openimsdk/open-im-server/v3/pkg/common/config"
|
||||||
"github.com/openimsdk/open-im-server/v3/pkg/common/startrpc"
|
"github.com/openimsdk/open-im-server/v3/pkg/common/startrpc"
|
||||||
"github.com/openimsdk/open-im-server/v3/version"
|
"github.com/openimsdk/open-im-server/v3/version"
|
||||||
"github.com/openimsdk/tools/system/program"
|
"github.com/openimsdk/tools/system/program"
|
||||||
@ -35,10 +36,10 @@ func NewAuthRpcCmd() *AuthRpcCmd {
|
|||||||
var authConfig auth.Config
|
var authConfig auth.Config
|
||||||
ret := &AuthRpcCmd{authConfig: &authConfig}
|
ret := &AuthRpcCmd{authConfig: &authConfig}
|
||||||
ret.configMap = map[string]any{
|
ret.configMap = map[string]any{
|
||||||
OpenIMRPCAuthCfgFileName: &authConfig.RpcConfig,
|
config.OpenIMRPCAuthCfgFileName: &authConfig.RpcConfig,
|
||||||
RedisConfigFileName: &authConfig.RedisConfig,
|
config.RedisConfigFileName: &authConfig.RedisConfig,
|
||||||
ShareFileName: &authConfig.Share,
|
config.ShareFileName: &authConfig.Share,
|
||||||
DiscoveryConfigFilename: &authConfig.Discovery,
|
config.DiscoveryConfigFilename: &authConfig.Discovery,
|
||||||
}
|
}
|
||||||
ret.RootCmd = NewRootCmd(program.GetProcessName(), WithConfigMap(ret.configMap))
|
ret.RootCmd = NewRootCmd(program.GetProcessName(), WithConfigMap(ret.configMap))
|
||||||
ret.ctx = context.WithValue(context.Background(), "version", version.Version)
|
ret.ctx = context.WithValue(context.Background(), "version", version.Version)
|
||||||
|
|||||||
@ -1,85 +1,23 @@
|
|||||||
// Copyright © 2023 OpenIM. All rights reserved.
|
|
||||||
//
|
|
||||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
// you may not use this file except in compliance with the License.
|
|
||||||
// You may obtain a copy of the License at
|
|
||||||
//
|
|
||||||
// http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
//
|
|
||||||
// Unless required by applicable law or agreed to in writing, software
|
|
||||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
// See the License for the specific language governing permissions and
|
|
||||||
// limitations under the License.
|
|
||||||
|
|
||||||
package cmd
|
package cmd
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"strings"
|
"strings"
|
||||||
)
|
|
||||||
|
|
||||||
var (
|
"github.com/openimsdk/open-im-server/v3/pkg/common/config"
|
||||||
FileName string
|
|
||||||
NotificationFileName string
|
|
||||||
ShareFileName string
|
|
||||||
WebhooksConfigFileName string
|
|
||||||
LocalCacheConfigFileName string
|
|
||||||
KafkaConfigFileName string
|
|
||||||
RedisConfigFileName string
|
|
||||||
MongodbConfigFileName string
|
|
||||||
MinioConfigFileName string
|
|
||||||
LogConfigFileName string
|
|
||||||
OpenIMAPICfgFileName string
|
|
||||||
OpenIMCronTaskCfgFileName string
|
|
||||||
OpenIMMsgGatewayCfgFileName string
|
|
||||||
OpenIMMsgTransferCfgFileName string
|
|
||||||
OpenIMPushCfgFileName string
|
|
||||||
OpenIMRPCAuthCfgFileName string
|
|
||||||
OpenIMRPCConversationCfgFileName string
|
|
||||||
OpenIMRPCFriendCfgFileName string
|
|
||||||
OpenIMRPCGroupCfgFileName string
|
|
||||||
OpenIMRPCMsgCfgFileName string
|
|
||||||
OpenIMRPCThirdCfgFileName string
|
|
||||||
OpenIMRPCUserCfgFileName string
|
|
||||||
DiscoveryConfigFilename string
|
|
||||||
)
|
)
|
||||||
|
|
||||||
var ConfigEnvPrefixMap map[string]string
|
var ConfigEnvPrefixMap map[string]string
|
||||||
|
|
||||||
func init() {
|
func init() {
|
||||||
FileName = "config.yaml"
|
|
||||||
NotificationFileName = "notification.yml"
|
|
||||||
ShareFileName = "share.yml"
|
|
||||||
WebhooksConfigFileName = "webhooks.yml"
|
|
||||||
LocalCacheConfigFileName = "local-cache.yml"
|
|
||||||
KafkaConfigFileName = "kafka.yml"
|
|
||||||
RedisConfigFileName = "redis.yml"
|
|
||||||
MongodbConfigFileName = "mongodb.yml"
|
|
||||||
MinioConfigFileName = "minio.yml"
|
|
||||||
LogConfigFileName = "log.yml"
|
|
||||||
OpenIMAPICfgFileName = "openim-api.yml"
|
|
||||||
OpenIMCronTaskCfgFileName = "openim-crontask.yml"
|
|
||||||
OpenIMMsgGatewayCfgFileName = "openim-msggateway.yml"
|
|
||||||
OpenIMMsgTransferCfgFileName = "openim-msgtransfer.yml"
|
|
||||||
OpenIMPushCfgFileName = "openim-push.yml"
|
|
||||||
OpenIMRPCAuthCfgFileName = "openim-rpc-auth.yml"
|
|
||||||
OpenIMRPCConversationCfgFileName = "openim-rpc-conversation.yml"
|
|
||||||
OpenIMRPCFriendCfgFileName = "openim-rpc-friend.yml"
|
|
||||||
OpenIMRPCGroupCfgFileName = "openim-rpc-group.yml"
|
|
||||||
OpenIMRPCMsgCfgFileName = "openim-rpc-msg.yml"
|
|
||||||
OpenIMRPCThirdCfgFileName = "openim-rpc-third.yml"
|
|
||||||
OpenIMRPCUserCfgFileName = "openim-rpc-user.yml"
|
|
||||||
DiscoveryConfigFilename = "discovery.yml"
|
|
||||||
|
|
||||||
ConfigEnvPrefixMap = make(map[string]string)
|
ConfigEnvPrefixMap = make(map[string]string)
|
||||||
fileNames := []string{
|
fileNames := []string{
|
||||||
FileName, NotificationFileName, ShareFileName, WebhooksConfigFileName,
|
config.FileName, config.NotificationFileName, config.ShareFileName, config.WebhooksConfigFileName,
|
||||||
KafkaConfigFileName, RedisConfigFileName,
|
config.KafkaConfigFileName, config.RedisConfigFileName,
|
||||||
MongodbConfigFileName, MinioConfigFileName, LogConfigFileName,
|
config.MongodbConfigFileName, config.MinioConfigFileName, config.LogConfigFileName,
|
||||||
OpenIMAPICfgFileName, OpenIMCronTaskCfgFileName, OpenIMMsgGatewayCfgFileName,
|
config.OpenIMAPICfgFileName, config.OpenIMCronTaskCfgFileName, config.OpenIMMsgGatewayCfgFileName,
|
||||||
OpenIMMsgTransferCfgFileName, OpenIMPushCfgFileName, OpenIMRPCAuthCfgFileName,
|
config.OpenIMMsgTransferCfgFileName, config.OpenIMPushCfgFileName, config.OpenIMRPCAuthCfgFileName,
|
||||||
OpenIMRPCConversationCfgFileName, OpenIMRPCFriendCfgFileName, OpenIMRPCGroupCfgFileName,
|
config.OpenIMRPCConversationCfgFileName, config.OpenIMRPCFriendCfgFileName, config.OpenIMRPCGroupCfgFileName,
|
||||||
OpenIMRPCMsgCfgFileName, OpenIMRPCThirdCfgFileName, OpenIMRPCUserCfgFileName, DiscoveryConfigFilename,
|
config.OpenIMRPCMsgCfgFileName, config.OpenIMRPCThirdCfgFileName, config.OpenIMRPCUserCfgFileName, config.DiscoveryConfigFilename,
|
||||||
}
|
}
|
||||||
|
|
||||||
for _, fileName := range fileNames {
|
for _, fileName := range fileNames {
|
||||||
|
|||||||
@ -18,6 +18,7 @@ import (
|
|||||||
"context"
|
"context"
|
||||||
|
|
||||||
"github.com/openimsdk/open-im-server/v3/internal/rpc/conversation"
|
"github.com/openimsdk/open-im-server/v3/internal/rpc/conversation"
|
||||||
|
"github.com/openimsdk/open-im-server/v3/pkg/common/config"
|
||||||
"github.com/openimsdk/open-im-server/v3/pkg/common/startrpc"
|
"github.com/openimsdk/open-im-server/v3/pkg/common/startrpc"
|
||||||
"github.com/openimsdk/open-im-server/v3/version"
|
"github.com/openimsdk/open-im-server/v3/version"
|
||||||
"github.com/openimsdk/tools/system/program"
|
"github.com/openimsdk/tools/system/program"
|
||||||
@ -35,13 +36,13 @@ func NewConversationRpcCmd() *ConversationRpcCmd {
|
|||||||
var conversationConfig conversation.Config
|
var conversationConfig conversation.Config
|
||||||
ret := &ConversationRpcCmd{conversationConfig: &conversationConfig}
|
ret := &ConversationRpcCmd{conversationConfig: &conversationConfig}
|
||||||
ret.configMap = map[string]any{
|
ret.configMap = map[string]any{
|
||||||
OpenIMRPCConversationCfgFileName: &conversationConfig.RpcConfig,
|
config.OpenIMRPCConversationCfgFileName: &conversationConfig.RpcConfig,
|
||||||
RedisConfigFileName: &conversationConfig.RedisConfig,
|
config.RedisConfigFileName: &conversationConfig.RedisConfig,
|
||||||
MongodbConfigFileName: &conversationConfig.MongodbConfig,
|
config.MongodbConfigFileName: &conversationConfig.MongodbConfig,
|
||||||
ShareFileName: &conversationConfig.Share,
|
config.ShareFileName: &conversationConfig.Share,
|
||||||
NotificationFileName: &conversationConfig.NotificationConfig,
|
config.NotificationFileName: &conversationConfig.NotificationConfig,
|
||||||
LocalCacheConfigFileName: &conversationConfig.LocalCacheConfig,
|
config.LocalCacheConfigFileName: &conversationConfig.LocalCacheConfig,
|
||||||
DiscoveryConfigFilename: &conversationConfig.Discovery,
|
config.DiscoveryConfigFilename: &conversationConfig.Discovery,
|
||||||
}
|
}
|
||||||
ret.RootCmd = NewRootCmd(program.GetProcessName(), WithConfigMap(ret.configMap))
|
ret.RootCmd = NewRootCmd(program.GetProcessName(), WithConfigMap(ret.configMap))
|
||||||
ret.ctx = context.WithValue(context.Background(), "version", version.Version)
|
ret.ctx = context.WithValue(context.Background(), "version", version.Version)
|
||||||
|
|||||||
@ -18,6 +18,7 @@ import (
|
|||||||
"context"
|
"context"
|
||||||
|
|
||||||
"github.com/openimsdk/open-im-server/v3/internal/tools"
|
"github.com/openimsdk/open-im-server/v3/internal/tools"
|
||||||
|
"github.com/openimsdk/open-im-server/v3/pkg/common/config"
|
||||||
"github.com/openimsdk/open-im-server/v3/version"
|
"github.com/openimsdk/open-im-server/v3/version"
|
||||||
"github.com/openimsdk/tools/system/program"
|
"github.com/openimsdk/tools/system/program"
|
||||||
"github.com/spf13/cobra"
|
"github.com/spf13/cobra"
|
||||||
@ -34,9 +35,9 @@ func NewCronTaskCmd() *CronTaskCmd {
|
|||||||
var cronTaskConfig tools.CronTaskConfig
|
var cronTaskConfig tools.CronTaskConfig
|
||||||
ret := &CronTaskCmd{cronTaskConfig: &cronTaskConfig}
|
ret := &CronTaskCmd{cronTaskConfig: &cronTaskConfig}
|
||||||
ret.configMap = map[string]any{
|
ret.configMap = map[string]any{
|
||||||
OpenIMCronTaskCfgFileName: &cronTaskConfig.CronTask,
|
config.OpenIMCronTaskCfgFileName: &cronTaskConfig.CronTask,
|
||||||
ShareFileName: &cronTaskConfig.Share,
|
config.ShareFileName: &cronTaskConfig.Share,
|
||||||
DiscoveryConfigFilename: &cronTaskConfig.Discovery,
|
config.DiscoveryConfigFilename: &cronTaskConfig.Discovery,
|
||||||
}
|
}
|
||||||
ret.RootCmd = NewRootCmd(program.GetProcessName(), WithConfigMap(ret.configMap))
|
ret.RootCmd = NewRootCmd(program.GetProcessName(), WithConfigMap(ret.configMap))
|
||||||
ret.ctx = context.WithValue(context.Background(), "version", version.Version)
|
ret.ctx = context.WithValue(context.Background(), "version", version.Version)
|
||||||
|
|||||||
@ -18,6 +18,7 @@ import (
|
|||||||
"context"
|
"context"
|
||||||
|
|
||||||
"github.com/openimsdk/open-im-server/v3/internal/rpc/relation"
|
"github.com/openimsdk/open-im-server/v3/internal/rpc/relation"
|
||||||
|
"github.com/openimsdk/open-im-server/v3/pkg/common/config"
|
||||||
"github.com/openimsdk/open-im-server/v3/pkg/common/startrpc"
|
"github.com/openimsdk/open-im-server/v3/pkg/common/startrpc"
|
||||||
"github.com/openimsdk/open-im-server/v3/version"
|
"github.com/openimsdk/open-im-server/v3/version"
|
||||||
"github.com/openimsdk/tools/system/program"
|
"github.com/openimsdk/tools/system/program"
|
||||||
@ -35,14 +36,14 @@ func NewFriendRpcCmd() *FriendRpcCmd {
|
|||||||
var relationConfig relation.Config
|
var relationConfig relation.Config
|
||||||
ret := &FriendRpcCmd{relationConfig: &relationConfig}
|
ret := &FriendRpcCmd{relationConfig: &relationConfig}
|
||||||
ret.configMap = map[string]any{
|
ret.configMap = map[string]any{
|
||||||
OpenIMRPCFriendCfgFileName: &relationConfig.RpcConfig,
|
config.OpenIMRPCFriendCfgFileName: &relationConfig.RpcConfig,
|
||||||
RedisConfigFileName: &relationConfig.RedisConfig,
|
config.RedisConfigFileName: &relationConfig.RedisConfig,
|
||||||
MongodbConfigFileName: &relationConfig.MongodbConfig,
|
config.MongodbConfigFileName: &relationConfig.MongodbConfig,
|
||||||
ShareFileName: &relationConfig.Share,
|
config.ShareFileName: &relationConfig.Share,
|
||||||
NotificationFileName: &relationConfig.NotificationConfig,
|
config.NotificationFileName: &relationConfig.NotificationConfig,
|
||||||
WebhooksConfigFileName: &relationConfig.WebhooksConfig,
|
config.WebhooksConfigFileName: &relationConfig.WebhooksConfig,
|
||||||
LocalCacheConfigFileName: &relationConfig.LocalCacheConfig,
|
config.LocalCacheConfigFileName: &relationConfig.LocalCacheConfig,
|
||||||
DiscoveryConfigFilename: &relationConfig.Discovery,
|
config.DiscoveryConfigFilename: &relationConfig.Discovery,
|
||||||
}
|
}
|
||||||
ret.RootCmd = NewRootCmd(program.GetProcessName(), WithConfigMap(ret.configMap))
|
ret.RootCmd = NewRootCmd(program.GetProcessName(), WithConfigMap(ret.configMap))
|
||||||
ret.ctx = context.WithValue(context.Background(), "version", version.Version)
|
ret.ctx = context.WithValue(context.Background(), "version", version.Version)
|
||||||
|
|||||||
@ -18,6 +18,7 @@ import (
|
|||||||
"context"
|
"context"
|
||||||
|
|
||||||
"github.com/openimsdk/open-im-server/v3/internal/rpc/group"
|
"github.com/openimsdk/open-im-server/v3/internal/rpc/group"
|
||||||
|
"github.com/openimsdk/open-im-server/v3/pkg/common/config"
|
||||||
"github.com/openimsdk/open-im-server/v3/pkg/common/startrpc"
|
"github.com/openimsdk/open-im-server/v3/pkg/common/startrpc"
|
||||||
"github.com/openimsdk/open-im-server/v3/pkg/common/storage/versionctx"
|
"github.com/openimsdk/open-im-server/v3/pkg/common/storage/versionctx"
|
||||||
"github.com/openimsdk/open-im-server/v3/version"
|
"github.com/openimsdk/open-im-server/v3/version"
|
||||||
@ -36,14 +37,14 @@ func NewGroupRpcCmd() *GroupRpcCmd {
|
|||||||
var groupConfig group.Config
|
var groupConfig group.Config
|
||||||
ret := &GroupRpcCmd{groupConfig: &groupConfig}
|
ret := &GroupRpcCmd{groupConfig: &groupConfig}
|
||||||
ret.configMap = map[string]any{
|
ret.configMap = map[string]any{
|
||||||
OpenIMRPCGroupCfgFileName: &groupConfig.RpcConfig,
|
config.OpenIMRPCGroupCfgFileName: &groupConfig.RpcConfig,
|
||||||
RedisConfigFileName: &groupConfig.RedisConfig,
|
config.RedisConfigFileName: &groupConfig.RedisConfig,
|
||||||
MongodbConfigFileName: &groupConfig.MongodbConfig,
|
config.MongodbConfigFileName: &groupConfig.MongodbConfig,
|
||||||
ShareFileName: &groupConfig.Share,
|
config.ShareFileName: &groupConfig.Share,
|
||||||
NotificationFileName: &groupConfig.NotificationConfig,
|
config.NotificationFileName: &groupConfig.NotificationConfig,
|
||||||
WebhooksConfigFileName: &groupConfig.WebhooksConfig,
|
config.WebhooksConfigFileName: &groupConfig.WebhooksConfig,
|
||||||
LocalCacheConfigFileName: &groupConfig.LocalCacheConfig,
|
config.LocalCacheConfigFileName: &groupConfig.LocalCacheConfig,
|
||||||
DiscoveryConfigFilename: &groupConfig.Discovery,
|
config.DiscoveryConfigFilename: &groupConfig.Discovery,
|
||||||
}
|
}
|
||||||
ret.RootCmd = NewRootCmd(program.GetProcessName(), WithConfigMap(ret.configMap))
|
ret.RootCmd = NewRootCmd(program.GetProcessName(), WithConfigMap(ret.configMap))
|
||||||
ret.ctx = context.WithValue(context.Background(), "version", version.Version)
|
ret.ctx = context.WithValue(context.Background(), "version", version.Version)
|
||||||
|
|||||||
@ -18,6 +18,7 @@ import (
|
|||||||
"context"
|
"context"
|
||||||
|
|
||||||
"github.com/openimsdk/open-im-server/v3/internal/rpc/msg"
|
"github.com/openimsdk/open-im-server/v3/internal/rpc/msg"
|
||||||
|
"github.com/openimsdk/open-im-server/v3/pkg/common/config"
|
||||||
"github.com/openimsdk/open-im-server/v3/pkg/common/startrpc"
|
"github.com/openimsdk/open-im-server/v3/pkg/common/startrpc"
|
||||||
"github.com/openimsdk/open-im-server/v3/version"
|
"github.com/openimsdk/open-im-server/v3/version"
|
||||||
"github.com/openimsdk/tools/system/program"
|
"github.com/openimsdk/tools/system/program"
|
||||||
@ -35,15 +36,15 @@ func NewMsgRpcCmd() *MsgRpcCmd {
|
|||||||
var msgConfig msg.Config
|
var msgConfig msg.Config
|
||||||
ret := &MsgRpcCmd{msgConfig: &msgConfig}
|
ret := &MsgRpcCmd{msgConfig: &msgConfig}
|
||||||
ret.configMap = map[string]any{
|
ret.configMap = map[string]any{
|
||||||
OpenIMRPCMsgCfgFileName: &msgConfig.RpcConfig,
|
config.OpenIMRPCMsgCfgFileName: &msgConfig.RpcConfig,
|
||||||
RedisConfigFileName: &msgConfig.RedisConfig,
|
config.RedisConfigFileName: &msgConfig.RedisConfig,
|
||||||
MongodbConfigFileName: &msgConfig.MongodbConfig,
|
config.MongodbConfigFileName: &msgConfig.MongodbConfig,
|
||||||
KafkaConfigFileName: &msgConfig.KafkaConfig,
|
config.KafkaConfigFileName: &msgConfig.KafkaConfig,
|
||||||
ShareFileName: &msgConfig.Share,
|
config.ShareFileName: &msgConfig.Share,
|
||||||
NotificationFileName: &msgConfig.NotificationConfig,
|
config.NotificationFileName: &msgConfig.NotificationConfig,
|
||||||
WebhooksConfigFileName: &msgConfig.WebhooksConfig,
|
config.WebhooksConfigFileName: &msgConfig.WebhooksConfig,
|
||||||
LocalCacheConfigFileName: &msgConfig.LocalCacheConfig,
|
config.LocalCacheConfigFileName: &msgConfig.LocalCacheConfig,
|
||||||
DiscoveryConfigFilename: &msgConfig.Discovery,
|
config.DiscoveryConfigFilename: &msgConfig.Discovery,
|
||||||
}
|
}
|
||||||
ret.RootCmd = NewRootCmd(program.GetProcessName(), WithConfigMap(ret.configMap))
|
ret.RootCmd = NewRootCmd(program.GetProcessName(), WithConfigMap(ret.configMap))
|
||||||
ret.ctx = context.WithValue(context.Background(), "version", version.Version)
|
ret.ctx = context.WithValue(context.Background(), "version", version.Version)
|
||||||
|
|||||||
@ -18,6 +18,7 @@ import (
|
|||||||
"context"
|
"context"
|
||||||
|
|
||||||
"github.com/openimsdk/open-im-server/v3/internal/msggateway"
|
"github.com/openimsdk/open-im-server/v3/internal/msggateway"
|
||||||
|
"github.com/openimsdk/open-im-server/v3/pkg/common/config"
|
||||||
"github.com/openimsdk/open-im-server/v3/version"
|
"github.com/openimsdk/open-im-server/v3/version"
|
||||||
|
|
||||||
"github.com/openimsdk/tools/system/program"
|
"github.com/openimsdk/tools/system/program"
|
||||||
@ -35,11 +36,11 @@ func NewMsgGatewayCmd() *MsgGatewayCmd {
|
|||||||
var msgGatewayConfig msggateway.Config
|
var msgGatewayConfig msggateway.Config
|
||||||
ret := &MsgGatewayCmd{msgGatewayConfig: &msgGatewayConfig}
|
ret := &MsgGatewayCmd{msgGatewayConfig: &msgGatewayConfig}
|
||||||
ret.configMap = map[string]any{
|
ret.configMap = map[string]any{
|
||||||
OpenIMMsgGatewayCfgFileName: &msgGatewayConfig.MsgGateway,
|
config.OpenIMMsgGatewayCfgFileName: &msgGatewayConfig.MsgGateway,
|
||||||
ShareFileName: &msgGatewayConfig.Share,
|
config.ShareFileName: &msgGatewayConfig.Share,
|
||||||
RedisConfigFileName: &msgGatewayConfig.RedisConfig,
|
config.RedisConfigFileName: &msgGatewayConfig.RedisConfig,
|
||||||
WebhooksConfigFileName: &msgGatewayConfig.WebhooksConfig,
|
config.WebhooksConfigFileName: &msgGatewayConfig.WebhooksConfig,
|
||||||
DiscoveryConfigFilename: &msgGatewayConfig.Discovery,
|
config.DiscoveryConfigFilename: &msgGatewayConfig.Discovery,
|
||||||
}
|
}
|
||||||
ret.RootCmd = NewRootCmd(program.GetProcessName(), WithConfigMap(ret.configMap))
|
ret.RootCmd = NewRootCmd(program.GetProcessName(), WithConfigMap(ret.configMap))
|
||||||
ret.ctx = context.WithValue(context.Background(), "version", version.Version)
|
ret.ctx = context.WithValue(context.Background(), "version", version.Version)
|
||||||
|
|||||||
@ -18,6 +18,7 @@ import (
|
|||||||
"context"
|
"context"
|
||||||
|
|
||||||
"github.com/openimsdk/open-im-server/v3/internal/msgtransfer"
|
"github.com/openimsdk/open-im-server/v3/internal/msgtransfer"
|
||||||
|
"github.com/openimsdk/open-im-server/v3/pkg/common/config"
|
||||||
"github.com/openimsdk/open-im-server/v3/version"
|
"github.com/openimsdk/open-im-server/v3/version"
|
||||||
"github.com/openimsdk/tools/system/program"
|
"github.com/openimsdk/tools/system/program"
|
||||||
"github.com/spf13/cobra"
|
"github.com/spf13/cobra"
|
||||||
@ -34,13 +35,13 @@ func NewMsgTransferCmd() *MsgTransferCmd {
|
|||||||
var msgTransferConfig msgtransfer.Config
|
var msgTransferConfig msgtransfer.Config
|
||||||
ret := &MsgTransferCmd{msgTransferConfig: &msgTransferConfig}
|
ret := &MsgTransferCmd{msgTransferConfig: &msgTransferConfig}
|
||||||
ret.configMap = map[string]any{
|
ret.configMap = map[string]any{
|
||||||
OpenIMMsgTransferCfgFileName: &msgTransferConfig.MsgTransfer,
|
config.OpenIMMsgTransferCfgFileName: &msgTransferConfig.MsgTransfer,
|
||||||
RedisConfigFileName: &msgTransferConfig.RedisConfig,
|
config.RedisConfigFileName: &msgTransferConfig.RedisConfig,
|
||||||
MongodbConfigFileName: &msgTransferConfig.MongodbConfig,
|
config.MongodbConfigFileName: &msgTransferConfig.MongodbConfig,
|
||||||
KafkaConfigFileName: &msgTransferConfig.KafkaConfig,
|
config.KafkaConfigFileName: &msgTransferConfig.KafkaConfig,
|
||||||
ShareFileName: &msgTransferConfig.Share,
|
config.ShareFileName: &msgTransferConfig.Share,
|
||||||
WebhooksConfigFileName: &msgTransferConfig.WebhooksConfig,
|
config.WebhooksConfigFileName: &msgTransferConfig.WebhooksConfig,
|
||||||
DiscoveryConfigFilename: &msgTransferConfig.Discovery,
|
config.DiscoveryConfigFilename: &msgTransferConfig.Discovery,
|
||||||
}
|
}
|
||||||
ret.RootCmd = NewRootCmd(program.GetProcessName(), WithConfigMap(ret.configMap))
|
ret.RootCmd = NewRootCmd(program.GetProcessName(), WithConfigMap(ret.configMap))
|
||||||
ret.ctx = context.WithValue(context.Background(), "version", version.Version)
|
ret.ctx = context.WithValue(context.Background(), "version", version.Version)
|
||||||
|
|||||||
@ -18,6 +18,7 @@ import (
|
|||||||
"context"
|
"context"
|
||||||
|
|
||||||
"github.com/openimsdk/open-im-server/v3/internal/push"
|
"github.com/openimsdk/open-im-server/v3/internal/push"
|
||||||
|
"github.com/openimsdk/open-im-server/v3/pkg/common/config"
|
||||||
"github.com/openimsdk/open-im-server/v3/pkg/common/startrpc"
|
"github.com/openimsdk/open-im-server/v3/pkg/common/startrpc"
|
||||||
"github.com/openimsdk/open-im-server/v3/version"
|
"github.com/openimsdk/open-im-server/v3/version"
|
||||||
"github.com/openimsdk/tools/system/program"
|
"github.com/openimsdk/tools/system/program"
|
||||||
@ -35,14 +36,14 @@ func NewPushRpcCmd() *PushRpcCmd {
|
|||||||
var pushConfig push.Config
|
var pushConfig push.Config
|
||||||
ret := &PushRpcCmd{pushConfig: &pushConfig}
|
ret := &PushRpcCmd{pushConfig: &pushConfig}
|
||||||
ret.configMap = map[string]any{
|
ret.configMap = map[string]any{
|
||||||
OpenIMPushCfgFileName: &pushConfig.RpcConfig,
|
config.OpenIMPushCfgFileName: &pushConfig.RpcConfig,
|
||||||
RedisConfigFileName: &pushConfig.RedisConfig,
|
config.RedisConfigFileName: &pushConfig.RedisConfig,
|
||||||
KafkaConfigFileName: &pushConfig.KafkaConfig,
|
config.KafkaConfigFileName: &pushConfig.KafkaConfig,
|
||||||
ShareFileName: &pushConfig.Share,
|
config.ShareFileName: &pushConfig.Share,
|
||||||
NotificationFileName: &pushConfig.NotificationConfig,
|
config.NotificationFileName: &pushConfig.NotificationConfig,
|
||||||
WebhooksConfigFileName: &pushConfig.WebhooksConfig,
|
config.WebhooksConfigFileName: &pushConfig.WebhooksConfig,
|
||||||
LocalCacheConfigFileName: &pushConfig.LocalCacheConfig,
|
config.LocalCacheConfigFileName: &pushConfig.LocalCacheConfig,
|
||||||
DiscoveryConfigFilename: &pushConfig.Discovery,
|
config.DiscoveryConfigFilename: &pushConfig.Discovery,
|
||||||
}
|
}
|
||||||
ret.RootCmd = NewRootCmd(program.GetProcessName(), WithConfigMap(ret.configMap))
|
ret.RootCmd = NewRootCmd(program.GetProcessName(), WithConfigMap(ret.configMap))
|
||||||
ret.ctx = context.WithValue(context.Background(), "version", version.Version)
|
ret.ctx = context.WithValue(context.Background(), "version", version.Version)
|
||||||
|
|||||||
@ -117,7 +117,7 @@ func (r *RootCmd) initializeConfiguration(cmd *cobra.Command, opts *CmdOpts) err
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
// Load common log configuration file
|
// Load common log configuration file
|
||||||
return config.Load(configDirectory, LogConfigFileName, ConfigEnvPrefixMap[LogConfigFileName], runtimeEnv, &r.log)
|
return config.Load(configDirectory, config.LogConfigFileName, ConfigEnvPrefixMap[config.LogConfigFileName], runtimeEnv, &r.log)
|
||||||
}
|
}
|
||||||
|
|
||||||
func (r *RootCmd) applyOptions(opts ...func(*CmdOpts)) *CmdOpts {
|
func (r *RootCmd) applyOptions(opts ...func(*CmdOpts)) *CmdOpts {
|
||||||
|
|||||||
@ -18,6 +18,7 @@ import (
|
|||||||
"context"
|
"context"
|
||||||
|
|
||||||
"github.com/openimsdk/open-im-server/v3/internal/rpc/third"
|
"github.com/openimsdk/open-im-server/v3/internal/rpc/third"
|
||||||
|
"github.com/openimsdk/open-im-server/v3/pkg/common/config"
|
||||||
"github.com/openimsdk/open-im-server/v3/pkg/common/startrpc"
|
"github.com/openimsdk/open-im-server/v3/pkg/common/startrpc"
|
||||||
"github.com/openimsdk/open-im-server/v3/version"
|
"github.com/openimsdk/open-im-server/v3/version"
|
||||||
"github.com/openimsdk/tools/system/program"
|
"github.com/openimsdk/tools/system/program"
|
||||||
@ -35,14 +36,14 @@ func NewThirdRpcCmd() *ThirdRpcCmd {
|
|||||||
var thirdConfig third.Config
|
var thirdConfig third.Config
|
||||||
ret := &ThirdRpcCmd{thirdConfig: &thirdConfig}
|
ret := &ThirdRpcCmd{thirdConfig: &thirdConfig}
|
||||||
ret.configMap = map[string]any{
|
ret.configMap = map[string]any{
|
||||||
OpenIMRPCThirdCfgFileName: &thirdConfig.RpcConfig,
|
config.OpenIMRPCThirdCfgFileName: &thirdConfig.RpcConfig,
|
||||||
RedisConfigFileName: &thirdConfig.RedisConfig,
|
config.RedisConfigFileName: &thirdConfig.RedisConfig,
|
||||||
MongodbConfigFileName: &thirdConfig.MongodbConfig,
|
config.MongodbConfigFileName: &thirdConfig.MongodbConfig,
|
||||||
ShareFileName: &thirdConfig.Share,
|
config.ShareFileName: &thirdConfig.Share,
|
||||||
NotificationFileName: &thirdConfig.NotificationConfig,
|
config.NotificationFileName: &thirdConfig.NotificationConfig,
|
||||||
MinioConfigFileName: &thirdConfig.MinioConfig,
|
config.MinioConfigFileName: &thirdConfig.MinioConfig,
|
||||||
LocalCacheConfigFileName: &thirdConfig.LocalCacheConfig,
|
config.LocalCacheConfigFileName: &thirdConfig.LocalCacheConfig,
|
||||||
DiscoveryConfigFilename: &thirdConfig.Discovery,
|
config.DiscoveryConfigFilename: &thirdConfig.Discovery,
|
||||||
}
|
}
|
||||||
ret.RootCmd = NewRootCmd(program.GetProcessName(), WithConfigMap(ret.configMap))
|
ret.RootCmd = NewRootCmd(program.GetProcessName(), WithConfigMap(ret.configMap))
|
||||||
ret.ctx = context.WithValue(context.Background(), "version", version.Version)
|
ret.ctx = context.WithValue(context.Background(), "version", version.Version)
|
||||||
|
|||||||
@ -18,6 +18,7 @@ import (
|
|||||||
"context"
|
"context"
|
||||||
|
|
||||||
"github.com/openimsdk/open-im-server/v3/internal/rpc/user"
|
"github.com/openimsdk/open-im-server/v3/internal/rpc/user"
|
||||||
|
"github.com/openimsdk/open-im-server/v3/pkg/common/config"
|
||||||
"github.com/openimsdk/open-im-server/v3/pkg/common/startrpc"
|
"github.com/openimsdk/open-im-server/v3/pkg/common/startrpc"
|
||||||
"github.com/openimsdk/open-im-server/v3/version"
|
"github.com/openimsdk/open-im-server/v3/version"
|
||||||
"github.com/openimsdk/tools/system/program"
|
"github.com/openimsdk/tools/system/program"
|
||||||
@ -35,15 +36,15 @@ func NewUserRpcCmd() *UserRpcCmd {
|
|||||||
var userConfig user.Config
|
var userConfig user.Config
|
||||||
ret := &UserRpcCmd{userConfig: &userConfig}
|
ret := &UserRpcCmd{userConfig: &userConfig}
|
||||||
ret.configMap = map[string]any{
|
ret.configMap = map[string]any{
|
||||||
OpenIMRPCUserCfgFileName: &userConfig.RpcConfig,
|
config.OpenIMRPCUserCfgFileName: &userConfig.RpcConfig,
|
||||||
RedisConfigFileName: &userConfig.RedisConfig,
|
config.RedisConfigFileName: &userConfig.RedisConfig,
|
||||||
MongodbConfigFileName: &userConfig.MongodbConfig,
|
config.MongodbConfigFileName: &userConfig.MongodbConfig,
|
||||||
KafkaConfigFileName: &userConfig.KafkaConfig,
|
config.KafkaConfigFileName: &userConfig.KafkaConfig,
|
||||||
ShareFileName: &userConfig.Share,
|
config.ShareFileName: &userConfig.Share,
|
||||||
NotificationFileName: &userConfig.NotificationConfig,
|
config.NotificationFileName: &userConfig.NotificationConfig,
|
||||||
WebhooksConfigFileName: &userConfig.WebhooksConfig,
|
config.WebhooksConfigFileName: &userConfig.WebhooksConfig,
|
||||||
LocalCacheConfigFileName: &userConfig.LocalCacheConfig,
|
config.LocalCacheConfigFileName: &userConfig.LocalCacheConfig,
|
||||||
DiscoveryConfigFilename: &userConfig.Discovery,
|
config.DiscoveryConfigFilename: &userConfig.Discovery,
|
||||||
}
|
}
|
||||||
ret.RootCmd = NewRootCmd(program.GetProcessName(), WithConfigMap(ret.configMap))
|
ret.RootCmd = NewRootCmd(program.GetProcessName(), WithConfigMap(ret.configMap))
|
||||||
ret.ctx = context.WithValue(context.Background(), "version", version.Version)
|
ret.ctx = context.WithValue(context.Background(), "version", version.Version)
|
||||||
|
|||||||
@ -701,7 +701,74 @@ type AllConfig struct {
|
|||||||
Webhooks Webhooks
|
Webhooks Webhooks
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (a *AllConfig) Name2Config(name string) any {
|
||||||
|
switch name {
|
||||||
|
case DiscoveryConfigFilename:
|
||||||
|
return a.Discovery
|
||||||
|
case LocalCacheConfigFileName:
|
||||||
|
return a.LocalCache
|
||||||
|
case LogConfigFileName:
|
||||||
|
return a.Log
|
||||||
|
case NotificationFileName:
|
||||||
|
return a.Notification
|
||||||
|
case OpenIMAPICfgFileName:
|
||||||
|
return a.API
|
||||||
|
case OpenIMCronTaskCfgFileName:
|
||||||
|
return a.CronTask
|
||||||
|
case OpenIMMsgGatewayCfgFileName:
|
||||||
|
return a.MsgGateway
|
||||||
|
case OpenIMMsgTransferCfgFileName:
|
||||||
|
return a.MsgTransfer
|
||||||
|
case OpenIMPushCfgFileName:
|
||||||
|
return a.Push
|
||||||
|
case OpenIMRPCAuthCfgFileName:
|
||||||
|
return a.Auth
|
||||||
|
case OpenIMRPCConversationCfgFileName:
|
||||||
|
return a.Conversation
|
||||||
|
case OpenIMRPCFriendCfgFileName:
|
||||||
|
return a.Friend
|
||||||
|
case OpenIMRPCGroupCfgFileName:
|
||||||
|
return a.Group
|
||||||
|
case OpenIMRPCMsgCfgFileName:
|
||||||
|
return a.Msg
|
||||||
|
case OpenIMRPCThirdCfgFileName:
|
||||||
|
return a.Third
|
||||||
|
case OpenIMRPCUserCfgFileName:
|
||||||
|
return a.User
|
||||||
|
case ShareFileName:
|
||||||
|
return a.Share
|
||||||
|
case WebhooksConfigFileName:
|
||||||
|
return a.Webhooks
|
||||||
|
default:
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (a *AllConfig) GetConfigNames() []string {
|
||||||
|
return []string{
|
||||||
|
DiscoveryConfigFilename,
|
||||||
|
LocalCacheConfigFileName,
|
||||||
|
LogConfigFileName,
|
||||||
|
NotificationFileName,
|
||||||
|
OpenIMAPICfgFileName,
|
||||||
|
OpenIMCronTaskCfgFileName,
|
||||||
|
OpenIMMsgGatewayCfgFileName,
|
||||||
|
OpenIMMsgTransferCfgFileName,
|
||||||
|
OpenIMPushCfgFileName,
|
||||||
|
OpenIMRPCAuthCfgFileName,
|
||||||
|
OpenIMRPCConversationCfgFileName,
|
||||||
|
OpenIMRPCFriendCfgFileName,
|
||||||
|
OpenIMRPCGroupCfgFileName,
|
||||||
|
OpenIMRPCMsgCfgFileName,
|
||||||
|
OpenIMRPCThirdCfgFileName,
|
||||||
|
OpenIMRPCUserCfgFileName,
|
||||||
|
ShareFileName,
|
||||||
|
WebhooksConfigFileName,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
var (
|
var (
|
||||||
|
FileName = "config.yaml"
|
||||||
NotificationFileName = "notification.yml"
|
NotificationFileName = "notification.yml"
|
||||||
ShareFileName = "share.yml"
|
ShareFileName = "share.yml"
|
||||||
WebhooksConfigFileName = "webhooks.yml"
|
WebhooksConfigFileName = "webhooks.yml"
|
||||||
|
|||||||
@ -12,4 +12,4 @@
|
|||||||
// See the License for the specific language governing permissions and
|
// See the License for the specific language governing permissions and
|
||||||
// limitations under the License.
|
// limitations under the License.
|
||||||
|
|
||||||
package direct // import "github.com/openimsdk/open-im-server/v3/pkg/common/discoveryregister/direct"
|
package direct // import "github.com/openimsdk/open-im-server/v3/pkg/common/discovery/direct"
|
||||||
@ -12,7 +12,7 @@
|
|||||||
// See the License for the specific language governing permissions and
|
// See the License for the specific language governing permissions and
|
||||||
// limitations under the License.
|
// limitations under the License.
|
||||||
|
|
||||||
package discoveryregister
|
package discovery
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"time"
|
"time"
|
||||||
@ -12,7 +12,7 @@
|
|||||||
// See the License for the specific language governing permissions and
|
// See the License for the specific language governing permissions and
|
||||||
// limitations under the License.
|
// limitations under the License.
|
||||||
|
|
||||||
package discoveryregister
|
package discovery
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"os"
|
"os"
|
||||||
@ -12,4 +12,4 @@
|
|||||||
// See the License for the specific language governing permissions and
|
// See the License for the specific language governing permissions and
|
||||||
// limitations under the License.
|
// limitations under the License.
|
||||||
|
|
||||||
package discoveryregister // import "github.com/openimsdk/open-im-server/v3/pkg/common/discoveryregister"
|
package discovery // import "github.com/openimsdk/open-im-server/v3/pkg/common/discovery"
|
||||||
@ -12,4 +12,4 @@
|
|||||||
// See the License for the specific language governing permissions and
|
// See the License for the specific language governing permissions and
|
||||||
// limitations under the License.
|
// limitations under the License.
|
||||||
|
|
||||||
package kubernetes // import "github.com/openimsdk/open-im-server/v3/pkg/common/discoveryregister/etcd"
|
package kubernetes // import "github.com/openimsdk/open-im-server/v3/pkg/common/discovery/etcd"
|
||||||
@ -12,4 +12,4 @@
|
|||||||
// See the License for the specific language governing permissions and
|
// See the License for the specific language governing permissions and
|
||||||
// limitations under the License.
|
// limitations under the License.
|
||||||
|
|
||||||
package kubernetes // import "github.com/openimsdk/open-im-server/v3/pkg/common/discoveryregister/kubernetes"
|
package kubernetes // import "github.com/openimsdk/open-im-server/v3/pkg/common/discovery/kubernetes"
|
||||||
@ -35,7 +35,7 @@ import (
|
|||||||
|
|
||||||
"github.com/openimsdk/tools/utils/runtimeenv"
|
"github.com/openimsdk/tools/utils/runtimeenv"
|
||||||
|
|
||||||
kdisc "github.com/openimsdk/open-im-server/v3/pkg/common/discoveryregister"
|
kdisc "github.com/openimsdk/open-im-server/v3/pkg/common/discovery"
|
||||||
"github.com/openimsdk/open-im-server/v3/pkg/common/prommetrics"
|
"github.com/openimsdk/open-im-server/v3/pkg/common/prommetrics"
|
||||||
"github.com/openimsdk/tools/discovery"
|
"github.com/openimsdk/tools/discovery"
|
||||||
"github.com/openimsdk/tools/errs"
|
"github.com/openimsdk/tools/errs"
|
||||||
|
|||||||
@ -87,35 +87,35 @@ func initConfig(configDir string) (*config.Mongo, *config.Redis, *config.Kafka,
|
|||||||
)
|
)
|
||||||
runtimeEnv := runtimeenv.PrintRuntimeEnvironment()
|
runtimeEnv := runtimeenv.PrintRuntimeEnvironment()
|
||||||
|
|
||||||
err := config.Load(configDir, cmd.MongodbConfigFileName, cmd.ConfigEnvPrefixMap[cmd.MongodbConfigFileName], runtimeEnv, mongoConfig)
|
err := config.Load(configDir, config.MongodbConfigFileName, cmd.ConfigEnvPrefixMap[config.MongodbConfigFileName], runtimeEnv, mongoConfig)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, nil, nil, nil, nil, err
|
return nil, nil, nil, nil, nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
err = config.Load(configDir, cmd.RedisConfigFileName, cmd.ConfigEnvPrefixMap[cmd.RedisConfigFileName], runtimeEnv, redisConfig)
|
err = config.Load(configDir, config.RedisConfigFileName, cmd.ConfigEnvPrefixMap[config.RedisConfigFileName], runtimeEnv, redisConfig)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, nil, nil, nil, nil, err
|
return nil, nil, nil, nil, nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
err = config.Load(configDir, cmd.KafkaConfigFileName, cmd.ConfigEnvPrefixMap[cmd.KafkaConfigFileName], runtimeEnv, kafkaConfig)
|
err = config.Load(configDir, config.KafkaConfigFileName, cmd.ConfigEnvPrefixMap[config.KafkaConfigFileName], runtimeEnv, kafkaConfig)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, nil, nil, nil, nil, err
|
return nil, nil, nil, nil, nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
err = config.Load(configDir, cmd.OpenIMRPCThirdCfgFileName, cmd.ConfigEnvPrefixMap[cmd.OpenIMRPCThirdCfgFileName], runtimeEnv, thirdConfig)
|
err = config.Load(configDir, config.OpenIMRPCThirdCfgFileName, cmd.ConfigEnvPrefixMap[config.OpenIMRPCThirdCfgFileName], runtimeEnv, thirdConfig)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, nil, nil, nil, nil, err
|
return nil, nil, nil, nil, nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
if thirdConfig.Object.Enable == "minio" {
|
if thirdConfig.Object.Enable == "minio" {
|
||||||
err = config.Load(configDir, cmd.MinioConfigFileName, cmd.ConfigEnvPrefixMap[cmd.MinioConfigFileName], runtimeEnv, minioConfig)
|
err = config.Load(configDir, config.MinioConfigFileName, cmd.ConfigEnvPrefixMap[config.MinioConfigFileName], runtimeEnv, minioConfig)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, nil, nil, nil, nil, err
|
return nil, nil, nil, nil, nil, err
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
minioConfig = nil
|
minioConfig = nil
|
||||||
}
|
}
|
||||||
err = config.Load(configDir, cmd.DiscoveryConfigFilename, cmd.ConfigEnvPrefixMap[cmd.DiscoveryConfigFilename], runtimeEnv, discovery)
|
err = config.Load(configDir, config.DiscoveryConfigFilename, cmd.ConfigEnvPrefixMap[config.DiscoveryConfigFilename], runtimeEnv, discovery)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, nil, nil, nil, nil, err
|
return nil, nil, nil, nil, nil, err
|
||||||
}
|
}
|
||||||
|
|||||||
@ -15,7 +15,6 @@ import (
|
|||||||
"syscall"
|
"syscall"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
"github.com/openimsdk/open-im-server/v3/pkg/common/cmd"
|
|
||||||
"github.com/openimsdk/open-im-server/v3/pkg/common/config"
|
"github.com/openimsdk/open-im-server/v3/pkg/common/config"
|
||||||
"github.com/openimsdk/open-im-server/v3/pkg/common/storage/database/mgo"
|
"github.com/openimsdk/open-im-server/v3/pkg/common/storage/database/mgo"
|
||||||
"github.com/openimsdk/tools/db/mongoutil"
|
"github.com/openimsdk/tools/db/mongoutil"
|
||||||
@ -59,11 +58,11 @@ func readConfig[T any](dir string, name string) (*T, error) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func Main(conf string, del time.Duration) error {
|
func Main(conf string, del time.Duration) error {
|
||||||
redisConfig, err := readConfig[config.Redis](conf, cmd.RedisConfigFileName)
|
redisConfig, err := readConfig[config.Redis](conf, config.RedisConfigFileName)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
mongodbConfig, err := readConfig[config.Mongo](conf, cmd.MongodbConfigFileName)
|
mongodbConfig, err := readConfig[config.Mongo](conf, config.MongodbConfigFileName)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user