Трубопровод Дженкинс на openshift - PullRequest
0 голосов
/ 14 марта 2020

подробности об ошибке e

Привет,

Я развертываю свой проект на openshift с использованием groovy Jenkins. Для кластера openshift 3.9 мне удалось успешно развернуть, но затем мой клиент решил перейти на кластер openshift 3.11, мне дали команду конфигурирования с именем и токеном кластера команда CI, конечно, у меня нет полного разрешения на кластер. Поэтому, когда я меняю новый URL-адрес, имя кластера и токен, я всегда получаю сообщение об ошибке: «Rolebindings.rba c .authorization.k8s.io запрещено: Пользовательская система: serviceaccount: ab c: jenkins не может список в rolebinding.rba c .authorization.k8s.io в пространстве имен «имя проекта»: нет совпадений RAB C ». Я проверил, используя o c командную строку, чтобы проверить, кто может развернуть систему: systemaccount: ab c: jenkins не указан в пространстве имен моего проекта. Я обратился к сотруднику CI, и он сказал, что проблема не в разрешении, а в конфигурации кластера.

1 Ответ

0 голосов
/ 14 марта 2020

Вы пытаетесь использовать служебную учетную запись, чтобы присвоить себе роль, но учетная запись службы не имеет разрешения для этого.

Проверьте разрешение учетной записи службы:

kubectl auth can-i list rolebindings -n projectname --as=system:serviceaccount:abc:jenkins
no

Администратор кластера должен выполнить следующие команды, чтобы дать разрешение учетной записи службы:

$ oc policy add-role-to-user edit system:serviceaccount:abc:jenkins \
    -n projectname
$ oc policy add-role-to-user system:image-puller system:serviceaccounts:abc:jenkins \
    -n projectname
...