nacoscli

package
v0.0.2 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 2, 2023 License: MIT Imports: 14 Imported by: 0

README

nacoscli

Get the configuration from the nacos configuration center and parse it into a structure.

Example of use

	import "github.com/hankyu66/sponge/pkg/nacoscli"

	// Way 1: Setting parameters
	a := &config{}
	params := &Params{
		IpAddr:      "192.168.3.37",
		Port:        8848,
		NamespaceId: "de7b176e-91cd-49a3-ac83-beb725979775",
		Group:       "dev",
		DataId:      "user-srv.yml",
		Format:      "yaml",
	}
	err := nacoscli.Init(a, params)

	// Way 2: Setting up ClientConfig and ServerConfig
	a = &config{}
	params = &Params{
		Group:  "dev",
		DataId: "user-srv.yml",
		Format: "yaml",
	}
	clientConfig := &constant.ClientConfig{
		NamespaceId:         "de7b176e-91cd-49a3-ac83-beb725979775",
		TimeoutMs:           5000,
		NotLoadCacheAtStart: true,
		LogDir:              os.TempDir() + "/nacos/log",
		CacheDir:            os.TempDir() + "/nacos/cache",
	}
	serverConfigs := []constant.ServerConfig{
		{
			IpAddr: "192.168.3.37",
			Port:   8848,
		},
	}
	err = nacoscli.Init(a, params,
		WithClientConfig(clientConfig),
		WithServerConfigs(serverConfigs),
	)

Documentation

Overview

Package nacoscli provides for getting the configuration from the nacos configuration center and parse it into a structure.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func GetAndWatchConfig

func GetAndWatchConfig(client config_client.IConfigClient, dataId, group, configType string, config interface{}) error

func Init

func Init(obj interface{}, params *Params, opts ...Option) error

Init get configuration from nacos and parse to struct

func NewClient

func NewClient(url, namespace string, port uint64) (config_client.IConfigClient, error)

func NewNamingClient

func NewNamingClient(nacosIPAddr string, nacosPort int, nacosNamespaceID string, opts ...Option) (naming_client.INamingClient, error)

NewNamingClient create a service registration and discovery of nacos client

Types

type Option

type Option func(*options)

Option set the nacos client options.

func WithClientConfig

func WithClientConfig(clientConfig *constant.ClientConfig) Option

WithClientConfig set nacos client config

func WithServerConfigs

func WithServerConfigs(serverConfigs []constant.ServerConfig) Option

WithServerConfigs set nacos server config

type Params

type Params struct {
	IPAddr      string // server address
	Port        uint64 // port
	Scheme      string // http or https
	ContextPath string // path
	NamespaceID string // namespace id

	Group  string // group, example: dev, prod, test
	DataID string // config file id
	Format string // configuration file type: json,yaml,toml
	// contains filtered or unexported fields
}

Params nacos parameters

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL