github.com/ferryproxy/api@v0.4.2/config/crd/bases/traffic.ferryproxy.io_hubs.yaml (about) 1 --- 2 apiVersion: apiextensions.k8s.io/v1 3 kind: CustomResourceDefinition 4 metadata: 5 annotations: 6 controller-gen.kubebuilder.io/version: v0.9.2 7 creationTimestamp: null 8 name: hubs.traffic.ferryproxy.io 9 spec: 10 group: traffic.ferryproxy.io 11 names: 12 kind: Hub 13 listKind: HubList 14 plural: hubs 15 singular: hub 16 scope: Namespaced 17 versions: 18 - additionalPrinterColumns: 19 - jsonPath: .status.phase 20 name: status 21 type: string 22 - jsonPath: .status.lastSynchronizationTimestamp 23 name: last-synchronization 24 type: date 25 - jsonPath: .metadata.creationTimestamp 26 name: age 27 type: date 28 name: v1alpha2 29 schema: 30 openAPIV3Schema: 31 description: Hub is the Schema for the hubs API 32 properties: 33 apiVersion: 34 description: 'APIVersion defines the versioned schema of this representation 35 of an object. Servers should convert recognized schemas to the latest 36 internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' 37 type: string 38 kind: 39 description: 'Kind is a string value representing the REST resource this 40 object represents. Servers may infer this from the endpoint the client 41 submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' 42 type: string 43 metadata: 44 type: object 45 spec: 46 description: HubSpec defines the desired state of Hub 47 properties: 48 gateway: 49 description: Gateway is the default gateway of this Hub 50 properties: 51 address: 52 description: Address is the address of this Hub, used when Reachable 53 is true 54 type: string 55 navigationProxy: 56 description: NavigationProxy is a list of proxies through which 57 this Hub to reach other Hubs must need to go through, used when 58 this Hub reaches other Hubs 59 items: 60 description: HubSpecGatewayProxy defines the desired state of 61 HubSpecGateway 62 properties: 63 hubName: 64 description: HubName is the name of Hub to proxy, cannot 65 be specified together with Proxy 66 type: string 67 proxy: 68 description: Proxy is the proxy to use, cannot be specified 69 together with HubName 70 type: string 71 type: object 72 type: array 73 navigationWay: 74 description: NavigationWay is a list of Hub names through which 75 this Hub needs to reach other Hubs, used when this Hub reaches 76 other Hubs, used by RoutePolicy to calculate Routes 77 items: 78 description: HubSpecGatewayWay defines the desired state of 79 HubSpecGateway 80 properties: 81 hubName: 82 description: HubName is the name of Hub 83 type: string 84 required: 85 - hubName 86 type: object 87 type: array 88 reachable: 89 description: Reachable indicates that this Hub is reachable 90 type: boolean 91 receptionProxy: 92 description: ReceptionProxy is a list of proxies through which 93 other Hubs to reach this Hub must need to go through, used when 94 other Hubs reaches this Hub and Reachable is true 95 items: 96 description: HubSpecGatewayProxy defines the desired state of 97 HubSpecGateway 98 properties: 99 hubName: 100 description: HubName is the name of Hub to proxy, cannot 101 be specified together with Proxy 102 type: string 103 proxy: 104 description: Proxy is the proxy to use, cannot be specified 105 together with HubName 106 type: string 107 type: object 108 type: array 109 receptionWay: 110 description: ReceptionWay is a list of Hub names through which 111 other hubs needs to reach this Hub, used when other Hubs reaches 112 this Hub and Reachable is true, used by RoutePolicy to calculate 113 Routes 114 items: 115 description: HubSpecGatewayWay defines the desired state of 116 HubSpecGateway 117 properties: 118 hubName: 119 description: HubName is the name of Hub 120 type: string 121 required: 122 - hubName 123 type: object 124 type: array 125 required: 126 - reachable 127 type: object 128 override: 129 additionalProperties: 130 description: HubSpecGateway defines the desired state of Hub 131 properties: 132 address: 133 description: Address is the address of this Hub, used when Reachable 134 is true 135 type: string 136 navigationProxy: 137 description: NavigationProxy is a list of proxies through which 138 this Hub to reach other Hubs must need to go through, used 139 when this Hub reaches other Hubs 140 items: 141 description: HubSpecGatewayProxy defines the desired state 142 of HubSpecGateway 143 properties: 144 hubName: 145 description: HubName is the name of Hub to proxy, cannot 146 be specified together with Proxy 147 type: string 148 proxy: 149 description: Proxy is the proxy to use, cannot be specified 150 together with HubName 151 type: string 152 type: object 153 type: array 154 navigationWay: 155 description: NavigationWay is a list of Hub names through which 156 this Hub needs to reach other Hubs, used when this Hub reaches 157 other Hubs, used by RoutePolicy to calculate Routes 158 items: 159 description: HubSpecGatewayWay defines the desired state of 160 HubSpecGateway 161 properties: 162 hubName: 163 description: HubName is the name of Hub 164 type: string 165 required: 166 - hubName 167 type: object 168 type: array 169 reachable: 170 description: Reachable indicates that this Hub is reachable 171 type: boolean 172 receptionProxy: 173 description: ReceptionProxy is a list of proxies through which 174 other Hubs to reach this Hub must need to go through, used 175 when other Hubs reaches this Hub and Reachable is true 176 items: 177 description: HubSpecGatewayProxy defines the desired state 178 of HubSpecGateway 179 properties: 180 hubName: 181 description: HubName is the name of Hub to proxy, cannot 182 be specified together with Proxy 183 type: string 184 proxy: 185 description: Proxy is the proxy to use, cannot be specified 186 together with HubName 187 type: string 188 type: object 189 type: array 190 receptionWay: 191 description: ReceptionWay is a list of Hub names through which 192 other hubs needs to reach this Hub, used when other Hubs reaches 193 this Hub and Reachable is true, used by RoutePolicy to calculate 194 Routes 195 items: 196 description: HubSpecGatewayWay defines the desired state of 197 HubSpecGateway 198 properties: 199 hubName: 200 description: HubName is the name of Hub 201 type: string 202 required: 203 - hubName 204 type: object 205 type: array 206 required: 207 - reachable 208 type: object 209 description: Override will replace the peer default gateway, the key 210 is the name of peer Hub 211 type: object 212 required: 213 - gateway 214 type: object 215 status: 216 description: HubStatus defines the observed state of Hub 217 properties: 218 conditions: 219 description: Conditions current service state 220 items: 221 description: "Condition contains details for one aspect of the current 222 state of this API Resource. --- This struct is intended for direct 223 use as an array at the field path .status.conditions. For example, 224 type FooStatus struct{ // Represents the observations of a foo's 225 current state. // Known .status.conditions.type are: \"Available\", 226 \"Progressing\", and \"Degraded\" // +patchMergeKey=type // +patchStrategy=merge 227 // +listType=map // +listMapKey=type Conditions []metav1.Condition 228 `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\" 229 protobuf:\"bytes,1,rep,name=conditions\"` \n // other fields }" 230 properties: 231 lastTransitionTime: 232 description: lastTransitionTime is the last time the condition 233 transitioned from one status to another. This should be when 234 the underlying condition changed. If that is not known, then 235 using the time when the API field changed is acceptable. 236 format: date-time 237 type: string 238 message: 239 description: message is a human readable message indicating 240 details about the transition. This may be an empty string. 241 maxLength: 32768 242 type: string 243 observedGeneration: 244 description: observedGeneration represents the .metadata.generation 245 that the condition was set based upon. For instance, if .metadata.generation 246 is currently 12, but the .status.conditions[x].observedGeneration 247 is 9, the condition is out of date with respect to the current 248 state of the instance. 249 format: int64 250 minimum: 0 251 type: integer 252 reason: 253 description: reason contains a programmatic identifier indicating 254 the reason for the condition's last transition. Producers 255 of specific condition types may define expected values and 256 meanings for this field, and whether the values are considered 257 a guaranteed API. The value should be a CamelCase string. 258 This field may not be empty. 259 maxLength: 1024 260 minLength: 1 261 pattern: ^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ 262 type: string 263 status: 264 description: status of the condition, one of True, False, Unknown. 265 enum: 266 - "True" 267 - "False" 268 - Unknown 269 type: string 270 type: 271 description: type of condition in CamelCase or in foo.example.com/CamelCase. 272 --- Many .condition.type values are consistent across resources 273 like Available, but because arbitrary conditions can be useful 274 (see .node.status.conditions), the ability to deconflict is 275 important. The regex it matches is (dns1123SubdomainFmt/)?(qualifiedNameFmt) 276 maxLength: 316 277 pattern: ^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$ 278 type: string 279 required: 280 - lastTransitionTime 281 - message 282 - reason 283 - status 284 - type 285 type: object 286 type: array 287 lastSynchronizationTimestamp: 288 description: LastSynchronizationTimestamp is the last time synchronization 289 format: date-time 290 type: string 291 phase: 292 description: Phase is the phase of the Hub 293 type: string 294 type: object 295 type: object 296 served: true 297 storage: true 298 subresources: 299 status: {}