Skip to content

Commit 4ed96ab

Browse files
committed
generate
Signed-off-by: Mangirdas Judeikis <mangirdas@judeikis.lt> On-behalf-of: @SAP mangirdas.judeikis@sap.com
1 parent 99fae85 commit 4ed96ab

42 files changed

Lines changed: 1846 additions & 27 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

contrib/kcp/README.md

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -97,14 +97,18 @@ kubectl create -f contrib/kcp/deploy/examples/apiexport.yaml
9797
kubectl create -f contrib/kcp/deploy/examples/apiresourceschema-cowboys.yaml
9898
kubectl create -f contrib/kcp/deploy/examples/apiresourceschema-sheriffs.yaml
9999
kubectl kcp bind apiexport root:provider:cowboys-stable
100+
# these are UI contract to enable listing in the UI to be nicer.
101+
kubectl create -f contrib/kcp/deploy/examples/module-cowboys.yaml
102+
kubectl create -f contrib/kcp/deploy/examples/module-sheriffs.yaml
103+
kubectl create -f contrib/kcp/deploy/examples/collection-wildwest.yaml
100104
```
101105

102106
8. Get LogicalCluster:
103107

104108
```bash
105109
kubectl get logicalcluster
106110
# NAME PHASE URL AGE
107-
# cluster Ready https://192.168.2.166:6443/clusters/1d5vpxvdpy0opbj1
111+
# cluster Ready https://192.168.2.166:6443/clusters/1tjr92pohm0gnt3x
108112
```
109113

110114
## Consumer
@@ -120,7 +124,7 @@ kubectl ws create consumer --enter
120124
10. Bind the thing:
121125

122126
```bash
123-
./bin/kubectl-bind http://127.0.0.1:8080/clusters/1d5vpxvdpy0opbj1/exports --dry-run -o yaml > apiserviceexport.yaml
127+
./bin/kubectl-bind http://127.0.0.1:8080/clusters/1tjr92pohm0gnt3x/exports --dry-run -o yaml > apiserviceexport.yaml
124128

125129
# Extract secret for binding process. Note that secret name is not the same as output from command above. Check secret
126130
# name by running `kubectl get secret -n kube-bind`
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
apiVersion: catalog.kube-bind.io/v1alpha1
2+
kind: Collection
3+
metadata:
4+
name: wildwest
5+
namespace: default
6+
spec:
7+
description: "A collection of Wild West service definitions including Cowboys and Sheriffs for frontier management"
8+
modules:
9+
- name: cowboys
10+
- name: sheriffs
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
apiVersion: catalog.kube-bind.io/v1alpha1
2+
kind: Module
3+
metadata:
4+
name: cowboys
5+
namespace: default
6+
spec:
7+
resources:
8+
- group: wildwest.dev
9+
versions:
10+
- v1alpha1
11+
resource: cowboys
12+
permissionClaims:
13+
- group: ""
14+
resource: secrets
15+
selector:
16+
namedResources:
17+
- name: cowboy-credentials
18+
- name: cowboy-config
19+
labelSelector:
20+
matchLabels:
21+
app: cowboy
22+
env: production
23+
- group: ""
24+
resource: configmaps
25+
selector:
26+
namedResources:
27+
- name: cowboy-settings
28+
- name: cowboy-environment
29+
labelSelector:
30+
matchLabels:
31+
app: cowboy
32+
component: config
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
apiVersion: catalog.kube-bind.io/v1alpha1
2+
kind: Module
3+
metadata:
4+
name: sheriffs
5+
namespace: default
6+
spec:
7+
resources:
8+
- group: wildwest.dev
9+
versions:
10+
- v1alpha1
11+
resource: sheriffs
12+
permissionClaims:
13+
- group: ""
14+
resource: secrets
15+
selector:
16+
namedResources:
17+
- name: sheriff-badge-credentials
18+
- name: sheriff-jurisdiction-config
19+
labelSelector:
20+
matchLabels:
21+
app: sheriff
22+
security: high
23+
- group: ""
24+
resource: configmaps
25+
selector:
26+
namedResources:
27+
- name: sheriff-jurisdiction-map
28+
- name: sheriff-enforcement-rules
29+
labelSelector:
30+
matchLabels:
31+
app: sheriff
32+
component: enforcement
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
apiVersion: apis.kcp.io/v1alpha2
2+
kind: APIExport
3+
metadata:
4+
creationTimestamp: null
5+
name: catalog.kube-bind.io
6+
spec:
7+
resources:
8+
- group: catalog.kube-bind.io
9+
name: collections
10+
schema: v251015-07ea718.collections.catalog.kube-bind.io
11+
storage:
12+
crd: {}
13+
- group: catalog.kube-bind.io
14+
name: modules
15+
schema: v251015-dfb188c.modules.catalog.kube-bind.io
16+
storage:
17+
crd: {}
18+
status: {}

contrib/kcp/deploy/resources/apiexport-kube-bind.io.yaml

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -49,17 +49,17 @@ spec:
4949
crd: {}
5050
- group: kube-bind.io
5151
name: apiservicebindings
52-
schema: v250929-62fc678.apiservicebindings.kube-bind.io
52+
schema: v251015-f561c7c.apiservicebindings.kube-bind.io
5353
storage:
5454
crd: {}
5555
- group: kube-bind.io
5656
name: apiserviceexportrequests
57-
schema: v250929-62fc678.apiserviceexportrequests.kube-bind.io
57+
schema: v251015-f561c7c.apiserviceexportrequests.kube-bind.io
5858
storage:
5959
crd: {}
6060
- group: kube-bind.io
6161
name: apiserviceexports
62-
schema: v250929-62fc678.apiserviceexports.kube-bind.io
62+
schema: v251015-f561c7c.apiserviceexports.kube-bind.io
6363
storage:
6464
crd: {}
6565
- group: kube-bind.io
@@ -72,6 +72,16 @@ spec:
7272
schema: v250918-f26732b.boundschemas.kube-bind.io
7373
storage:
7474
crd: {}
75+
- group: catalog.kube-bind.io
76+
name: collections
77+
schema: v251015-07ea718.collections.catalog.kube-bind.io
78+
storage:
79+
crd: {}
80+
- group: catalog.kube-bind.io
81+
name: modules
82+
schema: v251015-dfb188c.modules.catalog.kube-bind.io
83+
storage:
84+
crd: {}
7585
- group: kube-bind.io
7686
name: clusterbindings
7787
schema: v250925-56669b8.clusterbindings.kube-bind.io

contrib/kcp/deploy/resources/apiresourceschema-apiservicebindings.kube-bind.io.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ apiVersion: apis.kcp.io/v1alpha1
22
kind: APIResourceSchema
33
metadata:
44
creationTimestamp: null
5-
name: v250929-62fc678.apiservicebindings.kube-bind.io
5+
name: v251015-f561c7c.apiservicebindings.kube-bind.io
66
spec:
77
conversion:
88
strategy: None
@@ -374,7 +374,7 @@ spec:
374374
type: object
375375
type: object
376376
x-kubernetes-map-type: atomic
377-
namedResource:
377+
namedResources:
378378
description: NamedResource is a shorthand for selecting a
379379
single resource by name and namespace.
380380
items:

contrib/kcp/deploy/resources/apiresourceschema-apiserviceexportrequests.kube-bind.io.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ apiVersion: apis.kcp.io/v1alpha1
22
kind: APIResourceSchema
33
metadata:
44
creationTimestamp: null
5-
name: v250929-62fc678.apiserviceexportrequests.kube-bind.io
5+
name: v251015-f561c7c.apiserviceexportrequests.kube-bind.io
66
spec:
77
conversion:
88
strategy: None
@@ -291,7 +291,7 @@ spec:
291291
type: object
292292
type: object
293293
x-kubernetes-map-type: atomic
294-
namedResource:
294+
namedResources:
295295
description: NamedResource is a shorthand for selecting a
296296
single resource by name and namespace.
297297
items:

contrib/kcp/deploy/resources/apiresourceschema-apiserviceexports.kube-bind.io.yaml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ apiVersion: apis.kcp.io/v1alpha1
22
kind: APIResourceSchema
33
metadata:
44
creationTimestamp: null
5-
name: v250929-62fc678.apiserviceexports.kube-bind.io
5+
name: v251015-f561c7c.apiserviceexports.kube-bind.io
66
spec:
77
conversion:
88
strategy: None
@@ -561,7 +561,7 @@ spec:
561561
type: object
562562
type: object
563563
x-kubernetes-map-type: atomic
564-
namedResource:
564+
namedResources:
565565
description: NamedResource is a shorthand for selecting a
566566
single resource by name and namespace.
567567
items:
Lines changed: 127 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,127 @@
1+
apiVersion: apis.kcp.io/v1alpha1
2+
kind: APIResourceSchema
3+
metadata:
4+
creationTimestamp: null
5+
name: v251015-07ea718.collections.catalog.kube-bind.io
6+
spec:
7+
group: catalog.kube-bind.io
8+
names:
9+
categories:
10+
- kube-bindings
11+
kind: Collection
12+
listKind: CollectionList
13+
plural: collections
14+
singular: collection
15+
scope: Namespaced
16+
versions:
17+
- additionalPrinterColumns:
18+
- jsonPath: .spec.description
19+
name: Description
20+
type: string
21+
- jsonPath: .spec.modules[*]
22+
name: Modules
23+
type: integer
24+
- jsonPath: .metadata.creationTimestamp
25+
name: Age
26+
type: date
27+
name: v1alpha1
28+
schema:
29+
description: Collection groups multiple Modules into a logical group. This functions
30+
as a folder in the UI.
31+
properties:
32+
apiVersion:
33+
description: |-
34+
APIVersion defines the versioned schema of this representation of an object.
35+
Servers should convert recognized schemas to the latest internal value, and
36+
may reject unrecognized values.
37+
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
38+
type: string
39+
kind:
40+
description: |-
41+
Kind is a string value representing the REST resource this object represents.
42+
Servers may infer this from the endpoint the client submits requests to.
43+
Cannot be updated.
44+
In CamelCase.
45+
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
46+
type: string
47+
metadata:
48+
type: object
49+
spec:
50+
description: spec specifies the collection.
51+
properties:
52+
description:
53+
description: description is a human readable description of this collection.
54+
type: string
55+
modules:
56+
description: modules is a list of module references that are part of
57+
this collection.
58+
items:
59+
description: ModuleReference references a Module by name.
60+
properties:
61+
name:
62+
description: name is the name of the module.
63+
type: string
64+
required:
65+
- name
66+
type: object
67+
minItems: 1
68+
type: array
69+
required:
70+
- modules
71+
type: object
72+
status:
73+
description: status contains reconciliation information for the collection.
74+
properties:
75+
conditions:
76+
description: conditions is a list of conditions that apply to the Collection.
77+
items:
78+
description: Condition defines an observation of a object operational
79+
state.
80+
properties:
81+
lastTransitionTime:
82+
description: |-
83+
Last time the condition transitioned from one status to another.
84+
This should be when the underlying condition changed. If that is not known, then using the time when
85+
the API field changed is acceptable.
86+
format: date-time
87+
type: string
88+
message:
89+
description: |-
90+
A human readable message indicating details about the transition.
91+
This field may be empty.
92+
type: string
93+
reason:
94+
description: |-
95+
The reason for the condition's last transition in CamelCase.
96+
The specific API may choose whether or not this field is considered a guaranteed API.
97+
This field may not be empty.
98+
type: string
99+
severity:
100+
description: |-
101+
Severity provides an explicit classification of Reason code, so the users or machines can immediately
102+
understand the current situation and act accordingly.
103+
The Severity field MUST be set only when Status=False.
104+
type: string
105+
status:
106+
description: Status of the condition, one of True, False, Unknown.
107+
type: string
108+
type:
109+
description: |-
110+
Type of condition in CamelCase or in foo.example.com/CamelCase.
111+
Many .condition.type values are consistent across resources like Available, but because arbitrary conditions
112+
can be useful (see .node.status.conditions), the ability to deconflict is important.
113+
type: string
114+
required:
115+
- lastTransitionTime
116+
- status
117+
- type
118+
type: object
119+
type: array
120+
type: object
121+
required:
122+
- spec
123+
type: object
124+
served: true
125+
storage: true
126+
subresources:
127+
status: {}

0 commit comments

Comments
 (0)