私はREST呼び出しによるオープンシフトの管理を部分的に自動化する何かをセットアップする目標を持って、オープンシフトREST APIとサービスアカウントで遊んでいます。 現在のところまだOpenshift 3.1です。Openshift 3.1:RESTを使用してサービスアカウントのプロジェクトを一覧表示 - 空のリストを返します
これまでのところ: 私はserviceaccountを作成し、それにアクセスしてREST呼び出しに使用することができました。しかし、私はそれがプロジェクトのリストを持つことはできません。
# account exists with name robot in namespace default
$ oc describe serviceaccount robot
Name: robot
Namespace: default
Labels: <none>
...
# tried a couple of approaches for granting access:
$ oc policy add-role-to-user admin system:serviceaccounts:robot -n default
$ oc policy add-role-to-user admin robot -n default
$ oc policy add-role-to-user admin system:serviceaccounts:default:robot -n default
# get token en do REST call
$ SECRET=`oc describe serviceaccount robot | grep -i tokens | awk '{print $2}'`
$ TOKEN=`oc describe secret $SECRET | grep -i ^token | awk '{print $2}'`
$ curl -X GET -H "Authorization: Bearer $TOKEN" https://$OPENSHIFT_HOSTNAME/oapi/v1/projects --insecure
{
"kind": "ProjectList",
"apiVersion": "v1",
"metadata": {
"selfLink": "/oapi/v1/projects"
},
"items": []
}
私のプロジェクトリストはまだ空です。私は複数の他のプロジェクトにserviceaccountを追加しようとしましたが、リストは空のままです。
私は(私は同じことを指摘し、その間に同僚と話をしていた)私は実際にこれを試したと思ったが、私はまだ余分のserviceaccounts後にしました。それを修正して固定。ありがとう! – HSquirrel