本文整理汇总了Golang中github.com/openshift/origin/pkg/cmd/server/api/latest.ReadYAML函数的典型用法代码示例。如果您正苦于以下问题:Golang ReadYAML函数的具体用法?Golang ReadYAML怎么用?Golang ReadYAML使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了ReadYAML函数的11个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Golang代码示例。
示例1: ReadPluginConfig
// ReadPluginConfig will read a plugin configuration object from a reader stream
func ReadPluginConfig(reader io.Reader, config runtime.Object) error {
if reader == nil || reflect.ValueOf(reader).IsNil() {
return nil
}
configBytes, err := ioutil.ReadAll(reader)
if err != nil {
return err
}
err = configlatest.ReadYAML(configBytes, config)
if err != nil {
return err
}
return nil
}
示例2: ReadConfig
func ReadConfig(configFile io.Reader) (*api.ClusterResourceOverrideConfig, error) {
obj, err := configlatest.ReadYAML(configFile)
if err != nil {
glog.V(5).Infof("%s error reading config: %v", api.PluginName, err)
return nil, err
}
if obj == nil {
return nil, nil
}
config, ok := obj.(*api.ClusterResourceOverrideConfig)
if !ok {
return nil, fmt.Errorf("unexpected config object: %#v", obj)
}
glog.V(5).Infof("%s config is: %v", api.PluginName, config)
return config, nil
}
示例3: readConfig
func readConfig(reader io.Reader) (*api.PodNodeConstraintsConfig, error) {
if reader == nil || reflect.ValueOf(reader).IsNil() {
return nil, nil
}
obj, err := configlatest.ReadYAML(reader)
if err != nil {
return nil, err
}
if obj == nil {
return nil, nil
}
config, ok := obj.(*api.PodNodeConstraintsConfig)
if !ok {
return nil, fmt.Errorf("unexpected config object: %#v", obj)
}
// No validation needed since config is just list of strings
return config, nil
}
示例4: readConfig
func readConfig(reader io.Reader) (*requestlimitapi.ProjectRequestLimitConfig, error) {
obj, err := configlatest.ReadYAML(reader)
if err != nil {
return nil, err
}
if obj == nil {
return nil, nil
}
config, ok := obj.(*requestlimitapi.ProjectRequestLimitConfig)
if !ok {
return nil, fmt.Errorf("unexpected config object: %#v", obj)
}
errs := requestlimitapivalidation.ValidateProjectRequestLimitConfig(config)
if len(errs) > 0 {
return nil, errs.ToAggregate()
}
return config, nil
}
示例5: readConfig
func readConfig(reader io.Reader) (*api.RunOnceDurationConfig, error) {
obj, err := configlatest.ReadYAML(reader)
if err != nil {
return nil, err
}
if obj == nil {
return nil, nil
}
config, ok := obj.(*api.RunOnceDurationConfig)
if !ok {
return nil, fmt.Errorf("unexpected config object %#v", obj)
}
errs := validation.ValidateRunOnceDurationConfig(config)
if len(errs) > 0 {
return nil, errs.ToAggregate()
}
return config, nil
}
示例6: readConfig
func readConfig(reader io.Reader) (*api.RunOnceDurationConfig, error) {
config := &api.RunOnceDurationConfig{}
if reader == nil || reflect.ValueOf(reader).IsNil() {
return config, nil
}
configBytes, err := ioutil.ReadAll(reader)
if err != nil {
return nil, err
}
err = configlatest.ReadYAML(configBytes, config)
if err != nil {
return nil, err
}
errs := validation.ValidateRunOnceDurationConfig(config)
if len(errs) > 0 {
return nil, errs.ToAggregate()
}
return config, nil
}
示例7: ReadConfig
func ReadConfig(configFile io.Reader) (*api.ClusterResourceOverrideConfig, error) {
if configFile == nil || reflect.ValueOf(configFile).IsNil() /* pointer to nil */ {
glog.V(5).Infof("%s has no config to read.", api.PluginName)
return nil, nil
}
configBytes, err := ioutil.ReadAll(configFile)
if err != nil {
return nil, err
}
config := &api.ClusterResourceOverrideConfig{}
err = configlatest.ReadYAML(configBytes, config)
if err != nil {
glog.V(5).Infof("%s error reading config: %v", api.PluginName, err)
return nil, err
}
glog.V(5).Infof("%s config is: %v", api.PluginName, config)
return config, nil
}
示例8: readConfig
func readConfig(reader io.Reader) (*ProjectRequestLimitConfig, error) {
if reader == nil || reflect.ValueOf(reader).IsNil() {
return &ProjectRequestLimitConfig{}, nil
}
configBytes, err := ioutil.ReadAll(reader)
if err != nil {
return nil, err
}
config := &ProjectRequestLimitConfig{}
err = configlatest.ReadYAML(configBytes, config)
if err != nil {
return nil, err
}
errs := ValidateProjectRequestLimitConfig(config)
if len(errs) > 0 {
return nil, errs.ToAggregate()
}
return config, nil
}
示例9: init
func init() {
admission.RegisterPlugin(api.PluginName, func(client clientset.Interface, input io.Reader) (admission.Interface, error) {
obj, err := configlatest.ReadYAML(input)
if err != nil {
return nil, err
}
if obj == nil {
return nil, nil
}
config, ok := obj.(*api.ImagePolicyConfig)
if !ok {
return nil, fmt.Errorf("unexpected config object: %#v", obj)
}
if errs := validation.Validate(config); len(errs) > 0 {
return nil, errs.ToAggregate()
}
glog.V(5).Infof("%s admission controller loaded with config: %#v", api.PluginName, config)
return newImagePolicyPlugin(client, config)
})
}
示例10: TestDefaultPolicy
func TestDefaultPolicy(t *testing.T) {
input, err := os.Open("api/v1/default-policy.yaml")
if err != nil {
t.Fatal(err)
}
obj, err := configlatest.ReadYAML(input)
if err != nil {
t.Fatal(err)
}
if obj == nil {
t.Fatal(obj)
}
config, ok := obj.(*api.ImagePolicyConfig)
if !ok {
t.Fatal(config)
}
if errs := validation.Validate(config); len(errs) > 0 {
t.Fatal(errs.ToAggregate())
}
plugin, err := newImagePolicyPlugin(nil, config)
if err != nil {
t.Fatal(err)
}
goodImage := &imageapi.Image{
ObjectMeta: kapi.ObjectMeta{Name: "sha256:good"},
DockerImageReference: "integrated.registry/goodns/goodimage:good",
}
badImage := &imageapi.Image{
ObjectMeta: kapi.ObjectMeta{
Name: "sha256:bad",
Annotations: map[string]string{
"images.openshift.io/deny-execution": "true",
},
},
DockerImageReference: "integrated.registry/badns/badimage:bad",
}
client := testclient.NewSimpleFake(
goodImage,
badImage,
// respond to image stream tag in this order:
&unversioned.Status{
Reason: unversioned.StatusReasonNotFound,
Code: 404,
Details: &unversioned.StatusDetails{
Kind: "ImageStreamTag",
},
},
&imageapi.ImageStreamTag{
ObjectMeta: kapi.ObjectMeta{Name: "mysql:goodtag", Namespace: "repo"},
Image: *goodImage,
},
&imageapi.ImageStreamTag{
ObjectMeta: kapi.ObjectMeta{Name: "mysql:badtag", Namespace: "repo"},
Image: *badImage,
},
)
store := setDefaultCache(plugin)
plugin.SetOpenshiftClient(client)
plugin.SetDefaultRegistryFunc(func() (string, bool) {
return "integrated.registry", true
})
if err := plugin.Validate(); err != nil {
t.Fatal(err)
}
originalNowFn := now
defer (func() { now = originalNowFn })()
now = func() time.Time { return time.Unix(1, 0) }
// should allow a non-integrated image
attrs := admission.NewAttributesRecord(
&kapi.Pod{Spec: kapi.PodSpec{Containers: []kapi.Container{{Image: "index.docker.io/mysql:latest"}}}},
nil, unversioned.GroupVersionKind{Version: "v1", Kind: "Pod"},
"default", "pod1", unversioned.GroupVersionResource{Version: "v1", Resource: "pods"},
"", admission.Create, nil,
)
if err := plugin.Admit(attrs); err != nil {
t.Fatal(err)
}
// should resolve the non-integrated image and allow it
attrs = admission.NewAttributesRecord(
&kapi.Pod{Spec: kapi.PodSpec{Containers: []kapi.Container{{Image: "index.docker.io/[email protected]:good"}}}},
nil, unversioned.GroupVersionKind{Version: "v1", Kind: "Pod"},
"default", "pod1", unversioned.GroupVersionResource{Version: "v1", Resource: "pods"},
"", admission.Create, nil,
)
if err := plugin.Admit(attrs); err != nil {
t.Fatal(err)
}
// should resolve the integrated image by digest and allow it
attrs = admission.NewAttributesRecord(
&kapi.Pod{Spec: kapi.PodSpec{Containers: []kapi.Container{{Image: "integrated.registry/repo/[email protected]:good"}}}},
nil, unversioned.GroupVersionKind{Version: "v1", Kind: "Pod"},
//.........这里部分代码省略.........
示例11: TestOAuthLDAP
//.........这里部分代码省略.........
}
masterOptions.OAuthConfig.IdentityProviders[0] = configapi.IdentityProvider{
Name: providerName,
UseAsChallenger: true,
UseAsLogin: true,
MappingMethod: "claim",
Provider: &configapi.LDAPPasswordIdentityProvider{
URL: fmt.Sprintf("ldap://%s/%s?%s?%s?%s", ldapAddress, searchDN, searchAttr, searchScope, searchFilter),
BindDN: bindDN,
BindPassword: configapi.StringSource{
StringSourceSpec: configapi.StringSourceSpec{
File: bindPasswordFile.Name(),
KeyFile: bindPasswordKeyFile.Name(),
},
},
Insecure: true,
CA: "",
Attributes: configapi.LDAPAttributeMapping{
ID: []string{idAttr1, idAttr2},
PreferredUsername: []string{loginAttr1, loginAttr2},
Name: []string{nameAttr1, nameAttr2},
Email: []string{emailAttr1, emailAttr2},
},
},
}
// serialize to YAML to make sure a complex StringSource survives a round-trip
serializedOptions, err := configapilatest.WriteYAML(masterOptions)
if err != nil {
t.Fatalf("unexpected error: %v", err)
}
// read back in
deserializedObject, err := configapilatest.ReadYAML(bytes.NewBuffer(serializedOptions))
if err != nil {
t.Fatalf("unexpected error: %v", err)
}
// assert type and proceed, using the deserialized version as our config
if deserializedOptions, ok := deserializedObject.(*configapi.MasterConfig); !ok {
t.Fatalf("unexpected object: %v", deserializedObject)
} else {
masterOptions = deserializedOptions
}
clusterAdminKubeConfig, err := testserver.StartConfiguredMaster(masterOptions)
if err != nil {
t.Fatalf("unexpected error: %v", err)
}
clusterAdminClientConfig, err := testutil.GetClusterAdminClientConfig(clusterAdminKubeConfig)
if err != nil {
t.Errorf("unexpected error: %v", err)
}
clusterAdminClient, err := testutil.GetClusterAdminClient(clusterAdminKubeConfig)
if err != nil {
t.Errorf("unexpected error: %v", err)
}
// Use the server and CA info
anonConfig := restclient.Config{}
anonConfig.Host = clusterAdminClientConfig.Host
anonConfig.CAFile = clusterAdminClientConfig.CAFile
anonConfig.CAData = clusterAdminClientConfig.CAData
// Make sure we can't authenticate as a missing user
ldapServer.ResetRequests()