Skip to content

Commit ce4bd3f

Browse files
committed
Address linter violations, updated multicluster-runtime dependency, and added CRD documentation generated via 'make api-docs'
1 parent 3aab859 commit ce4bd3f

File tree

11 files changed

+1887
-13
lines changed

11 files changed

+1887
-13
lines changed

cmd/main.go

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -178,7 +178,11 @@ func main() {
178178
})
179179

180180
default:
181-
setupLog.Error(fmt.Errorf("unsupported cluster discovery mode. Got %q, expected one of %s", clusterDiscoveryMode, strings.Join(providers.AllowedProviders, ",")), "")
181+
setupLog.Error(fmt.Errorf(
182+
"unsupported cluster discovery mode. Got %q, expected one of %s",
183+
clusterDiscoveryMode,
184+
strings.Join(providers.AllowedProviders, ","),
185+
), "")
182186
os.Exit(1)
183187
}
184188

docs/api/locations.md

Lines changed: 293 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,293 @@
1+
# API Reference
2+
3+
Packages:
4+
5+
- [networking.datumapis.com/v1alpha](#networkingdatumapiscomv1alpha)
6+
7+
# networking.datumapis.com/v1alpha
8+
9+
Resource Types:
10+
11+
- [Location](#location)
12+
13+
14+
15+
16+
## Location
17+
<sup><sup>[↩ Parent](#networkingdatumapiscomv1alpha )</sup></sup>
18+
19+
20+
21+
22+
23+
24+
Location is the Schema for the locations API.
25+
26+
<table>
27+
<thead>
28+
<tr>
29+
<th>Name</th>
30+
<th>Type</th>
31+
<th>Description</th>
32+
<th>Required</th>
33+
</tr>
34+
</thead>
35+
<tbody><tr>
36+
<td><b>apiVersion</b></td>
37+
<td>string</td>
38+
<td>networking.datumapis.com/v1alpha</td>
39+
<td>true</td>
40+
</tr>
41+
<tr>
42+
<td><b>kind</b></td>
43+
<td>string</td>
44+
<td>Location</td>
45+
<td>true</td>
46+
</tr>
47+
<tr>
48+
<td><b><a href="https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.27/#objectmeta-v1-meta">metadata</a></b></td>
49+
<td>object</td>
50+
<td>Refer to the Kubernetes API documentation for the fields of the `metadata` field.</td>
51+
<td>true</td>
52+
</tr><tr>
53+
<td><b><a href="#locationspec">spec</a></b></td>
54+
<td>object</td>
55+
<td>
56+
LocationSpec defines the desired state of Location.<br/>
57+
</td>
58+
<td>false</td>
59+
</tr><tr>
60+
<td><b><a href="#locationstatus">status</a></b></td>
61+
<td>object</td>
62+
<td>
63+
LocationStatus defines the observed state of Location.<br/>
64+
</td>
65+
<td>false</td>
66+
</tr></tbody>
67+
</table>
68+
69+
70+
### Location.spec
71+
<sup><sup>[↩ Parent](#location)</sup></sup>
72+
73+
74+
75+
LocationSpec defines the desired state of Location.
76+
77+
<table>
78+
<thead>
79+
<tr>
80+
<th>Name</th>
81+
<th>Type</th>
82+
<th>Description</th>
83+
<th>Required</th>
84+
</tr>
85+
</thead>
86+
<tbody><tr>
87+
<td><b>locationClassName</b></td>
88+
<td>string</td>
89+
<td>
90+
The location class that indicates control plane behavior of entities
91+
associated with the location.
92+
93+
Valid values are:
94+
- datum-managed
95+
- self-managed<br/>
96+
</td>
97+
<td>true</td>
98+
</tr><tr>
99+
<td><b><a href="#locationspecprovider">provider</a></b></td>
100+
<td>object</td>
101+
<td>
102+
The location provider<br/>
103+
</td>
104+
<td>true</td>
105+
</tr><tr>
106+
<td><b>topology</b></td>
107+
<td>map[string]string</td>
108+
<td>
109+
The topology of the location
110+
111+
This may contain arbitrary topology keys. Some keys may be well known, such
112+
as:
113+
- topology.datum.net/city-code<br/>
114+
</td>
115+
<td>true</td>
116+
</tr></tbody>
117+
</table>
118+
119+
120+
### Location.spec.provider
121+
<sup><sup>[↩ Parent](#locationspec)</sup></sup>
122+
123+
124+
125+
The location provider
126+
127+
<table>
128+
<thead>
129+
<tr>
130+
<th>Name</th>
131+
<th>Type</th>
132+
<th>Description</th>
133+
<th>Required</th>
134+
</tr>
135+
</thead>
136+
<tbody><tr>
137+
<td><b><a href="#locationspecprovidergcp">gcp</a></b></td>
138+
<td>object</td>
139+
<td>
140+
<br/>
141+
</td>
142+
<td>false</td>
143+
</tr></tbody>
144+
</table>
145+
146+
147+
### Location.spec.provider.gcp
148+
<sup><sup>[↩ Parent](#locationspecprovider)</sup></sup>
149+
150+
151+
152+
153+
154+
<table>
155+
<thead>
156+
<tr>
157+
<th>Name</th>
158+
<th>Type</th>
159+
<th>Description</th>
160+
<th>Required</th>
161+
</tr>
162+
</thead>
163+
<tbody><tr>
164+
<td><b>projectId</b></td>
165+
<td>string</td>
166+
<td>
167+
The GCP project servicing the location
168+
169+
For locations with the class of `datum-managed`, a service account will be
170+
required for each unique GCP project ID across all locations registered in a
171+
namespace.<br/>
172+
</td>
173+
<td>true</td>
174+
</tr><tr>
175+
<td><b>region</b></td>
176+
<td>string</td>
177+
<td>
178+
The GCP region servicing the location<br/>
179+
</td>
180+
<td>true</td>
181+
</tr><tr>
182+
<td><b>zone</b></td>
183+
<td>string</td>
184+
<td>
185+
The GCP zone servicing the location<br/>
186+
</td>
187+
<td>true</td>
188+
</tr></tbody>
189+
</table>
190+
191+
192+
### Location.status
193+
<sup><sup>[↩ Parent](#location)</sup></sup>
194+
195+
196+
197+
LocationStatus defines the observed state of Location.
198+
199+
<table>
200+
<thead>
201+
<tr>
202+
<th>Name</th>
203+
<th>Type</th>
204+
<th>Description</th>
205+
<th>Required</th>
206+
</tr>
207+
</thead>
208+
<tbody><tr>
209+
<td><b><a href="#locationstatusconditionsindex">conditions</a></b></td>
210+
<td>[]object</td>
211+
<td>
212+
Represents the observations of a location's current state.<br/>
213+
</td>
214+
<td>false</td>
215+
</tr></tbody>
216+
</table>
217+
218+
219+
### Location.status.conditions[index]
220+
<sup><sup>[↩ Parent](#locationstatus)</sup></sup>
221+
222+
223+
224+
Condition contains details for one aspect of the current state of this API Resource.
225+
226+
<table>
227+
<thead>
228+
<tr>
229+
<th>Name</th>
230+
<th>Type</th>
231+
<th>Description</th>
232+
<th>Required</th>
233+
</tr>
234+
</thead>
235+
<tbody><tr>
236+
<td><b>lastTransitionTime</b></td>
237+
<td>string</td>
238+
<td>
239+
lastTransitionTime is the last time the condition transitioned from one status to another.
240+
This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.<br/>
241+
<br/>
242+
<i>Format</i>: date-time<br/>
243+
</td>
244+
<td>true</td>
245+
</tr><tr>
246+
<td><b>message</b></td>
247+
<td>string</td>
248+
<td>
249+
message is a human readable message indicating details about the transition.
250+
This may be an empty string.<br/>
251+
</td>
252+
<td>true</td>
253+
</tr><tr>
254+
<td><b>reason</b></td>
255+
<td>string</td>
256+
<td>
257+
reason contains a programmatic identifier indicating the reason for the condition's last transition.
258+
Producers of specific condition types may define expected values and meanings for this field,
259+
and whether the values are considered a guaranteed API.
260+
The value should be a CamelCase string.
261+
This field may not be empty.<br/>
262+
</td>
263+
<td>true</td>
264+
</tr><tr>
265+
<td><b>status</b></td>
266+
<td>enum</td>
267+
<td>
268+
status of the condition, one of True, False, Unknown.<br/>
269+
<br/>
270+
<i>Enum</i>: True, False, Unknown<br/>
271+
</td>
272+
<td>true</td>
273+
</tr><tr>
274+
<td><b>type</b></td>
275+
<td>string</td>
276+
<td>
277+
type of condition in CamelCase or in foo.example.com/CamelCase.<br/>
278+
</td>
279+
<td>true</td>
280+
</tr><tr>
281+
<td><b>observedGeneration</b></td>
282+
<td>integer</td>
283+
<td>
284+
observedGeneration represents the .metadata.generation that the condition was set based upon.
285+
For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date
286+
with respect to the current state of the instance.<br/>
287+
<br/>
288+
<i>Format</i>: int64<br/>
289+
<i>Minimum</i>: 0<br/>
290+
</td>
291+
<td>false</td>
292+
</tr></tbody>
293+
</table>

0 commit comments

Comments
 (0)