Skip to content

Commit c7589ea

Browse files
committed
generate docs for v1a2 API without removing v1a1 docs
Allow COSI to generate docs for the WIP v1alpha2 API without overwriting v1alpha1 documentation. Copy the old v1alpha1 docs to a new file that is no longer kept up-to-date by autogen scripts. `out.md` is now generated for v1alpha2 docs, and both versions are linked on the doc page sidebar. Signed-off-by: Blaine Gardner <[email protected]>
1 parent e3bc25e commit c7589ea

File tree

7 files changed

+489
-97
lines changed

7 files changed

+489
-97
lines changed

Makefile

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -116,12 +116,12 @@ build.sidecar: sidecar/Dockerfile ## Build only the sidecar container image
116116
.PHONY: build-docs
117117
build-docs: generate crd-ref-docs mdbook
118118
@echo "build-docs is temporarily disabled for v1alpha2 development"
119-
# $(CRD_REF_DOCS) \
120-
# --config=./docs/.crd-ref-docs.yaml \
121-
# --source-path=./client/apis \
122-
# --renderer=markdown \
123-
# --output-path=./docs/src/api/
124-
# cd docs; $(MDBOOK) build
119+
$(CRD_REF_DOCS) \
120+
--config=./docs/.crd-ref-docs.yaml \
121+
--source-path=./client/apis \
122+
--renderer=markdown \
123+
--output-path=./docs/src/api/
124+
cd docs; $(MDBOOK) build
125125

126126
MDBOOK_PORT ?= 3000
127127

docs/.crd-ref-docs.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,4 +5,4 @@ processor:
55
ignoreFields: []
66
render:
77
# Version of Kubernetes to use when generating links to Kubernetes API documentation.
8-
kubernetesVersion: '1.32'
8+
kubernetesVersion: '1.34'

docs/src/SUMMARY.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,4 +13,6 @@
1313
- [Go](./developing/clients/go.md)
1414
<!-- TODO(guides): add new guides -->
1515
- [Drivers](./drivers.md)
16-
- [API Reference](./api/out.md)
16+
- [API Reference](./api/apis.md)
17+
- [v1alpha1](./api/v1alpha1.md)
18+
- [v1alpha2](./api/out.md)

docs/src/api/apis.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
# API Reference
2+
3+
API Reference provides API Schema definitions for COSI's `objectstorage.k8s.io` API group.

docs/src/api/out.md

Lines changed: 188 additions & 86 deletions
Large diffs are not rendered by default.

docs/src/api/v1alpha1.md

Lines changed: 288 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,288 @@
1+
# API Reference
2+
<!-- this file is no longer kept up-to-date by automatic generation scripts -->
3+
4+
## Packages
5+
- [objectstorage.k8s.io/v1alpha1](#objectstoragek8siov1alpha1)
6+
7+
8+
## objectstorage.k8s.io/v1alpha1
9+
10+
11+
12+
13+
#### AuthenticationType
14+
15+
_Underlying type:_ _string_
16+
17+
18+
19+
20+
21+
_Appears in:_
22+
- [BucketAccessClass](#bucketaccessclass)
23+
24+
| Field | Description |
25+
| --- | --- |
26+
| `Key` | |
27+
| `IAM` | |
28+
29+
30+
#### Bucket
31+
32+
33+
34+
35+
36+
37+
38+
_Appears in:_
39+
- [BucketList](#bucketlist)
40+
41+
| Field | Description | Default | Validation |
42+
| --- | --- | --- | --- |
43+
| `kind` _string_ | Kind is a string value representing the REST resource this object represents.<br />Servers may infer this from the endpoint the client submits requests to.<br />Cannot be updated.<br />In CamelCase.<br />More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds | | |
44+
| `apiVersion` _string_ | APIVersion defines the versioned schema of this representation of an object.<br />Servers should convert recognized schemas to the latest internal value, and<br />may reject unrecognized values.<br />More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources | | |
45+
| `metadata` _[ObjectMeta](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.32/#objectmeta-v1-meta)_ | Refer to Kubernetes API documentation for fields of `metadata`. | | |
46+
| `spec` _[BucketSpec](#bucketspec)_ | | | |
47+
| `status` _[BucketStatus](#bucketstatus)_ | | | |
48+
49+
50+
#### BucketAccess
51+
52+
53+
54+
55+
56+
57+
58+
_Appears in:_
59+
- [BucketAccessList](#bucketaccesslist)
60+
61+
| Field | Description | Default | Validation |
62+
| --- | --- | --- | --- |
63+
| `kind` _string_ | Kind is a string value representing the REST resource this object represents.<br />Servers may infer this from the endpoint the client submits requests to.<br />Cannot be updated.<br />In CamelCase.<br />More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds | | |
64+
| `apiVersion` _string_ | APIVersion defines the versioned schema of this representation of an object.<br />Servers should convert recognized schemas to the latest internal value, and<br />may reject unrecognized values.<br />More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources | | |
65+
| `metadata` _[ObjectMeta](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.32/#objectmeta-v1-meta)_ | Refer to Kubernetes API documentation for fields of `metadata`. | | |
66+
| `spec` _[BucketAccessSpec](#bucketaccessspec)_ | | | |
67+
| `status` _[BucketAccessStatus](#bucketaccessstatus)_ | | | |
68+
69+
70+
#### BucketAccessClass
71+
72+
73+
74+
75+
76+
77+
78+
_Appears in:_
79+
- [BucketAccessClassList](#bucketaccessclasslist)
80+
81+
| Field | Description | Default | Validation |
82+
| --- | --- | --- | --- |
83+
| `kind` _string_ | Kind is a string value representing the REST resource this object represents.<br />Servers may infer this from the endpoint the client submits requests to.<br />Cannot be updated.<br />In CamelCase.<br />More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds | | |
84+
| `apiVersion` _string_ | APIVersion defines the versioned schema of this representation of an object.<br />Servers should convert recognized schemas to the latest internal value, and<br />may reject unrecognized values.<br />More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources | | |
85+
| `metadata` _[ObjectMeta](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.32/#objectmeta-v1-meta)_ | Refer to Kubernetes API documentation for fields of `metadata`. | | |
86+
| `driverName` _string_ | DriverName is the name of driver associated with<br />this BucketAccess | | |
87+
| `authenticationType` _[AuthenticationType](#authenticationtype)_ | AuthenticationType denotes the style of authentication<br />It can be one of<br />Key - access, secret tokens based authentication<br />IAM - implicit authentication of pods to the OSP based on service account mappings | | |
88+
| `parameters` _object (keys:string, values:string)_ | Parameters is an opaque map for passing in configuration to a driver<br />for granting access to a bucket | | |
89+
90+
91+
92+
93+
94+
95+
#### BucketAccessSpec
96+
97+
98+
99+
100+
101+
102+
103+
_Appears in:_
104+
- [BucketAccess](#bucketaccess)
105+
106+
| Field | Description | Default | Validation |
107+
| --- | --- | --- | --- |
108+
| `bucketClaimName` _string_ | BucketClaimName is the name of the BucketClaim. | | |
109+
| `protocol` _[Protocol](#protocol)_ | Protocol is the name of the Protocol<br />that this access credential is supposed to support<br />If left empty, it will choose the protocol supported<br />by the bucket. If the bucket supports multiple protocols,<br />the end protocol is determined by the driver. | | |
110+
| `bucketAccessClassName` _string_ | BucketAccessClassName is the name of the BucketAccessClass | | |
111+
| `credentialsSecretName` _string_ | CredentialsSecretName is the name of the secret that COSI should populate<br />with the credentials. If a secret by this name already exists, then it is<br />assumed that credentials have already been generated. It is not overridden.<br />This secret is deleted when the BucketAccess is delted. | | |
112+
| `serviceAccountName` _string_ | ServiceAccountName is the name of the serviceAccount that COSI will map<br />to the OSP service account when IAM styled authentication is specified | | |
113+
114+
115+
#### BucketAccessStatus
116+
117+
118+
119+
120+
121+
122+
123+
_Appears in:_
124+
- [BucketAccess](#bucketaccess)
125+
126+
| Field | Description | Default | Validation |
127+
| --- | --- | --- | --- |
128+
| `accountID` _string_ | AccountID is the unique ID for the account in the OSP. It will be populated<br />by the COSI sidecar once access has been successfully granted. | | |
129+
| `accessGranted` _boolean_ | AccessGranted indicates the successful grant of privileges to access the bucket | | |
130+
131+
132+
#### BucketClaim
133+
134+
135+
136+
137+
138+
139+
140+
_Appears in:_
141+
- [BucketClaimList](#bucketclaimlist)
142+
143+
| Field | Description | Default | Validation |
144+
| --- | --- | --- | --- |
145+
| `kind` _string_ | Kind is a string value representing the REST resource this object represents.<br />Servers may infer this from the endpoint the client submits requests to.<br />Cannot be updated.<br />In CamelCase.<br />More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds | | |
146+
| `apiVersion` _string_ | APIVersion defines the versioned schema of this representation of an object.<br />Servers should convert recognized schemas to the latest internal value, and<br />may reject unrecognized values.<br />More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources | | |
147+
| `metadata` _[ObjectMeta](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.32/#objectmeta-v1-meta)_ | Refer to Kubernetes API documentation for fields of `metadata`. | | |
148+
| `spec` _[BucketClaimSpec](#bucketclaimspec)_ | | | |
149+
| `status` _[BucketClaimStatus](#bucketclaimstatus)_ | | | |
150+
151+
152+
153+
154+
#### BucketClaimSpec
155+
156+
157+
158+
159+
160+
161+
162+
_Appears in:_
163+
- [BucketClaim](#bucketclaim)
164+
165+
| Field | Description | Default | Validation |
166+
| --- | --- | --- | --- |
167+
| `bucketClassName` _string_ | Name of the BucketClass | | |
168+
| `protocols` _[Protocol](#protocol) array_ | Protocols are the set of data API this bucket is required to support.<br />The possible values for protocol are:<br />- S3: Indicates Amazon S3 protocol<br />- Azure: Indicates Microsoft Azure BlobStore protocol<br />- GCS: Indicates Google Cloud Storage protocol | | |
169+
| `existingBucketName` _string_ | Name of a bucket object that was manually<br />created to import a bucket created outside of COSI<br />If unspecified, then a new Bucket will be dynamically provisioned | | |
170+
171+
172+
#### BucketClaimStatus
173+
174+
175+
176+
177+
178+
179+
180+
_Appears in:_
181+
- [BucketClaim](#bucketclaim)
182+
183+
| Field | Description | Default | Validation |
184+
| --- | --- | --- | --- |
185+
| `bucketReady` _boolean_ | BucketReady indicates that the bucket is ready for consumpotion<br />by workloads | | |
186+
| `bucketName` _string_ | BucketName is the name of the provisioned Bucket in response<br />to this BucketClaim. It is generated and set by the COSI controller<br />before making the creation request to the OSP backend. | | |
187+
188+
189+
#### BucketClass
190+
191+
192+
193+
194+
195+
196+
197+
_Appears in:_
198+
- [BucketClassList](#bucketclasslist)
199+
200+
| Field | Description | Default | Validation |
201+
| --- | --- | --- | --- |
202+
| `kind` _string_ | Kind is a string value representing the REST resource this object represents.<br />Servers may infer this from the endpoint the client submits requests to.<br />Cannot be updated.<br />In CamelCase.<br />More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds | | |
203+
| `apiVersion` _string_ | APIVersion defines the versioned schema of this representation of an object.<br />Servers should convert recognized schemas to the latest internal value, and<br />may reject unrecognized values.<br />More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources | | |
204+
| `metadata` _[ObjectMeta](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.32/#objectmeta-v1-meta)_ | Refer to Kubernetes API documentation for fields of `metadata`. | | |
205+
| `driverName` _string_ | DriverName is the name of driver associated with this bucket | | |
206+
| `deletionPolicy` _[DeletionPolicy](#deletionpolicy)_ | DeletionPolicy is used to specify how COSI should handle deletion of this<br />bucket. There are 2 possible values:<br /> - Retain: Indicates that the bucket should not be deleted from the OSP<br /> - Delete: Indicates that the bucket should be deleted from the OSP<br /> once all the workloads accessing this bucket are done | Retain | |
207+
| `parameters` _object (keys:string, values:string)_ | Parameters is an opaque map for passing in configuration to a driver<br />for creating the bucket | | |
208+
209+
210+
211+
212+
213+
214+
#### BucketSpec
215+
216+
217+
218+
219+
220+
221+
222+
_Appears in:_
223+
- [Bucket](#bucket)
224+
225+
| Field | Description | Default | Validation |
226+
| --- | --- | --- | --- |
227+
| `driverName` _string_ | DriverName is the name of driver associated with this bucket | | |
228+
| `bucketClassName` _string_ | Name of the BucketClass specified in the BucketRequest | | |
229+
| `bucketClaim` _[ObjectReference](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.32/#objectreference-v1-core)_ | Name of the BucketClaim that resulted in the creation of this Bucket<br />In case the Bucket object was created manually, then this should refer<br />to the BucketClaim with which this Bucket should be bound | | |
230+
| `protocols` _[Protocol](#protocol) array_ | Protocols are the set of data APIs this bucket is expected to support.<br />The possible values for protocol are:<br />- S3: Indicates Amazon S3 protocol<br />- Azure: Indicates Microsoft Azure BlobStore protocol<br />- GCS: Indicates Google Cloud Storage protocol | | |
231+
| `parameters` _object (keys:string, values:string)_ | | | |
232+
| `deletionPolicy` _[DeletionPolicy](#deletionpolicy)_ | DeletionPolicy is used to specify how COSI should handle deletion of this<br />bucket. There are 2 possible values:<br /> - Retain: Indicates that the bucket should not be deleted from the OSP (default)<br /> - Delete: Indicates that the bucket should be deleted from the OSP<br /> once all the workloads accessing this bucket are done | Retain | |
233+
| `existingBucketID` _string_ | ExistingBucketID is the unique id of the bucket in the OSP. This field should be<br />used to specify a bucket that has been created outside of COSI.<br />This field will be empty when the Bucket is dynamically provisioned by COSI. | | |
234+
235+
236+
#### BucketStatus
237+
238+
239+
240+
241+
242+
243+
244+
_Appears in:_
245+
- [Bucket](#bucket)
246+
247+
| Field | Description | Default | Validation |
248+
| --- | --- | --- | --- |
249+
| `bucketReady` _boolean_ | BucketReady is a boolean condition to reflect the successful creation<br />of a bucket. | | |
250+
| `bucketID` _string_ | BucketID is the unique id of the bucket in the OSP. This field will be<br />populated by COSI. | | |
251+
252+
253+
#### DeletionPolicy
254+
255+
_Underlying type:_ _string_
256+
257+
258+
259+
260+
261+
_Appears in:_
262+
- [BucketClass](#bucketclass)
263+
- [BucketSpec](#bucketspec)
264+
265+
| Field | Description |
266+
| --- | --- |
267+
| `Retain` | |
268+
| `Delete` | |
269+
270+
271+
#### Protocol
272+
273+
_Underlying type:_ _string_
274+
275+
276+
277+
278+
279+
_Appears in:_
280+
- [BucketAccessSpec](#bucketaccessspec)
281+
- [BucketClaimSpec](#bucketclaimspec)
282+
- [BucketSpec](#bucketspec)
283+
284+
| Field | Description |
285+
| --- | --- |
286+
| `S3` | |
287+
| `Azure` | |
288+
| `GCP` | |

docs/theme/index-template.hbs

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -189,9 +189,6 @@
189189
});
190190
</script>
191191

192-
<div id="version" class="version">
193-
VERSION-PLACEHOLDER
194-
</div>
195192
<div id="content" class="content">
196193
<main>
197194
{{{ content }}}

0 commit comments

Comments
 (0)