github.com/rzurga/go-swagger@v0.28.1-0.20211109195225-5d1f453ffa3a/fixtures/bugs/1621/definitions.yaml (about) 1 definitions: 2 3 # Generic response model 4 V4GenericResponse: 5 type: object 6 properties: 7 message: 8 type: string 9 description: A human readable message 10 code: 11 type: string 12 description: | 13 A machine readable [response code](https://github.com/giantswarm/api-spec/blob/master/details/RESPONSE_CODES.md) like e. g. `INVALID_CREDENTIALS` 14 15 # Info resposne 16 V4InfoResponse: 17 type: object 18 properties: 19 general: 20 description: General information 21 type: object 22 properties: 23 installation_name: 24 description: Unique name of the installation 25 type: string 26 provider: 27 description: The technical provider used in this installation. Either "kvm", "aws", or "azure". 28 type: string 29 datacenter: 30 description: Identifier of the datacenter or cloud provider region, e. g. "eu-west-1" 31 type: string 32 workers: 33 description: Information related to worker nodes 34 type: object 35 properties: 36 count_per_cluster: 37 description: Number of workers per cluster 38 type: object 39 properties: 40 max: 41 description: Maximum number of worker a cluster can have 42 type: number 43 default: 44 description: Default number of workers in a new cluster will have, if not specifiec otherwise 45 type: number 46 instance_type: 47 description: Instance types to be used for worker nodes. Only available for AWS clusters. 48 type: object 49 properties: 50 options: 51 description: List of available instance types 52 type: array 53 items: 54 type: string 55 default: 56 description: The instance type used in new cluster, if not specified 57 type: string 58 vm_size: 59 description: Azure Virtual Machine size to be used for worker nodes. Only available for Azure clusters. 60 type: object 61 properties: 62 options: 63 description: List of available instance types 64 type: array 65 items: 66 type: string 67 default: 68 description: The instance type used in new cluster, if not specified 69 type: string 70 71 # Request to create a new cluster 72 V4AddClusterRequest: 73 type: object 74 required: 75 - owner 76 description: Request model for creating a new cluster 77 properties: 78 owner: 79 type: string 80 description: Name of the organization owning the cluster 81 name: 82 type: string 83 description: Cluster name 84 release_version: 85 type: string 86 description: | 87 The [release](https://docs.giantswarm.io/api/#tag/releases) version 88 to use in the new cluster 89 kubernetes_version: 90 type: string 91 description: | 92 Kubernetes version number (deprecated). Doesn't have any effect. 93 This attribute is going to be removed in future API versions. 94 workers: 95 type: array 96 items: 97 $ref: '#/definitions/V4NodeDefinition' 98 99 V4ModifyClusterRequest: 100 type: object 101 required: [] 102 description: Request body for cluster modification 103 properties: 104 name: 105 type: string 106 description: Name for the cluster 107 owner: 108 type: string 109 description: Name of the organization owning the cluster 110 release_version: 111 type: string 112 description: Release version to use after an upgrade 113 workers: 114 type: array 115 description: Worker node array 116 items: 117 $ref: '#/definitions/V4NodeDefinition' 118 119 # Details on existing cluster 120 V4ClusterDetailsResponse: 121 type: object 122 description: Response model showing details of a cluster 123 properties: 124 id: 125 type: string 126 description: Unique cluster identifier 127 api_endpoint: 128 type: string 129 description: URI of the Kubernetes API endpoint 130 create_date: 131 type: string 132 description: Date/time of cluster creation 133 owner: 134 type: string 135 description: Name of the organization owning the cluster 136 name: 137 type: string 138 description: Cluster name 139 release_version: 140 type: string 141 description: | 142 The [release](https://docs.giantswarm.io/api/#tag/releases) version 143 currently running this cluster. 144 kubernetes_version: 145 type: string 146 description: Deprecated. Will be removed in a future API version. 147 workers: 148 type: array 149 items: 150 $ref: '#/definitions/V4NodeDefinition' 151 kvm: 152 type: object 153 description: Attributes specific to clusters running on KVM (on-prem) installations. 154 properties: 155 port_mappings: 156 type: array 157 description: | 158 Reveals the ports on the host cluster that are mapped to this guest cluster's ingress 159 and which protocol that port supports. Only shown and relevant on our on-prem KVM clusters. 160 items: 161 type: object 162 properties: 163 port: 164 description: | 165 The port on the host cluster that will forward traffic to the guest cluster 166 type: integer 167 protocol: 168 description: | 169 The protocol this port mapping is made for. 170 type: string 171 172 # Definition of a cluster node 173 V4NodeDefinition: 174 type: object 175 properties: 176 aws: 177 type: object 178 description: | 179 Attributes specific to nodes running on Amazon Web Services (AWS) 180 properties: 181 instance_type: 182 type: string 183 description: | 184 EC2 instance type name. Must be the same for all worker nodes 185 of a cluster. 186 azure: 187 type: object 188 description: | 189 Attributes specific to nodes running on Microsoft Azure 190 properties: 191 vm_size: 192 type: string 193 description: | 194 Azure Virtual Machine size. Must be the same for all worker nodes 195 of a cluster. 196 memory: 197 type: object 198 properties: 199 size_gb: 200 type: number 201 description: RAM size in GB. Can be an integer or float. 202 storage: 203 type: object 204 properties: 205 size_gb: 206 type: number 207 description: Node storage size in GB. Can be an integer or float. 208 cpu: 209 type: object 210 properties: 211 cores: 212 type: integer 213 description: Number of CPU cores 214 labels: 215 type: object 216 additionalProperties: true 217 218 # List of key pairs 219 V4GetKeyPairsResponse: 220 type: array 221 description: Array of sparse key pair objects 222 items: 223 type: object 224 properties: 225 id: 226 type: string 227 description: Unique identifier of the key pair 228 description: 229 type: string 230 description: Free text information about the key pair 231 ttl_hours: 232 type: integer 233 description: Expiration time (from creation) in hours 234 create_date: 235 type: string 236 description: Date/time of creation 237 common_name: 238 type: string 239 description: The common name of the certificate subject. 240 certificate_organizations: 241 type: string 242 description: The certificate subject's `organization` fields. 243 244 # Add key pair request 245 V4AddKeyPairRequest: 246 type: object 247 required: 248 - description 249 properties: 250 description: 251 type: string 252 description: Free text information about the key pair 253 ttl_hours: 254 type: integer 255 format: int32 256 description: Expiration time (from creation) in hours 257 cn_prefix: 258 type: string 259 description: The common name prefix of the certificate subject. This only allows characters that are usable in domain names (`a-z`, `0-9`, and `.-`, where `.-` must not occur at either the start or the end). 260 certificate_organizations: 261 type: string 262 description: | 263 This will set the certificate subject's `organization` fields. 264 Use a comma seperated list of values. 265 266 V4AddKeyPairResponse: 267 type: object 268 properties: 269 id: 270 type: string 271 description: Unique identifier of the key pair 272 description: 273 type: string 274 description: Free text information about the key pair 275 ttl_hours: 276 type: integer 277 description: Expiration time (from creation) in hours 278 create_date: 279 type: string 280 description: Date/time of creation 281 certificate_authority_data: 282 type: string 283 description: PEM-encoded CA certificate of the cluster 284 client_key_data: 285 type: string 286 description: PEM-encoded RSA private key 287 client_certificate_data: 288 type: string 289 description: PEM-encoded certificate 290 291 # cluster metrics 292 V4GetClusterMetricsResponse: 293 description: Response for the getClusterMetrics operation 294 type: object 295 properties: 296 workers: 297 description: Group of metrics regarding workers 298 type: array 299 items: 300 $ref: '#/definitions/V4NodeMetrics' 301 302 V4NodeMetrics: 303 type: object 304 properties: 305 id: 306 description: String identifying the node 307 type: string 308 metrics: 309 description: Container object for all metrics available for the node 310 type: object 311 properties: 312 container_count: 313 type: object 314 properties: 315 timestamp: 316 description: Time when the given value has been recorded 317 type: string 318 value: 319 description: The value for the metric. Can be an integer or float. 320 type: number 321 pod_count: 322 type: object 323 properties: 324 timestamp: 325 description: Time when the given value has been recorded 326 type: string 327 value: 328 description: The value for the metric. Can be an integer or float. 329 type: number 330 cpu_used: 331 type: object 332 properties: 333 timestamp: 334 description: Time when the given value has been recorded 335 type: string 336 value: 337 description: The value for the metric. Can be an integer or float. 338 type: number 339 ram_free: 340 type: object 341 properties: 342 timestamp: 343 description: Time when the given value has been recorded 344 type: string 345 value: 346 description: The value for the metric. Can be an integer or float. 347 type: number 348 ram_available: 349 type: object 350 properties: 351 timestamp: 352 description: Time when the given value has been recorded 353 type: string 354 value: 355 description: The value for the metric. Can be an integer or float. 356 type: number 357 ram_cached: 358 type: object 359 properties: 360 timestamp: 361 description: Time when the given value has been recorded 362 type: string 363 value: 364 description: The value for the metric. Can be an integer or float. 365 type: number 366 ram_buffers: 367 type: object 368 properties: 369 timestamp: 370 description: Time when the given value has been recorded 371 type: string 372 value: 373 description: The value for the metric. Can be an integer or float. 374 type: number 375 ram_mapped: 376 type: object 377 properties: 378 timestamp: 379 description: Time when the given value has been recorded 380 type: string 381 value: 382 description: The value for the metric. Can be an integer or float. 383 type: number 384 node_storage_used: 385 type: object 386 properties: 387 timestamp: 388 description: Time when the given value has been recorded 389 type: string 390 value: 391 description: The value for the metric. Can be an integer or float. 392 type: number 393 network_rx: 394 type: object 395 properties: 396 timestamp: 397 description: Time when the given value has been recorded 398 type: string 399 value: 400 description: The value for the metric. Can be an integer or float. 401 type: number 402 network_tx: 403 type: object 404 properties: 405 timestamp: 406 description: Time when the given value has been recorded 407 type: string 408 value: 409 description: The value for the metric. Can be an integer or float. 410 type: number 411 resource_cpu_requests: 412 type: object 413 properties: 414 timestamp: 415 description: Time when the given value has been recorded 416 type: string 417 value: 418 description: The value for the metric. Can be an integer or float. 419 type: number 420 resource_cpu_limits: 421 type: object 422 properties: 423 timestamp: 424 description: Time when the given value has been recorded 425 type: string 426 value: 427 description: The value for the metric. Can be an integer or float. 428 type: number 429 resource_ram_requests: 430 type: object 431 properties: 432 timestamp: 433 description: Time when the given value has been recorded 434 type: string 435 value: 436 description: The value for the metric. Can be an integer or float. 437 type: number 438 resource_ram_limits: 439 type: object 440 properties: 441 timestamp: 442 description: Time when the given value has been recorded 443 type: string 444 value: 445 description: The value for the metric. Can be an integer or float. 446 type: number 447 448 # a complete organization object 449 V4Organization: 450 type: object 451 properties: 452 id: 453 type: string 454 description: Unique name/identifier of the organization 455 members: 456 type: array 457 description: List of members that belong to this organization 458 items: 459 $ref: '#/definitions/V4OrganizationMember' 460 461 # An organization as returned by getOrganizations as an array item 462 V4OrganizationListItem: 463 type: object 464 properties: 465 id: 466 type: string 467 description: Unique name/identifier of the organization 468 469 # A user that belongs to an organization 470 V4OrganizationMember: 471 type: object 472 properties: 473 email: 474 type: string 475 description: Email address of the user 476 477 # One of the users in the array as returned by getUsers 478 V4UserListItem: 479 type: object 480 properties: 481 email: 482 type: string 483 description: Email address of the user 484 created: 485 type: string 486 description: The date and time that this account was created 487 expiry: 488 type: string 489 description: The date and time when this account will expire 490 491 # A cluster array item, as return by getClusters 492 V4ClusterListItem: 493 type: object 494 properties: 495 id: 496 type: string 497 description: Unique cluster identifier 498 create_date: 499 type: string 500 description: Date/time of cluster creation 501 name: 502 type: string 503 description: Cluster name 504 owner: 505 type: string 506 description: Name of the organization owning the cluster 507 release_version: 508 type: string 509 description: The semantic version number of this cluster 510 511 # A cluster array item, as return by getClusters 512 V4ReleaseListItem: 513 type: object 514 required: ["version", "timestamp", "changelog", "components"] 515 properties: 516 version: 517 type: string 518 description: The semantic version number 519 timestamp: 520 type: string 521 description: Date and time of the release creation 522 active: 523 type: boolean 524 description: | 525 If true, the version is available for new clusters and cluster 526 upgrades. Older versions become unavailable and thus have the 527 value `false` here. 528 changelog: 529 description: | 530 Structured list of changes in this release, in comparison to the 531 previous version, with respect to the contained components. 532 type: array 533 items: 534 type: object 535 properties: 536 component: 537 type: string 538 description: | 539 If the changed item was a component, this attribute is the 540 name of the component. 541 description: 542 type: string 543 description: Human-friendly description of the change 544 components: 545 description: | 546 List of components and their version contained in the release 547 type: array 548 items: 549 type: object 550 required: ["name", "version"] 551 properties: 552 name: 553 type: string 554 description: Name of the component 555 version: 556 type: string 557 description: Version number of the component 558 559 V4CreateUserRequest: 560 type: object 561 required: 562 - password 563 description: Request model for creating a new user 564 properties: 565 password: 566 type: string 567 description: A Base64 encoded password 568 expiry: 569 type: string 570 description: The date and time when this account will expire 571 572 V4AddCredentialsRequest: 573 type: object 574 required: 575 - provider 576 description: Request model for adding a set of credentials 577 properties: 578 provider: 579 type: string 580 aws: 581 type: object 582 description: Credentials specific to an AWS account 583 required: 584 - roles 585 properties: 586 roles: 587 type: object 588 description: IAM roles to assume by certain entities 589 required: 590 - awsoperator 591 - admin 592 properties: 593 admin: 594 type: string 595 description: ARN of the IAM role to assume by Giant Swarm support staff 596 awsoperator: 597 type: string 598 description: ARN of the IAM role to assume by the software operating clusters 599 600 # A request for an auth token 601 V4CreateAuthTokenRequest: 602 type: object 603 properties: 604 email: 605 type: string 606 description: Your email address 607 password_base64: 608 type: string 609 description: Your password as a base64 encoded string 610 611 # A response to a successful auth token request 612 V4CreateAuthTokenResponse: 613 type: object 614 properties: 615 auth_token: 616 type: string 617 description: The newly created API token 618