Skip to content

Commit 58e13c2

Browse files
committed
add what-can-i-do endpoint
1 parent 68e1ee2 commit 58e13c2

File tree

29 files changed

+718
-17
lines changed

29 files changed

+718
-17
lines changed

api/swagger-spec/oapi-v1.json

Lines changed: 130 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15527,6 +15527,102 @@
1552715527
}
1552815528
]
1552915529
},
15530+
{
15531+
"path": "/oapi/v1/namespaces/{namespace}/selfsubjectrulesreviews",
15532+
"description": "OpenShift REST API, version v1",
15533+
"operations": [
15534+
{
15535+
"type": "v1.SelfSubjectRulesReview",
15536+
"method": "POST",
15537+
"summary": "create a SelfSubjectRulesReview",
15538+
"nickname": "createNamespacedSelfSubjectRulesReview",
15539+
"parameters": [
15540+
{
15541+
"type": "string",
15542+
"paramType": "query",
15543+
"name": "pretty",
15544+
"description": "If 'true', then the output is pretty printed.",
15545+
"required": false,
15546+
"allowMultiple": false
15547+
},
15548+
{
15549+
"type": "v1.SelfSubjectRulesReview",
15550+
"paramType": "body",
15551+
"name": "body",
15552+
"description": "",
15553+
"required": true,
15554+
"allowMultiple": false
15555+
},
15556+
{
15557+
"type": "string",
15558+
"paramType": "path",
15559+
"name": "namespace",
15560+
"description": "object name and auth scope, such as for teams and projects",
15561+
"required": true,
15562+
"allowMultiple": false
15563+
}
15564+
],
15565+
"responseMessages": [
15566+
{
15567+
"code": 200,
15568+
"message": "OK",
15569+
"responseModel": "v1.SelfSubjectRulesReview"
15570+
}
15571+
],
15572+
"produces": [
15573+
"application/json",
15574+
"application/yaml"
15575+
],
15576+
"consumes": [
15577+
"*/*"
15578+
]
15579+
}
15580+
]
15581+
},
15582+
{
15583+
"path": "/oapi/v1/selfsubjectrulesreviews",
15584+
"description": "OpenShift REST API, version v1",
15585+
"operations": [
15586+
{
15587+
"type": "v1.SelfSubjectRulesReview",
15588+
"method": "POST",
15589+
"summary": "create a SelfSubjectRulesReview",
15590+
"nickname": "createNamespacedSelfSubjectRulesReview",
15591+
"parameters": [
15592+
{
15593+
"type": "string",
15594+
"paramType": "query",
15595+
"name": "pretty",
15596+
"description": "If 'true', then the output is pretty printed.",
15597+
"required": false,
15598+
"allowMultiple": false
15599+
},
15600+
{
15601+
"type": "v1.SelfSubjectRulesReview",
15602+
"paramType": "body",
15603+
"name": "body",
15604+
"description": "",
15605+
"required": true,
15606+
"allowMultiple": false
15607+
}
15608+
],
15609+
"responseMessages": [
15610+
{
15611+
"code": 200,
15612+
"message": "OK",
15613+
"responseModel": "v1.SelfSubjectRulesReview"
15614+
}
15615+
],
15616+
"produces": [
15617+
"application/json",
15618+
"application/yaml"
15619+
],
15620+
"consumes": [
15621+
"*/*"
15622+
]
15623+
}
15624+
]
15625+
},
1553015626
{
1553115627
"path": "/oapi/v1/namespaces/{namespace}/subjectaccessreviews",
1553215628
"description": "OpenShift REST API, version v1",
@@ -22430,6 +22526,40 @@
2243022526
}
2243122527
}
2243222528
},
22529+
"v1.SelfSubjectRulesReview": {
22530+
"id": "v1.SelfSubjectRulesReview",
22531+
"description": "TypeMeta describes an individual object in an API response or request with strings representing the type of the object and its API schema version. Structures that are versioned or persisted should inline TypeMeta.",
22532+
"properties": {
22533+
"kind": {
22534+
"type": "string",
22535+
"description": "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#types-kinds"
22536+
},
22537+
"apiVersion": {
22538+
"type": "string",
22539+
"description": "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: http://releases.k8s.io/HEAD/docs/devel/api-conventions.md#resources"
22540+
},
22541+
"status": {
22542+
"$ref": "v1.SubjectRulesReviewStatus"
22543+
}
22544+
}
22545+
},
22546+
"v1.SubjectRulesReviewStatus": {
22547+
"id": "v1.SubjectRulesReviewStatus",
22548+
"required": [
22549+
"rules"
22550+
],
22551+
"properties": {
22552+
"rules": {
22553+
"type": "array",
22554+
"items": {
22555+
"$ref": "v1.PolicyRule"
22556+
}
22557+
},
22558+
"evaluationError": {
22559+
"type": "string"
22560+
}
22561+
}
22562+
},
2243322563
"v1.SubjectAccessReview": {
2243422564
"id": "v1.SubjectAccessReview",
2243522565
"description": "SubjectAccessReview is an object for requesting information about whether a user or group can perform an action",

contrib/completions/bash/oc

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7213,6 +7213,46 @@ _oc_policy_who-can()
72137213
must_have_one_noun=()
72147214
}
72157215

7216+
_oc_policy_what-can-i-do()
7217+
{
7218+
last_command="oc_policy_what-can-i-do"
7219+
commands=()
7220+
7221+
flags=()
7222+
two_word_flags=()
7223+
flags_with_completion=()
7224+
flags_completion=()
7225+
7226+
flags+=("--api-version=")
7227+
flags+=("--as=")
7228+
flags+=("--certificate-authority=")
7229+
flags_with_completion+=("--certificate-authority")
7230+
flags_completion+=("_filedir")
7231+
flags+=("--client-certificate=")
7232+
flags_with_completion+=("--client-certificate")
7233+
flags_completion+=("_filedir")
7234+
flags+=("--client-key=")
7235+
flags_with_completion+=("--client-key")
7236+
flags_completion+=("_filedir")
7237+
flags+=("--cluster=")
7238+
flags+=("--config=")
7239+
flags_with_completion+=("--config")
7240+
flags_completion+=("_filedir")
7241+
flags+=("--context=")
7242+
flags+=("--google-json-key=")
7243+
flags+=("--insecure-skip-tls-verify")
7244+
flags+=("--log-flush-frequency=")
7245+
flags+=("--match-server-version")
7246+
flags+=("--namespace=")
7247+
two_word_flags+=("-n")
7248+
flags+=("--server=")
7249+
flags+=("--token=")
7250+
flags+=("--user=")
7251+
7252+
must_have_one_flag=()
7253+
must_have_one_noun=()
7254+
}
7255+
72167256
_oc_policy_add-role-to-user()
72177257
{
72187258
last_command="oc_policy_add-role-to-user"
@@ -7466,6 +7506,7 @@ _oc_policy()
74667506
last_command="oc_policy"
74677507
commands=()
74687508
commands+=("who-can")
7509+
commands+=("what-can-i-do")
74697510
commands+=("add-role-to-user")
74707511
commands+=("remove-role-from-user")
74717512
commands+=("remove-user")

contrib/completions/bash/openshift

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10798,6 +10798,46 @@ _openshift_cli_policy_who-can()
1079810798
must_have_one_noun=()
1079910799
}
1080010800

10801+
_openshift_cli_policy_what-can-i-do()
10802+
{
10803+
last_command="openshift_cli_policy_what-can-i-do"
10804+
commands=()
10805+
10806+
flags=()
10807+
two_word_flags=()
10808+
flags_with_completion=()
10809+
flags_completion=()
10810+
10811+
flags+=("--api-version=")
10812+
flags+=("--as=")
10813+
flags+=("--certificate-authority=")
10814+
flags_with_completion+=("--certificate-authority")
10815+
flags_completion+=("_filedir")
10816+
flags+=("--client-certificate=")
10817+
flags_with_completion+=("--client-certificate")
10818+
flags_completion+=("_filedir")
10819+
flags+=("--client-key=")
10820+
flags_with_completion+=("--client-key")
10821+
flags_completion+=("_filedir")
10822+
flags+=("--cluster=")
10823+
flags+=("--config=")
10824+
flags_with_completion+=("--config")
10825+
flags_completion+=("_filedir")
10826+
flags+=("--context=")
10827+
flags+=("--google-json-key=")
10828+
flags+=("--insecure-skip-tls-verify")
10829+
flags+=("--log-flush-frequency=")
10830+
flags+=("--match-server-version")
10831+
flags+=("--namespace=")
10832+
two_word_flags+=("-n")
10833+
flags+=("--server=")
10834+
flags+=("--token=")
10835+
flags+=("--user=")
10836+
10837+
must_have_one_flag=()
10838+
must_have_one_noun=()
10839+
}
10840+
1080110841
_openshift_cli_policy_add-role-to-user()
1080210842
{
1080310843
last_command="openshift_cli_policy_add-role-to-user"
@@ -11051,6 +11091,7 @@ _openshift_cli_policy()
1105111091
last_command="openshift_cli_policy"
1105211092
commands=()
1105311093
commands+=("who-can")
11094+
commands+=("what-can-i-do")
1105411095
commands+=("add-role-to-user")
1105511096
commands+=("remove-role-from-user")
1105611097
commands+=("remove-user")

pkg/api/deep_copy_generated.go

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -632,6 +632,18 @@ func deepCopy_api_RoleList(in api.RoleList, out *api.RoleList, c *conversion.Clo
632632
return nil
633633
}
634634

635+
func deepCopy_api_SelfSubjectRulesReview(in api.SelfSubjectRulesReview, out *api.SelfSubjectRulesReview, c *conversion.Cloner) error {
636+
if newVal, err := c.DeepCopy(in.TypeMeta); err != nil {
637+
return err
638+
} else {
639+
out.TypeMeta = newVal.(unversioned.TypeMeta)
640+
}
641+
if err := deepCopy_api_SubjectRulesReviewStatus(in.Status, &out.Status, c); err != nil {
642+
return err
643+
}
644+
return nil
645+
}
646+
635647
func deepCopy_api_SubjectAccessReview(in api.SubjectAccessReview, out *api.SubjectAccessReview, c *conversion.Cloner) error {
636648
if newVal, err := c.DeepCopy(in.TypeMeta); err != nil {
637649
return err
@@ -669,6 +681,21 @@ func deepCopy_api_SubjectAccessReviewResponse(in api.SubjectAccessReviewResponse
669681
return nil
670682
}
671683

684+
func deepCopy_api_SubjectRulesReviewStatus(in api.SubjectRulesReviewStatus, out *api.SubjectRulesReviewStatus, c *conversion.Cloner) error {
685+
if in.Rules != nil {
686+
out.Rules = make([]api.PolicyRule, len(in.Rules))
687+
for i := range in.Rules {
688+
if err := deepCopy_api_PolicyRule(in.Rules[i], &out.Rules[i], c); err != nil {
689+
return err
690+
}
691+
}
692+
} else {
693+
out.Rules = nil
694+
}
695+
out.EvaluationError = in.EvaluationError
696+
return nil
697+
}
698+
672699
func deepCopy_api_BinaryBuildRequestOptions(in buildapi.BinaryBuildRequestOptions, out *buildapi.BinaryBuildRequestOptions, c *conversion.Cloner) error {
673700
if newVal, err := c.DeepCopy(in.TypeMeta); err != nil {
674701
return err
@@ -3301,8 +3328,10 @@ func init() {
33013328
deepCopy_api_RoleBinding,
33023329
deepCopy_api_RoleBindingList,
33033330
deepCopy_api_RoleList,
3331+
deepCopy_api_SelfSubjectRulesReview,
33043332
deepCopy_api_SubjectAccessReview,
33053333
deepCopy_api_SubjectAccessReviewResponse,
3334+
deepCopy_api_SubjectRulesReviewStatus,
33063335
deepCopy_api_BinaryBuildRequestOptions,
33073336
deepCopy_api_BinaryBuildSource,
33083337
deepCopy_api_Build,

0 commit comments

Comments
 (0)