diff --git a/api.go b/api.go index ed3fd98f..0f3dfa2b 100644 --- a/api.go +++ b/api.go @@ -132,6 +132,7 @@ func NewQuotaRequest() QuotaRequest { } type GetConfigFileRequest api.GetConfigFileRequest +type GetConfigGroupRequest api.GetConfigGroupRequest // ConfigFile config type ConfigFile model.ConfigFile @@ -157,6 +158,9 @@ type ConfigGroupAPI interface { api.SDKOwner // GetConfigGroup . GetConfigGroup(namesapce, group string) (model.ConfigFileGroup, error) + + // FetchConfigGroup 获取配置分组 + FetchConfigGroup(*GetConfigGroupRequest) (model.ConfigFileGroup, error) } type CircuitBreakerAPI interface { diff --git a/api/config_file.go b/api/config_file.go index 16749898..150831bc 100644 --- a/api/config_file.go +++ b/api/config_file.go @@ -23,6 +23,10 @@ type GetConfigFileRequest struct { *model.GetConfigFileRequest } +type GetConfigGroupRequest struct { + *model.GetConfigGroupRequest +} + // ConfigFileAPI 配置文件的 API type ConfigFileAPI interface { SDKOwner @@ -43,6 +47,8 @@ type ConfigGroupAPI interface { SDKOwner // GetConfigGroup 获取配置分组 GetConfigGroup(namespace, group string) (model.ConfigFileGroup, error) + // FetchConfigGroup 获取配置文件 + FetchConfigGroup(*GetConfigGroupRequest) (model.ConfigFileGroup, error) } var ( diff --git a/api/config_file_impl.go b/api/config_file_impl.go index 5dd5f558..fd57ee50 100644 --- a/api/config_file_impl.go +++ b/api/config_file_impl.go @@ -122,6 +122,11 @@ func (c *configGroupAPI) GetConfigGroup(namespace, group string) (model.ConfigFi return c.context.GetEngine().SyncGetConfigGroup(namespace, group) } +// GetConfigGroup 获取配置分组 +func (c *configGroupAPI) FetchConfigGroup(req *GetConfigGroupRequest) (model.ConfigFileGroup, error) { + return c.context.GetEngine().SyncGetConfigGroupWithReq(req.GetConfigGroupRequest) +} + // SDKContext 获取SDK上下文 func (c *configGroupAPI) SDKContext() SDKContext { return c.context diff --git a/api_config.go b/api_config.go index 30d9383f..3ff892db 100644 --- a/api_config.go +++ b/api_config.go @@ -147,6 +147,11 @@ func (c *configGroupAPI) GetConfigGroup(namesapce, group string) (model.ConfigFi return c.rawAPI.GetConfigGroup(namesapce, group) } +// FetchConfigGroup 获取配置分组 +func (c *configGroupAPI) FetchConfigGroup(req *GetConfigGroupRequest) (model.ConfigFileGroup, error) { + return c.rawAPI.FetchConfigGroup((*api.GetConfigGroupRequest)(req)) +} + // SDKContext 获取SDK上下文 func (c *configGroupAPI) SDKContext() api.SDKContext { return c.rawAPI.SDKContext() diff --git a/examples/activehealthcheck/go.mod b/examples/activehealthcheck/go.mod index f91af8ec..8402b618 100644 --- a/examples/activehealthcheck/go.mod +++ b/examples/activehealthcheck/go.mod @@ -17,7 +17,7 @@ require ( github.com/modern-go/reflect2 v1.0.2 // indirect github.com/natefinch/lumberjack v2.0.0+incompatible // indirect github.com/pkg/errors v0.9.1 // indirect - github.com/polarismesh/specification v1.4.1 // indirect + github.com/polarismesh/specification v1.5.5-alpha.1 // indirect github.com/prometheus/client_golang v1.12.2 // indirect github.com/prometheus/client_model v0.2.0 // indirect github.com/prometheus/common v0.32.1 // indirect diff --git a/examples/activehealthcheck/go.sum b/examples/activehealthcheck/go.sum index 48997cc2..edeff98a 100644 --- a/examples/activehealthcheck/go.sum +++ b/examples/activehealthcheck/go.sum @@ -378,6 +378,7 @@ github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZN github.com/polarismesh/specification v1.3.2-alpha.2 h1:cMghyvCnRVM5ca2kYCGHOgIIxVnokiMvw0720q8a8RA= github.com/polarismesh/specification v1.3.2-alpha.2/go.mod h1:rDvMMtl5qebPmqiBLNa5Ps0XtwkP31ZLirbH4kXA0YU= github.com/polarismesh/specification v1.4.1/go.mod h1:rDvMMtl5qebPmqiBLNa5Ps0XtwkP31ZLirbH4kXA0YU= +github.com/polarismesh/specification v1.5.5-alpha.1/go.mod h1:rDvMMtl5qebPmqiBLNa5Ps0XtwkP31ZLirbH4kXA0YU= github.com/prometheus/client_golang v0.9.1/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw= github.com/prometheus/client_golang v1.0.0/go.mod h1:db9x61etRT2tGnBNRi70OPL5FsnadC4Ky3P0J6CfImo= github.com/prometheus/client_golang v1.7.1/go.mod h1:PY5Wy2awLA44sXw4AOSfFBetzPP4j5+D6mVACh+pe2M= diff --git a/examples/circuitbreaker/instance/consumer/go.mod b/examples/circuitbreaker/instance/consumer/go.mod index e511b117..9e872e20 100644 --- a/examples/circuitbreaker/instance/consumer/go.mod +++ b/examples/circuitbreaker/instance/consumer/go.mod @@ -17,7 +17,7 @@ require ( github.com/modern-go/reflect2 v1.0.2 // indirect github.com/natefinch/lumberjack v2.0.0+incompatible // indirect github.com/pkg/errors v0.9.1 // indirect - github.com/polarismesh/specification v1.4.1 // indirect + github.com/polarismesh/specification v1.5.5-alpha.1 // indirect github.com/prometheus/client_golang v1.12.2 // indirect github.com/prometheus/client_model v0.2.0 // indirect github.com/prometheus/common v0.32.1 // indirect diff --git a/examples/circuitbreaker/instance/consumer/go.sum b/examples/circuitbreaker/instance/consumer/go.sum index d93306f5..7400bc33 100644 --- a/examples/circuitbreaker/instance/consumer/go.sum +++ b/examples/circuitbreaker/instance/consumer/go.sum @@ -374,6 +374,7 @@ github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZb github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/polarismesh/specification v1.4.1 h1:lTZqeyUhhWuKyr6NDKBwmUrNfcUDvKLxWT/uOq71T5A= github.com/polarismesh/specification v1.4.1/go.mod h1:rDvMMtl5qebPmqiBLNa5Ps0XtwkP31ZLirbH4kXA0YU= +github.com/polarismesh/specification v1.5.5-alpha.1/go.mod h1:rDvMMtl5qebPmqiBLNa5Ps0XtwkP31ZLirbH4kXA0YU= github.com/prometheus/client_golang v0.9.1/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw= github.com/prometheus/client_golang v1.0.0/go.mod h1:db9x61etRT2tGnBNRi70OPL5FsnadC4Ky3P0J6CfImo= github.com/prometheus/client_golang v1.7.1/go.mod h1:PY5Wy2awLA44sXw4AOSfFBetzPP4j5+D6mVACh+pe2M= diff --git a/examples/circuitbreaker/instance/provider/go.mod b/examples/circuitbreaker/instance/provider/go.mod index 3905d3c8..fa0c3275 100644 --- a/examples/circuitbreaker/instance/provider/go.mod +++ b/examples/circuitbreaker/instance/provider/go.mod @@ -17,7 +17,7 @@ require ( github.com/modern-go/reflect2 v1.0.2 // indirect github.com/natefinch/lumberjack v2.0.0+incompatible // indirect github.com/pkg/errors v0.9.1 // indirect - github.com/polarismesh/specification v1.4.1 // indirect + github.com/polarismesh/specification v1.5.5-alpha.1 // indirect github.com/prometheus/client_golang v1.12.2 // indirect github.com/prometheus/client_model v0.2.0 // indirect github.com/prometheus/common v0.32.1 // indirect diff --git a/examples/circuitbreaker/instance/provider/go.sum b/examples/circuitbreaker/instance/provider/go.sum index d93306f5..7400bc33 100644 --- a/examples/circuitbreaker/instance/provider/go.sum +++ b/examples/circuitbreaker/instance/provider/go.sum @@ -374,6 +374,7 @@ github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZb github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/polarismesh/specification v1.4.1 h1:lTZqeyUhhWuKyr6NDKBwmUrNfcUDvKLxWT/uOq71T5A= github.com/polarismesh/specification v1.4.1/go.mod h1:rDvMMtl5qebPmqiBLNa5Ps0XtwkP31ZLirbH4kXA0YU= +github.com/polarismesh/specification v1.5.5-alpha.1/go.mod h1:rDvMMtl5qebPmqiBLNa5Ps0XtwkP31ZLirbH4kXA0YU= github.com/prometheus/client_golang v0.9.1/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw= github.com/prometheus/client_golang v1.0.0/go.mod h1:db9x61etRT2tGnBNRi70OPL5FsnadC4Ky3P0J6CfImo= github.com/prometheus/client_golang v1.7.1/go.mod h1:PY5Wy2awLA44sXw4AOSfFBetzPP4j5+D6mVACh+pe2M= diff --git a/examples/circuitbreaker/interface/consumer/go.mod b/examples/circuitbreaker/interface/consumer/go.mod index e511b117..9e872e20 100644 --- a/examples/circuitbreaker/interface/consumer/go.mod +++ b/examples/circuitbreaker/interface/consumer/go.mod @@ -17,7 +17,7 @@ require ( github.com/modern-go/reflect2 v1.0.2 // indirect github.com/natefinch/lumberjack v2.0.0+incompatible // indirect github.com/pkg/errors v0.9.1 // indirect - github.com/polarismesh/specification v1.4.1 // indirect + github.com/polarismesh/specification v1.5.5-alpha.1 // indirect github.com/prometheus/client_golang v1.12.2 // indirect github.com/prometheus/client_model v0.2.0 // indirect github.com/prometheus/common v0.32.1 // indirect diff --git a/examples/circuitbreaker/interface/consumer/go.sum b/examples/circuitbreaker/interface/consumer/go.sum index 0a144418..cf81b4de 100644 --- a/examples/circuitbreaker/interface/consumer/go.sum +++ b/examples/circuitbreaker/interface/consumer/go.sum @@ -377,6 +377,7 @@ github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZb github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/polarismesh/specification v1.4.1 h1:lTZqeyUhhWuKyr6NDKBwmUrNfcUDvKLxWT/uOq71T5A= github.com/polarismesh/specification v1.4.1/go.mod h1:rDvMMtl5qebPmqiBLNa5Ps0XtwkP31ZLirbH4kXA0YU= +github.com/polarismesh/specification v1.5.5-alpha.1/go.mod h1:rDvMMtl5qebPmqiBLNa5Ps0XtwkP31ZLirbH4kXA0YU= github.com/prometheus/client_golang v0.9.1/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw= github.com/prometheus/client_golang v1.0.0/go.mod h1:db9x61etRT2tGnBNRi70OPL5FsnadC4Ky3P0J6CfImo= github.com/prometheus/client_golang v1.7.1/go.mod h1:PY5Wy2awLA44sXw4AOSfFBetzPP4j5+D6mVACh+pe2M= diff --git a/examples/circuitbreaker/interface/provider/go.mod b/examples/circuitbreaker/interface/provider/go.mod index 3905d3c8..fa0c3275 100644 --- a/examples/circuitbreaker/interface/provider/go.mod +++ b/examples/circuitbreaker/interface/provider/go.mod @@ -17,7 +17,7 @@ require ( github.com/modern-go/reflect2 v1.0.2 // indirect github.com/natefinch/lumberjack v2.0.0+incompatible // indirect github.com/pkg/errors v0.9.1 // indirect - github.com/polarismesh/specification v1.4.1 // indirect + github.com/polarismesh/specification v1.5.5-alpha.1 // indirect github.com/prometheus/client_golang v1.12.2 // indirect github.com/prometheus/client_model v0.2.0 // indirect github.com/prometheus/common v0.32.1 // indirect diff --git a/examples/circuitbreaker/interface/provider/go.sum b/examples/circuitbreaker/interface/provider/go.sum index 0a144418..cf81b4de 100644 --- a/examples/circuitbreaker/interface/provider/go.sum +++ b/examples/circuitbreaker/interface/provider/go.sum @@ -377,6 +377,7 @@ github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZb github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/polarismesh/specification v1.4.1 h1:lTZqeyUhhWuKyr6NDKBwmUrNfcUDvKLxWT/uOq71T5A= github.com/polarismesh/specification v1.4.1/go.mod h1:rDvMMtl5qebPmqiBLNa5Ps0XtwkP31ZLirbH4kXA0YU= +github.com/polarismesh/specification v1.5.5-alpha.1/go.mod h1:rDvMMtl5qebPmqiBLNa5Ps0XtwkP31ZLirbH4kXA0YU= github.com/prometheus/client_golang v0.9.1/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw= github.com/prometheus/client_golang v1.0.0/go.mod h1:db9x61etRT2tGnBNRi70OPL5FsnadC4Ky3P0J6CfImo= github.com/prometheus/client_golang v1.7.1/go.mod h1:PY5Wy2awLA44sXw4AOSfFBetzPP4j5+D6mVACh+pe2M= diff --git a/examples/configuration/crud/go.mod b/examples/configuration/crud/go.mod index 0d842591..66ac578e 100644 --- a/examples/configuration/crud/go.mod +++ b/examples/configuration/crud/go.mod @@ -17,7 +17,7 @@ require ( github.com/modern-go/reflect2 v1.0.2 // indirect github.com/natefinch/lumberjack v2.0.0+incompatible // indirect github.com/pkg/errors v0.9.1 // indirect - github.com/polarismesh/specification v1.4.1 // indirect + github.com/polarismesh/specification v1.5.5-alpha.1 // indirect github.com/prometheus/client_golang v1.12.2 // indirect github.com/prometheus/client_model v0.2.0 // indirect github.com/prometheus/common v0.32.1 // indirect diff --git a/examples/configuration/crud/go.sum b/examples/configuration/crud/go.sum index ef33672a..68d8825a 100644 --- a/examples/configuration/crud/go.sum +++ b/examples/configuration/crud/go.sum @@ -371,6 +371,7 @@ github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZb github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/polarismesh/specification v1.4.1 h1:lTZqeyUhhWuKyr6NDKBwmUrNfcUDvKLxWT/uOq71T5A= github.com/polarismesh/specification v1.4.1/go.mod h1:rDvMMtl5qebPmqiBLNa5Ps0XtwkP31ZLirbH4kXA0YU= +github.com/polarismesh/specification v1.5.5-alpha.1/go.mod h1:rDvMMtl5qebPmqiBLNa5Ps0XtwkP31ZLirbH4kXA0YU= github.com/prometheus/client_golang v0.9.1/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw= github.com/prometheus/client_golang v1.0.0/go.mod h1:db9x61etRT2tGnBNRi70OPL5FsnadC4Ky3P0J6CfImo= github.com/prometheus/client_golang v1.7.1/go.mod h1:PY5Wy2awLA44sXw4AOSfFBetzPP4j5+D6mVACh+pe2M= diff --git a/examples/configuration/encrypt/go.mod b/examples/configuration/encrypt/go.mod index 1f119279..5846de4f 100644 --- a/examples/configuration/encrypt/go.mod +++ b/examples/configuration/encrypt/go.mod @@ -17,7 +17,7 @@ require ( github.com/modern-go/reflect2 v1.0.2 // indirect github.com/natefinch/lumberjack v2.0.0+incompatible // indirect github.com/pkg/errors v0.9.1 // indirect - github.com/polarismesh/specification v1.4.1 // indirect + github.com/polarismesh/specification v1.5.5-alpha.1 // indirect github.com/prometheus/client_golang v1.12.2 // indirect github.com/prometheus/client_model v0.2.0 // indirect github.com/prometheus/common v0.32.1 // indirect diff --git a/examples/configuration/encrypt/go.sum b/examples/configuration/encrypt/go.sum index 2a18abaf..f303fbbb 100644 --- a/examples/configuration/encrypt/go.sum +++ b/examples/configuration/encrypt/go.sum @@ -378,6 +378,7 @@ github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZN github.com/polarismesh/specification v1.4.0 h1:fm7sUtFZC2g9+lLmRCtjGrUow47CY5JDFoZXwwCQGGY= github.com/polarismesh/specification v1.4.0/go.mod h1:rDvMMtl5qebPmqiBLNa5Ps0XtwkP31ZLirbH4kXA0YU= github.com/polarismesh/specification v1.4.1/go.mod h1:rDvMMtl5qebPmqiBLNa5Ps0XtwkP31ZLirbH4kXA0YU= +github.com/polarismesh/specification v1.5.5-alpha.1/go.mod h1:rDvMMtl5qebPmqiBLNa5Ps0XtwkP31ZLirbH4kXA0YU= github.com/prometheus/client_golang v0.9.1/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw= github.com/prometheus/client_golang v1.0.0/go.mod h1:db9x61etRT2tGnBNRi70OPL5FsnadC4Ky3P0J6CfImo= github.com/prometheus/client_golang v1.7.1/go.mod h1:PY5Wy2awLA44sXw4AOSfFBetzPP4j5+D6mVACh+pe2M= diff --git a/examples/configuration/fallback/go.mod b/examples/configuration/fallback/go.mod index 1f119279..5846de4f 100644 --- a/examples/configuration/fallback/go.mod +++ b/examples/configuration/fallback/go.mod @@ -17,7 +17,7 @@ require ( github.com/modern-go/reflect2 v1.0.2 // indirect github.com/natefinch/lumberjack v2.0.0+incompatible // indirect github.com/pkg/errors v0.9.1 // indirect - github.com/polarismesh/specification v1.4.1 // indirect + github.com/polarismesh/specification v1.5.5-alpha.1 // indirect github.com/prometheus/client_golang v1.12.2 // indirect github.com/prometheus/client_model v0.2.0 // indirect github.com/prometheus/common v0.32.1 // indirect diff --git a/examples/configuration/fallback/go.sum b/examples/configuration/fallback/go.sum index 0a144418..cf81b4de 100644 --- a/examples/configuration/fallback/go.sum +++ b/examples/configuration/fallback/go.sum @@ -377,6 +377,7 @@ github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZb github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/polarismesh/specification v1.4.1 h1:lTZqeyUhhWuKyr6NDKBwmUrNfcUDvKLxWT/uOq71T5A= github.com/polarismesh/specification v1.4.1/go.mod h1:rDvMMtl5qebPmqiBLNa5Ps0XtwkP31ZLirbH4kXA0YU= +github.com/polarismesh/specification v1.5.5-alpha.1/go.mod h1:rDvMMtl5qebPmqiBLNa5Ps0XtwkP31ZLirbH4kXA0YU= github.com/prometheus/client_golang v0.9.1/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw= github.com/prometheus/client_golang v1.0.0/go.mod h1:db9x61etRT2tGnBNRi70OPL5FsnadC4Ky3P0J6CfImo= github.com/prometheus/client_golang v1.7.1/go.mod h1:PY5Wy2awLA44sXw4AOSfFBetzPP4j5+D6mVACh+pe2M= diff --git a/examples/configuration/group/go.mod b/examples/configuration/group/go.mod index 1f119279..5846de4f 100644 --- a/examples/configuration/group/go.mod +++ b/examples/configuration/group/go.mod @@ -17,7 +17,7 @@ require ( github.com/modern-go/reflect2 v1.0.2 // indirect github.com/natefinch/lumberjack v2.0.0+incompatible // indirect github.com/pkg/errors v0.9.1 // indirect - github.com/polarismesh/specification v1.4.1 // indirect + github.com/polarismesh/specification v1.5.5-alpha.1 // indirect github.com/prometheus/client_golang v1.12.2 // indirect github.com/prometheus/client_model v0.2.0 // indirect github.com/prometheus/common v0.32.1 // indirect diff --git a/examples/configuration/group/go.sum b/examples/configuration/group/go.sum index 0a144418..cf81b4de 100644 --- a/examples/configuration/group/go.sum +++ b/examples/configuration/group/go.sum @@ -377,6 +377,7 @@ github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZb github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/polarismesh/specification v1.4.1 h1:lTZqeyUhhWuKyr6NDKBwmUrNfcUDvKLxWT/uOq71T5A= github.com/polarismesh/specification v1.4.1/go.mod h1:rDvMMtl5qebPmqiBLNa5Ps0XtwkP31ZLirbH4kXA0YU= +github.com/polarismesh/specification v1.5.5-alpha.1/go.mod h1:rDvMMtl5qebPmqiBLNa5Ps0XtwkP31ZLirbH4kXA0YU= github.com/prometheus/client_golang v0.9.1/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw= github.com/prometheus/client_golang v1.0.0/go.mod h1:db9x61etRT2tGnBNRi70OPL5FsnadC4Ky3P0J6CfImo= github.com/prometheus/client_golang v1.7.1/go.mod h1:PY5Wy2awLA44sXw4AOSfFBetzPP4j5+D6mVACh+pe2M= diff --git a/examples/configuration/normal/go.mod b/examples/configuration/normal/go.mod index 1f119279..5846de4f 100644 --- a/examples/configuration/normal/go.mod +++ b/examples/configuration/normal/go.mod @@ -17,7 +17,7 @@ require ( github.com/modern-go/reflect2 v1.0.2 // indirect github.com/natefinch/lumberjack v2.0.0+incompatible // indirect github.com/pkg/errors v0.9.1 // indirect - github.com/polarismesh/specification v1.4.1 // indirect + github.com/polarismesh/specification v1.5.5-alpha.1 // indirect github.com/prometheus/client_golang v1.12.2 // indirect github.com/prometheus/client_model v0.2.0 // indirect github.com/prometheus/common v0.32.1 // indirect diff --git a/examples/configuration/normal/go.sum b/examples/configuration/normal/go.sum index d93306f5..7400bc33 100644 --- a/examples/configuration/normal/go.sum +++ b/examples/configuration/normal/go.sum @@ -374,6 +374,7 @@ github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZb github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/polarismesh/specification v1.4.1 h1:lTZqeyUhhWuKyr6NDKBwmUrNfcUDvKLxWT/uOq71T5A= github.com/polarismesh/specification v1.4.1/go.mod h1:rDvMMtl5qebPmqiBLNa5Ps0XtwkP31ZLirbH4kXA0YU= +github.com/polarismesh/specification v1.5.5-alpha.1/go.mod h1:rDvMMtl5qebPmqiBLNa5Ps0XtwkP31ZLirbH4kXA0YU= github.com/prometheus/client_golang v0.9.1/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw= github.com/prometheus/client_golang v1.0.0/go.mod h1:db9x61etRT2tGnBNRi70OPL5FsnadC4Ky3P0J6CfImo= github.com/prometheus/client_golang v1.7.1/go.mod h1:PY5Wy2awLA44sXw4AOSfFBetzPP4j5+D6mVACh+pe2M= diff --git a/examples/mock/go.mod b/examples/mock/go.mod index c7ed0059..75459f53 100644 --- a/examples/mock/go.mod +++ b/examples/mock/go.mod @@ -17,7 +17,7 @@ require ( github.com/modern-go/reflect2 v1.0.2 // indirect github.com/natefinch/lumberjack v2.0.0+incompatible // indirect github.com/pkg/errors v0.9.1 // indirect - github.com/polarismesh/specification v1.4.1 // indirect + github.com/polarismesh/specification v1.5.5-alpha.1 // indirect github.com/prometheus/client_golang v1.12.2 // indirect github.com/prometheus/client_model v0.2.0 // indirect github.com/prometheus/common v0.32.1 // indirect diff --git a/examples/mock/go.sum b/examples/mock/go.sum index d93306f5..7400bc33 100644 --- a/examples/mock/go.sum +++ b/examples/mock/go.sum @@ -374,6 +374,7 @@ github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZb github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/polarismesh/specification v1.4.1 h1:lTZqeyUhhWuKyr6NDKBwmUrNfcUDvKLxWT/uOq71T5A= github.com/polarismesh/specification v1.4.1/go.mod h1:rDvMMtl5qebPmqiBLNa5Ps0XtwkP31ZLirbH4kXA0YU= +github.com/polarismesh/specification v1.5.5-alpha.1/go.mod h1:rDvMMtl5qebPmqiBLNa5Ps0XtwkP31ZLirbH4kXA0YU= github.com/prometheus/client_golang v0.9.1/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw= github.com/prometheus/client_golang v1.0.0/go.mod h1:db9x61etRT2tGnBNRi70OPL5FsnadC4Ky3P0J6CfImo= github.com/prometheus/client_golang v1.7.1/go.mod h1:PY5Wy2awLA44sXw4AOSfFBetzPP4j5+D6mVACh+pe2M= diff --git a/examples/quickstart/consumer/go.mod b/examples/quickstart/consumer/go.mod index 91f78fac..f7c61cf3 100644 --- a/examples/quickstart/consumer/go.mod +++ b/examples/quickstart/consumer/go.mod @@ -17,7 +17,7 @@ require ( github.com/modern-go/reflect2 v1.0.2 // indirect github.com/natefinch/lumberjack v2.0.0+incompatible // indirect github.com/pkg/errors v0.9.1 // indirect - github.com/polarismesh/specification v1.4.1 // indirect + github.com/polarismesh/specification v1.5.5-alpha.1 // indirect github.com/prometheus/client_golang v1.12.2 // indirect github.com/prometheus/client_model v0.2.0 // indirect github.com/prometheus/common v0.32.1 // indirect diff --git a/examples/quickstart/consumer/go.sum b/examples/quickstart/consumer/go.sum index d93306f5..7400bc33 100644 --- a/examples/quickstart/consumer/go.sum +++ b/examples/quickstart/consumer/go.sum @@ -374,6 +374,7 @@ github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZb github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/polarismesh/specification v1.4.1 h1:lTZqeyUhhWuKyr6NDKBwmUrNfcUDvKLxWT/uOq71T5A= github.com/polarismesh/specification v1.4.1/go.mod h1:rDvMMtl5qebPmqiBLNa5Ps0XtwkP31ZLirbH4kXA0YU= +github.com/polarismesh/specification v1.5.5-alpha.1/go.mod h1:rDvMMtl5qebPmqiBLNa5Ps0XtwkP31ZLirbH4kXA0YU= github.com/prometheus/client_golang v0.9.1/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw= github.com/prometheus/client_golang v1.0.0/go.mod h1:db9x61etRT2tGnBNRi70OPL5FsnadC4Ky3P0J6CfImo= github.com/prometheus/client_golang v1.7.1/go.mod h1:PY5Wy2awLA44sXw4AOSfFBetzPP4j5+D6mVACh+pe2M= diff --git a/examples/quickstart/provider/go.mod b/examples/quickstart/provider/go.mod index 4c23a466..15e727ba 100644 --- a/examples/quickstart/provider/go.mod +++ b/examples/quickstart/provider/go.mod @@ -17,7 +17,7 @@ require ( github.com/modern-go/reflect2 v1.0.2 // indirect github.com/natefinch/lumberjack v2.0.0+incompatible // indirect github.com/pkg/errors v0.9.1 // indirect - github.com/polarismesh/specification v1.4.1 // indirect + github.com/polarismesh/specification v1.5.5-alpha.1 // indirect github.com/prometheus/client_golang v1.12.2 // indirect github.com/prometheus/client_model v0.2.0 // indirect github.com/prometheus/common v0.32.1 // indirect diff --git a/examples/quickstart/provider/go.sum b/examples/quickstart/provider/go.sum index d93306f5..7400bc33 100644 --- a/examples/quickstart/provider/go.sum +++ b/examples/quickstart/provider/go.sum @@ -374,6 +374,7 @@ github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZb github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/polarismesh/specification v1.4.1 h1:lTZqeyUhhWuKyr6NDKBwmUrNfcUDvKLxWT/uOq71T5A= github.com/polarismesh/specification v1.4.1/go.mod h1:rDvMMtl5qebPmqiBLNa5Ps0XtwkP31ZLirbH4kXA0YU= +github.com/polarismesh/specification v1.5.5-alpha.1/go.mod h1:rDvMMtl5qebPmqiBLNa5Ps0XtwkP31ZLirbH4kXA0YU= github.com/prometheus/client_golang v0.9.1/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw= github.com/prometheus/client_golang v1.0.0/go.mod h1:db9x61etRT2tGnBNRi70OPL5FsnadC4Ky3P0J6CfImo= github.com/prometheus/client_golang v1.7.1/go.mod h1:PY5Wy2awLA44sXw4AOSfFBetzPP4j5+D6mVACh+pe2M= diff --git a/examples/ratelimit/consumer/go.mod b/examples/ratelimit/consumer/go.mod index 681f4aa5..7c2fa50e 100644 --- a/examples/ratelimit/consumer/go.mod +++ b/examples/ratelimit/consumer/go.mod @@ -17,7 +17,7 @@ require ( github.com/modern-go/reflect2 v1.0.2 // indirect github.com/natefinch/lumberjack v2.0.0+incompatible // indirect github.com/pkg/errors v0.9.1 // indirect - github.com/polarismesh/specification v1.4.1 // indirect + github.com/polarismesh/specification v1.5.5-alpha.1 // indirect github.com/prometheus/client_golang v1.12.2 // indirect github.com/prometheus/client_model v0.2.0 // indirect github.com/prometheus/common v0.32.1 // indirect diff --git a/examples/ratelimit/consumer/go.sum b/examples/ratelimit/consumer/go.sum index d93306f5..7400bc33 100644 --- a/examples/ratelimit/consumer/go.sum +++ b/examples/ratelimit/consumer/go.sum @@ -374,6 +374,7 @@ github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZb github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/polarismesh/specification v1.4.1 h1:lTZqeyUhhWuKyr6NDKBwmUrNfcUDvKLxWT/uOq71T5A= github.com/polarismesh/specification v1.4.1/go.mod h1:rDvMMtl5qebPmqiBLNa5Ps0XtwkP31ZLirbH4kXA0YU= +github.com/polarismesh/specification v1.5.5-alpha.1/go.mod h1:rDvMMtl5qebPmqiBLNa5Ps0XtwkP31ZLirbH4kXA0YU= github.com/prometheus/client_golang v0.9.1/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw= github.com/prometheus/client_golang v1.0.0/go.mod h1:db9x61etRT2tGnBNRi70OPL5FsnadC4Ky3P0J6CfImo= github.com/prometheus/client_golang v1.7.1/go.mod h1:PY5Wy2awLA44sXw4AOSfFBetzPP4j5+D6mVACh+pe2M= diff --git a/examples/ratelimit/provider/go.mod b/examples/ratelimit/provider/go.mod index ae31e1f1..a4a90892 100644 --- a/examples/ratelimit/provider/go.mod +++ b/examples/ratelimit/provider/go.mod @@ -17,7 +17,7 @@ require ( github.com/modern-go/reflect2 v1.0.2 // indirect github.com/natefinch/lumberjack v2.0.0+incompatible // indirect github.com/pkg/errors v0.9.1 // indirect - github.com/polarismesh/specification v1.4.1 // indirect + github.com/polarismesh/specification v1.5.5-alpha.1 // indirect github.com/prometheus/client_golang v1.12.2 // indirect github.com/prometheus/client_model v0.2.0 // indirect github.com/prometheus/common v0.32.1 // indirect diff --git a/examples/ratelimit/provider/go.sum b/examples/ratelimit/provider/go.sum index d93306f5..7400bc33 100644 --- a/examples/ratelimit/provider/go.sum +++ b/examples/ratelimit/provider/go.sum @@ -374,6 +374,7 @@ github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZb github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/polarismesh/specification v1.4.1 h1:lTZqeyUhhWuKyr6NDKBwmUrNfcUDvKLxWT/uOq71T5A= github.com/polarismesh/specification v1.4.1/go.mod h1:rDvMMtl5qebPmqiBLNa5Ps0XtwkP31ZLirbH4kXA0YU= +github.com/polarismesh/specification v1.5.5-alpha.1/go.mod h1:rDvMMtl5qebPmqiBLNa5Ps0XtwkP31ZLirbH4kXA0YU= github.com/prometheus/client_golang v0.9.1/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw= github.com/prometheus/client_golang v1.0.0/go.mod h1:db9x61etRT2tGnBNRi70OPL5FsnadC4Ky3P0J6CfImo= github.com/prometheus/client_golang v1.7.1/go.mod h1:PY5Wy2awLA44sXw4AOSfFBetzPP4j5+D6mVACh+pe2M= diff --git a/examples/route/dynamic/consumer/go.mod b/examples/route/dynamic/consumer/go.mod index cf4bca32..9651890e 100644 --- a/examples/route/dynamic/consumer/go.mod +++ b/examples/route/dynamic/consumer/go.mod @@ -17,7 +17,7 @@ require ( github.com/modern-go/reflect2 v1.0.2 // indirect github.com/natefinch/lumberjack v2.0.0+incompatible // indirect github.com/pkg/errors v0.9.1 // indirect - github.com/polarismesh/specification v1.4.1 // indirect + github.com/polarismesh/specification v1.5.5-alpha.1 // indirect github.com/prometheus/client_golang v1.12.2 // indirect github.com/prometheus/client_model v0.2.0 // indirect github.com/prometheus/common v0.32.1 // indirect diff --git a/examples/route/dynamic/consumer/go.sum b/examples/route/dynamic/consumer/go.sum index d93306f5..7400bc33 100644 --- a/examples/route/dynamic/consumer/go.sum +++ b/examples/route/dynamic/consumer/go.sum @@ -374,6 +374,7 @@ github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZb github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/polarismesh/specification v1.4.1 h1:lTZqeyUhhWuKyr6NDKBwmUrNfcUDvKLxWT/uOq71T5A= github.com/polarismesh/specification v1.4.1/go.mod h1:rDvMMtl5qebPmqiBLNa5Ps0XtwkP31ZLirbH4kXA0YU= +github.com/polarismesh/specification v1.5.5-alpha.1/go.mod h1:rDvMMtl5qebPmqiBLNa5Ps0XtwkP31ZLirbH4kXA0YU= github.com/prometheus/client_golang v0.9.1/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw= github.com/prometheus/client_golang v1.0.0/go.mod h1:db9x61etRT2tGnBNRi70OPL5FsnadC4Ky3P0J6CfImo= github.com/prometheus/client_golang v1.7.1/go.mod h1:PY5Wy2awLA44sXw4AOSfFBetzPP4j5+D6mVACh+pe2M= diff --git a/examples/route/dynamic/provider/go.mod b/examples/route/dynamic/provider/go.mod index afb785c0..2631f53d 100644 --- a/examples/route/dynamic/provider/go.mod +++ b/examples/route/dynamic/provider/go.mod @@ -17,7 +17,7 @@ require ( github.com/modern-go/reflect2 v1.0.2 // indirect github.com/natefinch/lumberjack v2.0.0+incompatible // indirect github.com/pkg/errors v0.9.1 // indirect - github.com/polarismesh/specification v1.4.1 // indirect + github.com/polarismesh/specification v1.5.5-alpha.1 // indirect github.com/prometheus/client_golang v1.12.2 // indirect github.com/prometheus/client_model v0.2.0 // indirect github.com/prometheus/common v0.32.1 // indirect diff --git a/examples/route/dynamic/provider/go.sum b/examples/route/dynamic/provider/go.sum index d93306f5..7400bc33 100644 --- a/examples/route/dynamic/provider/go.sum +++ b/examples/route/dynamic/provider/go.sum @@ -374,6 +374,7 @@ github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZb github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/polarismesh/specification v1.4.1 h1:lTZqeyUhhWuKyr6NDKBwmUrNfcUDvKLxWT/uOq71T5A= github.com/polarismesh/specification v1.4.1/go.mod h1:rDvMMtl5qebPmqiBLNa5Ps0XtwkP31ZLirbH4kXA0YU= +github.com/polarismesh/specification v1.5.5-alpha.1/go.mod h1:rDvMMtl5qebPmqiBLNa5Ps0XtwkP31ZLirbH4kXA0YU= github.com/prometheus/client_golang v0.9.1/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw= github.com/prometheus/client_golang v1.0.0/go.mod h1:db9x61etRT2tGnBNRi70OPL5FsnadC4Ky3P0J6CfImo= github.com/prometheus/client_golang v1.7.1/go.mod h1:PY5Wy2awLA44sXw4AOSfFBetzPP4j5+D6mVACh+pe2M= diff --git a/examples/route/nearby/consumer/go.mod b/examples/route/nearby/consumer/go.mod index a1d24e1d..8dceff44 100644 --- a/examples/route/nearby/consumer/go.mod +++ b/examples/route/nearby/consumer/go.mod @@ -19,7 +19,7 @@ require ( github.com/modern-go/reflect2 v1.0.2 // indirect github.com/natefinch/lumberjack v2.0.0+incompatible // indirect github.com/pkg/errors v0.9.1 // indirect - github.com/polarismesh/specification v1.4.1 // indirect + github.com/polarismesh/specification v1.5.5-alpha.1 // indirect github.com/prometheus/client_golang v1.12.2 // indirect github.com/prometheus/client_model v0.2.0 // indirect github.com/prometheus/common v0.32.1 // indirect diff --git a/examples/route/nearby/consumer/go.sum b/examples/route/nearby/consumer/go.sum index d93306f5..7400bc33 100644 --- a/examples/route/nearby/consumer/go.sum +++ b/examples/route/nearby/consumer/go.sum @@ -374,6 +374,7 @@ github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZb github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/polarismesh/specification v1.4.1 h1:lTZqeyUhhWuKyr6NDKBwmUrNfcUDvKLxWT/uOq71T5A= github.com/polarismesh/specification v1.4.1/go.mod h1:rDvMMtl5qebPmqiBLNa5Ps0XtwkP31ZLirbH4kXA0YU= +github.com/polarismesh/specification v1.5.5-alpha.1/go.mod h1:rDvMMtl5qebPmqiBLNa5Ps0XtwkP31ZLirbH4kXA0YU= github.com/prometheus/client_golang v0.9.1/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw= github.com/prometheus/client_golang v1.0.0/go.mod h1:db9x61etRT2tGnBNRi70OPL5FsnadC4Ky3P0J6CfImo= github.com/prometheus/client_golang v1.7.1/go.mod h1:PY5Wy2awLA44sXw4AOSfFBetzPP4j5+D6mVACh+pe2M= diff --git a/examples/route/nearby/provider/go.mod b/examples/route/nearby/provider/go.mod index 83408ebb..5ddf1c18 100644 --- a/examples/route/nearby/provider/go.mod +++ b/examples/route/nearby/provider/go.mod @@ -17,7 +17,7 @@ require ( github.com/modern-go/reflect2 v1.0.2 // indirect github.com/natefinch/lumberjack v2.0.0+incompatible // indirect github.com/pkg/errors v0.9.1 // indirect - github.com/polarismesh/specification v1.4.1 // indirect + github.com/polarismesh/specification v1.5.5-alpha.1 // indirect github.com/prometheus/client_golang v1.12.2 // indirect github.com/prometheus/client_model v0.2.0 // indirect github.com/prometheus/common v0.32.1 // indirect diff --git a/examples/route/nearby/provider/go.sum b/examples/route/nearby/provider/go.sum index d93306f5..7400bc33 100644 --- a/examples/route/nearby/provider/go.sum +++ b/examples/route/nearby/provider/go.sum @@ -374,6 +374,7 @@ github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZb github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= github.com/polarismesh/specification v1.4.1 h1:lTZqeyUhhWuKyr6NDKBwmUrNfcUDvKLxWT/uOq71T5A= github.com/polarismesh/specification v1.4.1/go.mod h1:rDvMMtl5qebPmqiBLNa5Ps0XtwkP31ZLirbH4kXA0YU= +github.com/polarismesh/specification v1.5.5-alpha.1/go.mod h1:rDvMMtl5qebPmqiBLNa5Ps0XtwkP31ZLirbH4kXA0YU= github.com/prometheus/client_golang v0.9.1/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw= github.com/prometheus/client_golang v1.0.0/go.mod h1:db9x61etRT2tGnBNRi70OPL5FsnadC4Ky3P0J6CfImo= github.com/prometheus/client_golang v1.7.1/go.mod h1:PY5Wy2awLA44sXw4AOSfFBetzPP4j5+D6mVACh+pe2M= diff --git a/examples/watchinstance/go.mod b/examples/watchinstance/go.mod index db10fd28..01b968bc 100644 --- a/examples/watchinstance/go.mod +++ b/examples/watchinstance/go.mod @@ -19,7 +19,7 @@ require ( github.com/modern-go/reflect2 v1.0.2 // indirect github.com/natefinch/lumberjack v2.0.0+incompatible // indirect github.com/pkg/errors v0.9.1 // indirect - github.com/polarismesh/specification v1.4.1 // indirect + github.com/polarismesh/specification v1.5.5-alpha.1 // indirect github.com/prometheus/client_golang v1.12.2 // indirect github.com/prometheus/client_model v0.2.0 // indirect github.com/prometheus/common v0.32.1 // indirect diff --git a/examples/watchinstance/go.sum b/examples/watchinstance/go.sum index 48997cc2..edeff98a 100644 --- a/examples/watchinstance/go.sum +++ b/examples/watchinstance/go.sum @@ -378,6 +378,7 @@ github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZN github.com/polarismesh/specification v1.3.2-alpha.2 h1:cMghyvCnRVM5ca2kYCGHOgIIxVnokiMvw0720q8a8RA= github.com/polarismesh/specification v1.3.2-alpha.2/go.mod h1:rDvMMtl5qebPmqiBLNa5Ps0XtwkP31ZLirbH4kXA0YU= github.com/polarismesh/specification v1.4.1/go.mod h1:rDvMMtl5qebPmqiBLNa5Ps0XtwkP31ZLirbH4kXA0YU= +github.com/polarismesh/specification v1.5.5-alpha.1/go.mod h1:rDvMMtl5qebPmqiBLNa5Ps0XtwkP31ZLirbH4kXA0YU= github.com/prometheus/client_golang v0.9.1/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw= github.com/prometheus/client_golang v1.0.0/go.mod h1:db9x61etRT2tGnBNRi70OPL5FsnadC4Ky3P0J6CfImo= github.com/prometheus/client_golang v1.7.1/go.mod h1:PY5Wy2awLA44sXw4AOSfFBetzPP4j5+D6mVACh+pe2M= diff --git a/go.mod b/go.mod index 60242425..48736517 100644 --- a/go.mod +++ b/go.mod @@ -19,7 +19,7 @@ require ( github.com/modern-go/reflect2 v1.0.2 github.com/natefinch/lumberjack v2.0.0+incompatible github.com/pkg/errors v0.9.1 - github.com/polarismesh/specification v1.4.1 + github.com/polarismesh/specification v1.5.5-alpha.1 github.com/prometheus/client_golang v1.12.2 github.com/smartystreets/goconvey v1.7.2 github.com/spaolacci/murmur3 v1.1.0 diff --git a/go.sum b/go.sum index 0524add4..0f13c47d 100644 --- a/go.sum +++ b/go.sum @@ -380,8 +380,8 @@ github.com/pkg/errors v0.9.1 h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4= github.com/pkg/errors v0.9.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM= github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= -github.com/polarismesh/specification v1.4.1 h1:lTZqeyUhhWuKyr6NDKBwmUrNfcUDvKLxWT/uOq71T5A= -github.com/polarismesh/specification v1.4.1/go.mod h1:rDvMMtl5qebPmqiBLNa5Ps0XtwkP31ZLirbH4kXA0YU= +github.com/polarismesh/specification v1.5.5-alpha.1 h1:lGLaj+I6iD25F0FuQnR83sR+1SJ8KqykS0vCnGx2ZAQ= +github.com/polarismesh/specification v1.5.5-alpha.1/go.mod h1:rDvMMtl5qebPmqiBLNa5Ps0XtwkP31ZLirbH4kXA0YU= github.com/prometheus/client_golang v0.9.1/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw= github.com/prometheus/client_golang v1.0.0/go.mod h1:db9x61etRT2tGnBNRi70OPL5FsnadC4Ky3P0J6CfImo= github.com/prometheus/client_golang v1.7.1/go.mod h1:PY5Wy2awLA44sXw4AOSfFBetzPP4j5+D6mVACh+pe2M= diff --git a/pkg/flow/configuration/config_flow.go b/pkg/flow/configuration/config_flow.go index 60e21334..9ba79ce3 100644 --- a/pkg/flow/configuration/config_flow.go +++ b/pkg/flow/configuration/config_flow.go @@ -92,6 +92,7 @@ func (c *ConfigFileFlow) GetConfigFile(req *model.GetConfigFileRequest) (model.C Namespace: req.Namespace, FileGroup: req.FileGroup, FileName: req.FileName, + Mode: req.Mode, } cacheKey := genCacheKeyByMetadata(configFileMetadata) diff --git a/pkg/flow/configuration/file_repo.go b/pkg/flow/configuration/file_repo.go index 08940462..0f6ba0e0 100644 --- a/pkg/flow/configuration/file_repo.go +++ b/pkg/flow/configuration/file_repo.go @@ -65,7 +65,7 @@ type ConfigFileRepo struct { } // ConfigFileRepoChangeListener 远程配置文件发布监听器 -type ConfigFileRepoChangeListener func(configFileMetadata model.ConfigFileMetadata, newContent string) error +type ConfigFileRepoChangeListener func(configFileMetadata model.ConfigFileMetadata, newContent string, persistent model.Persistent) error // newConfigFileRepo 创建远程配置文件 func newConfigFileRepo(metadata model.ConfigFileMetadata, @@ -92,6 +92,7 @@ func newConfigFileRepo(metadata model.ConfigFileMetadata, FileGroup: metadata.GetFileGroup(), FileName: metadata.GetFileName(), Version: initVersion, + Mode: metadata.GetFileMode(), }) // 1. 同步从服务端拉取配置 if err := repo.pull(); err != nil { @@ -112,6 +113,12 @@ func (r *ConfigFileRepo) loadRemoteFile() *configconnector.ConfigFile { return val.(*configconnector.ConfigFile) } +// GetPersistent 获取配置文件持久化配置 +func (r *ConfigFileRepo) GetPersistent() model.Persistent { + remoteFile := r.loadRemoteFile() + return remoteFile.GetPersistent() +} + // GetContent 获取配置文件内容 func (r *ConfigFileRepo) GetContent() string { remoteFile := r.loadRemoteFile() @@ -143,6 +150,7 @@ func (r *ConfigFileRepo) pull() error { FileGroup: r.configFileMetadata.GetFileGroup(), FileName: r.configFileMetadata.GetFileName(), Version: r.notifiedVersion, + Mode: r.configFileMetadata.GetFileMode(), Tags: make([]*configconnector.ConfigFileTag, 0, len(r.conf.GetGlobal().GetClient().GetLabels())), } for k, v := range r.conf.GetGlobal().GetClient().GetLabels() { @@ -322,7 +330,7 @@ func (r *ConfigFileRepo) fireChangeEvent(f *configconnector.ConfigFile) { } for _, listener := range r.listeners { - if err := listener(r.configFileMetadata, f.GetContent()); err != nil { + if err := listener(r.configFileMetadata, f.GetContent(), f.Persistent); err != nil { log.GetBaseLogger().Errorf("[Config] invoke config file repo change listener failed.", zap.Any("file", r.configFileMetadata), zap.Error(err)) } diff --git a/pkg/flow/configuration/group_flow.go b/pkg/flow/configuration/group_flow.go index 5915dfa1..d238fff4 100644 --- a/pkg/flow/configuration/group_flow.go +++ b/pkg/flow/configuration/group_flow.go @@ -73,7 +73,7 @@ func (flow *ConfigGroupFlow) GetConfigGroup(namespace, fileGroup string) (model. return configGroup, nil } - groupRepo, err := newConfigGroupRepo(namespace, fileGroup, flow.connector, flow.configuration) + groupRepo, err := newConfigGroupRepo(namespace, fileGroup, model.SDKMode, flow.connector, flow.configuration) if err != nil { return nil, err } @@ -84,6 +84,36 @@ func (flow *ConfigGroupFlow) GetConfigGroup(namespace, fileGroup string) (model. return configGroup, nil } +func (flow *ConfigGroupFlow) GetConfigGroupWithReq(req *model.GetConfigGroupRequest) (model.ConfigFileGroup, error) { + cacheKey := req.Namespace + "@" + req.FileGroup + + flow.fclock.RLock() + configGroup, ok := flow.groupCache[cacheKey] + flow.fclock.RUnlock() + if ok { + return configGroup, nil + } + + flow.fclock.Lock() + defer flow.fclock.Unlock() + + // double check + configGroup, ok = flow.groupCache[cacheKey] + if ok { + return configGroup, nil + } + + groupRepo, err := newConfigGroupRepo(req.Namespace, req.FileGroup, req.Mode, flow.connector, flow.configuration) + if err != nil { + return nil, err + } + flow.repos[cacheKey] = groupRepo + + configGroup = newDefaultConfigGroup(req.Namespace, req.FileGroup, groupRepo) + flow.groupCache[cacheKey] = configGroup + return configGroup, nil +} + // doSync func (flow *ConfigGroupFlow) doSync(ctx context.Context) { ticker := time.NewTicker(2 * time.Second) diff --git a/pkg/flow/configuration/group_repo.go b/pkg/flow/configuration/group_repo.go index b0af29dd..bfaa367a 100644 --- a/pkg/flow/configuration/group_repo.go +++ b/pkg/flow/configuration/group_repo.go @@ -28,6 +28,7 @@ import ( "github.com/polarismesh/polaris-go/pkg/config" "github.com/polarismesh/polaris-go/pkg/log" + "github.com/polarismesh/polaris-go/pkg/model" "github.com/polarismesh/polaris-go/pkg/plugin/configconnector" ) @@ -35,6 +36,7 @@ import ( type ConfigGroupRepo struct { namespace string groupName string + mode model.GetConfigFileRequestMode connector configconnector.ConfigConnector configuration config.Configuration notifiedVersion string @@ -46,11 +48,12 @@ type ConfigGroupRepo struct { listeners []func(*configconnector.ConfigGroupResponse) } -func newConfigGroupRepo(namespace, group string, connector configconnector.ConfigConnector, +func newConfigGroupRepo(namespace, group string, mode model.GetConfigFileRequestMode, connector configconnector.ConfigConnector, configuration config.Configuration) (*ConfigGroupRepo, error) { repo := &ConfigGroupRepo{ namespace: namespace, groupName: group, + mode: mode, connector: connector, configuration: configuration, notifiedVersion: "", @@ -72,6 +75,7 @@ func (repo *ConfigGroupRepo) pull() error { Namespace: repo.namespace, Group: repo.groupName, Revision: repo.notifiedVersion, + Mode: repo.mode, } log.GetBaseLogger().Infof("[Config][Group] start pull. namespace=%+v, group=%s, version=%+v", diff --git a/pkg/flow/configuration/model.go b/pkg/flow/configuration/model.go index 66a8fc8c..fdaea031 100644 --- a/pkg/flow/configuration/model.go +++ b/pkg/flow/configuration/model.go @@ -28,8 +28,9 @@ import ( type defaultConfigFile struct { model.DefaultConfigFileMetadata - fileRepo *ConfigFileRepo - content string + fileRepo *ConfigFileRepo + content string + persistent model.Persistent lock sync.RWMutex changeListeners []func(event model.ConfigFileChangeEvent) @@ -38,8 +39,9 @@ type defaultConfigFile struct { func newDefaultConfigFile(metadata model.ConfigFileMetadata, repo *ConfigFileRepo) *defaultConfigFile { configFile := &defaultConfigFile{ - fileRepo: repo, - content: repo.GetContent(), + fileRepo: repo, + content: repo.GetContent(), + persistent: repo.GetPersistent(), } configFile.Namespace = metadata.GetNamespace() configFile.FileGroup = metadata.GetFileGroup() @@ -66,12 +68,17 @@ func (c *defaultConfigFile) GetContent() string { return c.content } +// GetPersistent 获取配置文件内容 +func (c *defaultConfigFile) GetPersistent() model.Persistent { + return c.persistent +} + // HasContent 是否有配置内容 func (c *defaultConfigFile) HasContent() bool { return c.content != "" && c.content != NotExistedFileContent } -func (c *defaultConfigFile) repoChangeListener(configFileMetadata model.ConfigFileMetadata, newContent string) error { +func (c *defaultConfigFile) repoChangeListener(configFileMetadata model.ConfigFileMetadata, newContent string, persistent model.Persistent) error { oldContent := c.content log.GetBaseLogger().Infof("[Config] update content. file = %+v, old content = %s, new content = %s", @@ -96,6 +103,7 @@ func (c *defaultConfigFile) repoChangeListener(configFileMetadata model.ConfigFi OldValue: c.content, NewValue: newContent, ChangeType: changeType, + Persistent: persistent, } c.content = newContent diff --git a/pkg/flow/sync_flow.go b/pkg/flow/sync_flow.go index d62c2d16..9c9d589b 100644 --- a/pkg/flow/sync_flow.go +++ b/pkg/flow/sync_flow.go @@ -603,6 +603,11 @@ func (e *Engine) SyncGetConfigGroup(namespace, fileGroup string) (model.ConfigFi return e.configFlow.GetConfigGroup(namespace, fileGroup) } +// SyncGetConfigGroupWithReq 同步获取配置文件 +func (e *Engine) SyncGetConfigGroupWithReq(req *model.GetConfigGroupRequest) (model.ConfigFileGroup, error) { + return e.configFlow.GetConfigGroupWithReq(req) +} + // SyncCreateConfigFile 同步创建配置文件 func (e *Engine) SyncCreateConfigFile(namespace, fileGroup, fileName, content string) error { return e.configFlow.CreateConfigFile(namespace, fileGroup, fileName, content) diff --git a/pkg/model/config.go b/pkg/model/config.go index 5faf5392..bcd1bc1f 100644 --- a/pkg/model/config.go +++ b/pkg/model/config.go @@ -49,6 +49,30 @@ type ConfigFileChangeEvent struct { NewValue string // ChangeType 变更类型 ChangeType ChangeType + // 配置文件持久化数据 + Persistent Persistent +} + +// Persistent 配置文件持久化数据 +type Persistent struct { + // 文件保存编码 + Encoding string + // 文件保存路径 + Path string + // 后置脚本 + PostCmd string +} + +func (persistent Persistent) GetEncoding() string { + return persistent.Encoding +} + +func (persistent Persistent) GetPath() string { + return persistent.Path +} + +func (persistent Persistent) GetPostCmd() string { + return persistent.PostCmd } type SimpleConfigFile struct { @@ -74,6 +98,8 @@ type ConfigFileMetadata interface { GetFileGroup() string // GetFileName 获取配置文件值 GetFileName() string + // GetFileMode 获取配置文件mode + GetFileMode() GetConfigFileRequestMode } // ConfigFile 文本类型配置文件对象 @@ -89,6 +115,8 @@ type ConfigFile interface { AddChangeListenerWithChannel() <-chan ConfigFileChangeEvent // AddChangeListener 增加配置文件变更监听器 AddChangeListener(cb OnConfigFileChange) + // GetPersistent 获取文件持久化数据 + GetPersistent() Persistent } // DefaultConfigFileMetadata 默认 ConfigFileMetadata 实现类 @@ -96,6 +124,7 @@ type DefaultConfigFileMetadata struct { Namespace string FileGroup string FileName string + Mode GetConfigFileRequestMode } // GetNamespace 获取 Namespace @@ -113,6 +142,11 @@ func (m *DefaultConfigFileMetadata) GetFileName() string { return m.FileName } +// GetFileMode 获取配置文件值 +func (m *DefaultConfigFileMetadata) GetFileMode() GetConfigFileRequestMode { + return m.Mode +} + type ConfigFileGroup interface { // GetFiles GetFiles() ([]*SimpleConfigFile, string, bool) @@ -120,9 +154,24 @@ type ConfigFileGroup interface { AddChangeListener(cb OnConfigGroupChange) } +type GetConfigFileRequestMode int + +const ( + SDKMode GetConfigFileRequestMode = 0 + AgentMode GetConfigFileRequestMode = 1 +) + type GetConfigFileRequest struct { Namespace string FileGroup string FileName string Subscribe bool + Mode GetConfigFileRequestMode +} + +type GetConfigGroupRequest struct { + Namespace string + FileGroup string + Subscribe bool + Mode GetConfigFileRequestMode } diff --git a/pkg/model/engine.go b/pkg/model/engine.go index ff02f9cf..f45dcc74 100644 --- a/pkg/model/engine.go +++ b/pkg/model/engine.go @@ -112,6 +112,8 @@ type Engine interface { SyncGetConfigFile(req *GetConfigFileRequest) (ConfigFile, error) // SyncGetConfigGroup 同步获取配置文件 SyncGetConfigGroup(namespace, fileGroup string) (ConfigFileGroup, error) + // SyncGetConfigGroupWithReq 同步获取配置文件 + SyncGetConfigGroupWithReq(req *GetConfigGroupRequest) (ConfigFileGroup, error) // SyncCreateConfigFile 同步创建配置文件 SyncCreateConfigFile(namespace, fileGroup, fileName, content string) error // SyncUpdateConfigFile 同步更新配置文件 diff --git a/pkg/plugin/configconnector/config_file.go b/pkg/plugin/configconnector/config_file.go index 905df4fd..791bbcb8 100644 --- a/pkg/plugin/configconnector/config_file.go +++ b/pkg/plugin/configconnector/config_file.go @@ -53,6 +53,10 @@ type ConfigFile struct { content string // 该配置文件是否为不存在的场景下的占位信息 NotExist bool + //mode=0,默认模式,获取SDK使用的配置文件, mode=1,SDK模式,同mode=1,mode=2,Agent模式,获取Agent使用的配置文件 + Mode model.GetConfigFileRequestMode + // 文件持久化配置 + Persistent model.Persistent } func (c *ConfigFile) String() string { @@ -140,6 +144,16 @@ func (c *ConfigFile) GetDataKey() string { return "" } +// GetPersistent 获取文件持久化数据 +func (c *ConfigFile) GetPersistent() model.Persistent { + return c.Persistent +} + +// GetFileMode 获取文件Mode +func (c *ConfigFile) GetFileMode() model.GetConfigFileRequestMode { + return c.Mode +} + // GetEncryptAlgo 获取配置文件数据加密算法 func (c *ConfigFile) GetEncryptAlgo() string { for _, tag := range c.Tags { @@ -154,6 +168,7 @@ type ConfigGroup struct { Namespace string Group string Revision string + Mode model.GetConfigFileRequestMode ReleaseFiles []*model.SimpleConfigFile } @@ -164,5 +179,6 @@ func (c *ConfigGroup) ToSpecQuery() *config_manage.ConfigFileGroupRequest { Name: wrapperspb.String(c.Group), Namespace: wrapperspb.String(c.Namespace), }, + ClientType: config_manage.ConfigClientType(c.Mode), } } diff --git a/plugin/configconnector/polaris/config_connector.go b/plugin/configconnector/polaris/config_connector.go index c77d17c7..f3460e66 100644 --- a/plugin/configconnector/polaris/config_connector.go +++ b/plugin/configconnector/polaris/config_connector.go @@ -401,12 +401,13 @@ func transferToClientConfigFileInfo(configFile *configconnector.ConfigFile) *con }) } return &config_manage.ClientConfigFileInfo{ - Namespace: wrapperspb.String(configFile.Namespace), - Group: wrapperspb.String(configFile.GetFileGroup()), - FileName: wrapperspb.String(configFile.GetFileName()), - Version: wrapperspb.UInt64(configFile.GetVersion()), - PublicKey: wrapperspb.String(configFile.GetPublicKey()), - Tags: tags, + Namespace: wrapperspb.String(configFile.Namespace), + Group: wrapperspb.String(configFile.GetFileGroup()), + FileName: wrapperspb.String(configFile.GetFileName()), + Version: wrapperspb.UInt64(configFile.GetVersion()), + PublicKey: wrapperspb.String(configFile.GetPublicKey()), + Tags: tags, + ClientType: config_manage.ConfigClientType(configFile.GetFileMode()), } } @@ -427,6 +428,11 @@ func transferFromClientConfigFileInfo(configFileInfo *config_manage.ClientConfig Md5: configFileInfo.GetMd5().GetValue(), Encrypted: configFileInfo.GetEncrypted().GetValue(), Tags: tags, + Persistent: model.Persistent{ + Encoding: configFileInfo.GetPersistent().GetEncoding(), + Path: configFileInfo.GetPersistent().GetPath(), + PostCmd: configFileInfo.GetPersistent().GetPostCmd(), + }, } }