如何使用yml文件在Openshift中编辑现有的角色绑定?

时间:2017-06-01 18:51:34

标签: openshift

我有一个针对Openshift项目的预定义角色绑定,我想使用.yml文件编辑/更新。

我已经尝试了以下内容:

  • oc create –f - >失败,显而易见,因为它存在,错误是:

    Error from server: rolebinding "edit" already exists
    
  • oc patch –f - >失败,看起来补丁只接受-p参数,错误是:

    Error: Must specify -p to patch
    See 'oc patch -h' for help and examples.
    
  • oc replace –f - >失败了,错误是:

    Error: error when replacing "sample.yml": resource name may not be empty
    If I were to run the create command against the file on a new project, it works.
    

如果有人对此有任何想法,请回复。

非常感谢, Aneesh

2 个答案:

答案 0 :(得分:0)

也许var element = angular.element( 'id' ); /** Use timeouts to clearly decide when an element at which state. */ element.addClass( 'ng-enter' ); 会对你有用吗?

答案 1 :(得分:0)

如果我理解你要做什么,我会使用单独的oc adm policy命令来完成它。

oc adm policy add-role-to-group edit group-name-a
oc adm policy add-role-to-group edit group-name-b

oc adm policy add-role-to-group edit group-name-x
oc adm policy add-role-to-group edit group-name-y
oc adm policy add-role-to-group edit group-name-z

如果oc patch名称的资源对象已经存在,则使用roleRef才会起作用,如果它不存在,则不会创建整个角色绑定对象。 / p>

修改角色是您无法通过简单地加载新资源对象定义来进行添加剂更改的时间之一。

您可以通过启用oc命令的日志记录并查看其功能来查看此信息。在添加其他角色绑定的情况下,它将首先查询现有角色绑定并将更改添加到其中,然后加载包含所有角色绑定的新修改条目。

执行命令

oc --loglevel=9 adm policy add-role-to-group edit group-name-x

只有group-name-agroup-name-b已经设置才能看到我的意思。