本文整理汇总了Golang中github.com/hashicorp/consul-template/dependency.ParseCatalogServices函数的典型用法代码示例。如果您正苦于以下问题:Golang ParseCatalogServices函数的具体用法?Golang ParseCatalogServices怎么用?Golang ParseCatalogServices使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了ParseCatalogServices函数的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Golang代码示例。
示例1: TestServicesFunc_missingData
func TestServicesFunc_missingData(t *testing.T) {
d, err := dep.ParseCatalogServices("@non-existing")
if err != nil {
t.Fatal(err)
}
brain := NewBrain()
used := make(map[string]dep.Dependency)
missing := make(map[string]dep.Dependency)
f := servicesFunc(brain, used, missing)
result, err := f("@non-existing")
if err != nil {
t.Fatal(err)
}
expected := []*dep.CatalogService{}
if !reflect.DeepEqual(result, expected) {
t.Errorf("expected %q to be %q", result, expected)
}
if _, ok := used[d.HashCode()]; !ok {
t.Errorf("expected dep to be used")
}
if _, ok := missing[d.HashCode()]; !ok {
t.Errorf("expected dep to be missing")
}
}
开发者ID:necroscope,项目名称:consul-template,代码行数:30,代码来源:template_functions_test.go
示例2: servicesFunc
// servicesFunc returns or accumulates catalog services dependencies.
func servicesFunc(brain *Brain,
used, missing map[string]dep.Dependency) func(...string) ([]*dep.CatalogService, error) {
return func(s ...string) ([]*dep.CatalogService, error) {
result := make([]*dep.CatalogService, 0)
d, err := dep.ParseCatalogServices(s...)
if err != nil {
return nil, err
}
addDependency(used, d)
if value, ok := brain.Recall(d); ok {
return value.([]*dep.CatalogService), nil
}
addDependency(missing, d)
return result, nil
}
}
开发者ID:hashbrowncipher,项目名称:consul-template,代码行数:22,代码来源:template_functions.go
示例3: TestServicesFunc_hasData
func TestServicesFunc_hasData(t *testing.T) {
d, err := dep.ParseCatalogServices("@existing")
if err != nil {
t.Fatal(err)
}
data := []*dep.CatalogService{
&dep.CatalogService{Name: "a"},
&dep.CatalogService{Name: "b"},
}
brain := NewBrain()
brain.Remember(d, data)
used := make(map[string]dep.Dependency)
missing := make(map[string]dep.Dependency)
f := servicesFunc(brain, used, missing)
result, err := f("@existing")
if err != nil {
t.Fatal(err)
}
expected := data
if !reflect.DeepEqual(result, expected) {
t.Errorf("expected %q to be %q", result, expected)
}
if len(missing) != 0 {
t.Errorf("expected missing to have 0 elements, but had %d", len(missing))
}
if _, ok := used[d.HashCode()]; !ok {
t.Errorf("expected dep to be used")
}
}
开发者ID:necroscope,项目名称:consul-template,代码行数:36,代码来源:template_functions_test.go
示例4: TestExecute_renders
//.........这里部分代码省略.........
})
d, err = dep.ParseHealthServices("webapp")
if err != nil {
t.Fatal(err)
}
brain.Remember(d, []*dep.HealthService{
&dep.HealthService{
Node: "node1",
Address: "1.2.3.4",
Tags: []string{"release"},
},
&dep.HealthService{
Node: "node2",
Address: "5.6.7.8",
Tags: []string{"release", "production"},
},
&dep.HealthService{
Node: "node3",
Address: "9.10.11.12",
Tags: []string{"production"},
},
})
d, err = dep.ParseHealthServices("webapp", "any")
if err != nil {
t.Fatal(err)
}
brain.Remember(d, []*dep.HealthService{
&dep.HealthService{Node: "node1", Address: "1.2.3.4"},
&dep.HealthService{Node: "node2", Address: "5.6.7.8"},
})
d, err = dep.ParseCatalogServices("")
if err != nil {
t.Fatal(err)
}
brain.Remember(d, []*dep.CatalogService{
&dep.CatalogService{
Name: "service1",
Tags: []string{"production"},
},
&dep.CatalogService{
Name: "service2",
Tags: []string{"release", "production"},
},
})
d, err = dep.ParseVaultSecret("secret/foo/bar")
if err != nil {
t.Fatal(err)
}
brain.Remember(d, &dep.Secret{
LeaseID: "abcd1234",
LeaseDuration: 120,
Renewable: true,
Data: map[string]interface{}{"zip": "zap"},
})
if err := os.Setenv("foo", "bar"); err != nil {
t.Fatal(err)
}
d, err = dep.ParseFile("/path/to/json/file")
if err != nil {
t.Fatal(err)
开发者ID:necroscope,项目名称:consul-template,代码行数:67,代码来源:template_test.go
注:本文中的github.com/hashicorp/consul-template/dependency.ParseCatalogServices函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论