From ee469368fe7bdcde9600d05d042726ae57b11328 Mon Sep 17 00:00:00 2001 From: dawang Date: Mon, 23 Mar 2026 14:47:17 +0800 Subject: [PATCH 1/3] HYPERFLEET-732 - feat: add UUID field to Cluster and NodePool resources --- models-core/cluster/example_cluster.tsp | 1 + models-core/nodepool/example_nodepool.tsp | 1 + models-gcp/cluster/example_cluster.tsp | 1 + models-gcp/nodepool/example_nodepool.tsp | 1 + models/clusters/model.tsp | 9 ++++ models/nodepools/model.tsp | 9 ++++ schemas/core/openapi.yaml | 42 +++++++++++++++ schemas/core/swagger.yaml | 62 +++++++++++++++++++++++ schemas/gcp/openapi.yaml | 42 +++++++++++++++ schemas/gcp/swagger.yaml | 62 +++++++++++++++++++++++ 10 files changed, 230 insertions(+) diff --git a/models-core/cluster/example_cluster.tsp b/models-core/cluster/example_cluster.tsp index b7034ee..78f3d04 100644 --- a/models-core/cluster/example_cluster.tsp +++ b/models-core/cluster/example_cluster.tsp @@ -6,6 +6,7 @@ const exampleCluster: Cluster = #{ kind: "Cluster", id: "cluster-123", href: "https://api.hyperfleet.com/v1/clusters/cluster-123", + uuid: "550e8400-e29b-41d4-a716-446655440000", name: "cluster-123", labels: #{ environment: "production", team: "platform" }, spec: #{}, diff --git a/models-core/nodepool/example_nodepool.tsp b/models-core/nodepool/example_nodepool.tsp index 349a518..dfecaaa 100644 --- a/models-core/nodepool/example_nodepool.tsp +++ b/models-core/nodepool/example_nodepool.tsp @@ -6,6 +6,7 @@ const exampleNodePool: NodePool = #{ kind: "NodePool", id: "nodepool-123", href: "https://api.hyperfleet.com/v1/nodepools/nodepool-123", + uuid: "7c9e6679-7425-40de-944b-e07fc1f90ae7", name: "worker-pool-1", labels: #{ environment: "production", pooltype: "worker" }, spec: #{}, diff --git a/models-gcp/cluster/example_cluster.tsp b/models-gcp/cluster/example_cluster.tsp index a732e36..ec0935f 100644 --- a/models-gcp/cluster/example_cluster.tsp +++ b/models-gcp/cluster/example_cluster.tsp @@ -6,6 +6,7 @@ const exampleCluster: Cluster = #{ kind: "Cluster", id: "cluster-123", href: "https://api.hyperfleet.com/v1/clusters/cluster-123", + uuid: "550e8400-e29b-41d4-a716-446655440000", name: "cluster-123", labels: #{ environment: "production", team: "platform" }, spec: #{ diff --git a/models-gcp/nodepool/example_nodepool.tsp b/models-gcp/nodepool/example_nodepool.tsp index 3f158fc..a376efb 100644 --- a/models-gcp/nodepool/example_nodepool.tsp +++ b/models-gcp/nodepool/example_nodepool.tsp @@ -5,6 +5,7 @@ const exampleNodePool: NodePool = #{ kind: "NodePool", id: "nodepool-123", href: "https://api.hyperfleet.com/v1/nodepools/nodepool-123", + uuid: "7c9e6679-7425-40de-944b-e07fc1f90ae7", name: "worker-pool-1", labels: #{ environment: "production", pooltype: "worker" }, generation: 1, diff --git a/models/clusters/model.tsp b/models/clusters/model.tsp index dca17b2..f8fa0b4 100644 --- a/models/clusters/model.tsp +++ b/models/clusters/model.tsp @@ -5,6 +5,15 @@ import "../../aliases.tsp"; model ClusterBase { ...APIResource; + /** + * RFC4122 UUID identifier for the cluster (immutable, assigned at creation). + * This provides a stable, standards-compliant identifier for platform integrations + * that require UUID format (e.g., Hypershift spec.clusterID). + */ + @format("uuid") + @example("550e8400-e29b-41d4-a716-446655440000") + uuid?: string; + /** * Cluster name (unique) */ diff --git a/models/nodepools/model.tsp b/models/nodepools/model.tsp index 4dd5d37..dfb65dc 100644 --- a/models/nodepools/model.tsp +++ b/models/nodepools/model.tsp @@ -5,6 +5,15 @@ import "../../aliases.tsp"; model NodePoolBase { ...APIResource; + /** + * RFC4122 UUID identifier for the nodepool (immutable, assigned at creation). + * This provides a stable, standards-compliant identifier for platform integrations + * that require UUID format. + */ + @format("uuid") + @example("7c9e6679-7425-40de-944b-e07fc1f90ae7") + uuid?: string; + /** * NodePool name (unique in a cluster) */ diff --git a/schemas/core/openapi.yaml b/schemas/core/openapi.yaml index 24e44b0..1bb83ae 100644 --- a/schemas/core/openapi.yaml +++ b/schemas/core/openapi.yaml @@ -725,6 +725,14 @@ components: additionalProperties: type: string description: labels for the API resource as pairs of name:value strings + uuid: + type: string + format: uuid + description: |- + RFC4122 UUID identifier for the cluster (immutable, assigned at creation). + This provides a stable, standards-compliant identifier for platform integrations + that require UUID format (e.g., Hypershift spec.clusterID). + example: 550e8400-e29b-41d4-a716-446655440000 name: type: string minLength: 3 @@ -756,6 +764,7 @@ components: kind: Cluster id: cluster-123 href: https://api.hyperfleet.com/v1/clusters/cluster-123 + uuid: 550e8400-e29b-41d4-a716-446655440000 name: cluster-123 labels: environment: production @@ -820,6 +829,14 @@ components: additionalProperties: type: string description: labels for the API resource as pairs of name:value strings + uuid: + type: string + format: uuid + description: |- + RFC4122 UUID identifier for the cluster (immutable, assigned at creation). + This provides a stable, standards-compliant identifier for platform integrations + that require UUID format (e.g., Hypershift spec.clusterID). + example: 550e8400-e29b-41d4-a716-446655440000 name: type: string minLength: 3 @@ -982,6 +999,14 @@ components: additionalProperties: type: string description: labels for the API resource as pairs of name:value strings + uuid: + type: string + format: uuid + description: |- + RFC4122 UUID identifier for the nodepool (immutable, assigned at creation). + This provides a stable, standards-compliant identifier for platform integrations + that require UUID format. + example: 7c9e6679-7425-40de-944b-e07fc1f90ae7 name: type: string minLength: 3 @@ -1015,6 +1040,7 @@ components: kind: NodePool id: nodepool-123 href: https://api.hyperfleet.com/v1/nodepools/nodepool-123 + uuid: 7c9e6679-7425-40de-944b-e07fc1f90ae7 name: worker-pool-1 labels: environment: production @@ -1083,6 +1109,14 @@ components: additionalProperties: type: string description: labels for the API resource as pairs of name:value strings + uuid: + type: string + format: uuid + description: |- + RFC4122 UUID identifier for the nodepool (immutable, assigned at creation). + This provides a stable, standards-compliant identifier for platform integrations + that require UUID format. + example: 7c9e6679-7425-40de-944b-e07fc1f90ae7 name: type: string minLength: 3 @@ -1124,6 +1158,14 @@ components: additionalProperties: type: string description: labels for the API resource as pairs of name:value strings + uuid: + type: string + format: uuid + description: |- + RFC4122 UUID identifier for the nodepool (immutable, assigned at creation). + This provides a stable, standards-compliant identifier for platform integrations + that require UUID format. + example: 7c9e6679-7425-40de-944b-e07fc1f90ae7 name: type: string minLength: 3 diff --git a/schemas/core/swagger.yaml b/schemas/core/swagger.yaml index a4ecca9..a76492a 100644 --- a/schemas/core/swagger.yaml +++ b/schemas/core/swagger.yaml @@ -874,6 +874,7 @@ definitions: type: Adapter2Successful updated_by: user-123@example.com updated_time: '2021-01-01T00:00:00Z' + uuid: 550e8400-e29b-41d4-a716-446655440000 properties: created_by: format: email @@ -918,6 +919,18 @@ definitions: updated_time: format: date-time type: string + uuid: + description: >- + RFC4122 UUID identifier for the cluster (immutable, assigned at + creation). + + This provides a stable, standards-compliant identifier for platform + integrations + + that require UUID format (e.g., Hypershift spec.clusterID). + example: 550e8400-e29b-41d4-a716-446655440000 + format: uuid + type: string required: - name - spec @@ -959,6 +972,18 @@ definitions: type: string spec: $ref: '#/definitions/ClusterSpec' + uuid: + description: >- + RFC4122 UUID identifier for the cluster (immutable, assigned at + creation). + + This provides a stable, standards-compliant identifier for platform + integrations + + that require UUID format (e.g., Hypershift spec.clusterID). + example: 550e8400-e29b-41d4-a716-446655440000 + format: uuid + type: string required: - name - spec @@ -1148,6 +1173,7 @@ definitions: type: Adapter2Successful updated_by: user-123@example.com updated_time: '2021-01-01T00:00:00Z' + uuid: 7c9e6679-7425-40de-944b-e07fc1f90ae7 properties: created_by: format: email @@ -1194,6 +1220,18 @@ definitions: updated_time: format: date-time type: string + uuid: + description: >- + RFC4122 UUID identifier for the nodepool (immutable, assigned at + creation). + + This provides a stable, standards-compliant identifier for platform + integrations + + that require UUID format. + example: 7c9e6679-7425-40de-944b-e07fc1f90ae7 + format: uuid + type: string required: - name - spec @@ -1235,6 +1273,18 @@ definitions: type: string spec: $ref: '#/definitions/NodePoolSpec' + uuid: + description: >- + RFC4122 UUID identifier for the nodepool (immutable, assigned at + creation). + + This provides a stable, standards-compliant identifier for platform + integrations + + that require UUID format. + example: 7c9e6679-7425-40de-944b-e07fc1f90ae7 + format: uuid + type: string required: - name - spec @@ -1286,6 +1336,18 @@ definitions: updated_time: format: date-time type: string + uuid: + description: >- + RFC4122 UUID identifier for the nodepool (immutable, assigned at + creation). + + This provides a stable, standards-compliant identifier for platform + integrations + + that require UUID format. + example: 7c9e6679-7425-40de-944b-e07fc1f90ae7 + format: uuid + type: string required: - name - spec diff --git a/schemas/gcp/openapi.yaml b/schemas/gcp/openapi.yaml index 2e9b451..476f998 100644 --- a/schemas/gcp/openapi.yaml +++ b/schemas/gcp/openapi.yaml @@ -604,6 +604,14 @@ components: additionalProperties: type: string description: labels for the API resource as pairs of name:value strings + uuid: + type: string + format: uuid + description: |- + RFC4122 UUID identifier for the cluster (immutable, assigned at creation). + This provides a stable, standards-compliant identifier for platform integrations + that require UUID format (e.g., Hypershift spec.clusterID). + example: 550e8400-e29b-41d4-a716-446655440000 name: type: string minLength: 3 @@ -635,6 +643,7 @@ components: kind: Cluster id: cluster-123 href: https://api.hyperfleet.com/v1/clusters/cluster-123 + uuid: 550e8400-e29b-41d4-a716-446655440000 name: cluster-123 labels: environment: production @@ -718,6 +727,14 @@ components: additionalProperties: type: string description: labels for the API resource as pairs of name:value strings + uuid: + type: string + format: uuid + description: |- + RFC4122 UUID identifier for the cluster (immutable, assigned at creation). + This provides a stable, standards-compliant identifier for platform integrations + that require UUID format (e.g., Hypershift spec.clusterID). + example: 550e8400-e29b-41d4-a716-446655440000 name: type: string minLength: 3 @@ -939,6 +956,14 @@ components: additionalProperties: type: string description: labels for the API resource as pairs of name:value strings + uuid: + type: string + format: uuid + description: |- + RFC4122 UUID identifier for the nodepool (immutable, assigned at creation). + This provides a stable, standards-compliant identifier for platform integrations + that require UUID format. + example: 7c9e6679-7425-40de-944b-e07fc1f90ae7 name: type: string minLength: 3 @@ -972,6 +997,7 @@ components: kind: NodePool id: nodepool-123 href: https://api.hyperfleet.com/v1/nodepools/nodepool-123 + uuid: 7c9e6679-7425-40de-944b-e07fc1f90ae7 name: worker-pool-1 labels: environment: production @@ -1059,6 +1085,14 @@ components: additionalProperties: type: string description: labels for the API resource as pairs of name:value strings + uuid: + type: string + format: uuid + description: |- + RFC4122 UUID identifier for the nodepool (immutable, assigned at creation). + This provides a stable, standards-compliant identifier for platform integrations + that require UUID format. + example: 7c9e6679-7425-40de-944b-e07fc1f90ae7 name: type: string minLength: 3 @@ -1119,6 +1153,14 @@ components: additionalProperties: type: string description: labels for the API resource as pairs of name:value strings + uuid: + type: string + format: uuid + description: |- + RFC4122 UUID identifier for the nodepool (immutable, assigned at creation). + This provides a stable, standards-compliant identifier for platform integrations + that require UUID format. + example: 7c9e6679-7425-40de-944b-e07fc1f90ae7 name: type: string minLength: 3 diff --git a/schemas/gcp/swagger.yaml b/schemas/gcp/swagger.yaml index 1f0c7a2..abae5f9 100644 --- a/schemas/gcp/swagger.yaml +++ b/schemas/gcp/swagger.yaml @@ -761,6 +761,7 @@ definitions: type: Adapter2Successful updated_by: user-123@example.com updated_time: '2021-01-01T00:00:00Z' + uuid: 550e8400-e29b-41d4-a716-446655440000 properties: created_by: format: email @@ -805,6 +806,18 @@ definitions: updated_time: format: date-time type: string + uuid: + description: >- + RFC4122 UUID identifier for the cluster (immutable, assigned at + creation). + + This provides a stable, standards-compliant identifier for platform + integrations + + that require UUID format (e.g., Hypershift spec.clusterID). + example: 550e8400-e29b-41d4-a716-446655440000 + format: uuid + type: string required: - name - spec @@ -865,6 +878,18 @@ definitions: type: string spec: $ref: '#/definitions/ClusterSpec' + uuid: + description: >- + RFC4122 UUID identifier for the cluster (immutable, assigned at + creation). + + This provides a stable, standards-compliant identifier for platform + integrations + + that require UUID format (e.g., Hypershift spec.clusterID). + example: 550e8400-e29b-41d4-a716-446655440000 + format: uuid + type: string required: - name - spec @@ -1111,6 +1136,7 @@ definitions: type: NodePoolSuccessful updated_by: user-123@example.com updated_time: '2021-01-01T00:00:00Z' + uuid: 7c9e6679-7425-40de-944b-e07fc1f90ae7 properties: created_by: format: email @@ -1157,6 +1183,18 @@ definitions: updated_time: format: date-time type: string + uuid: + description: >- + RFC4122 UUID identifier for the nodepool (immutable, assigned at + creation). + + This provides a stable, standards-compliant identifier for platform + integrations + + that require UUID format. + example: 7c9e6679-7425-40de-944b-e07fc1f90ae7 + format: uuid + type: string required: - name - spec @@ -1217,6 +1255,18 @@ definitions: type: string spec: $ref: '#/definitions/NodePoolSpec' + uuid: + description: >- + RFC4122 UUID identifier for the nodepool (immutable, assigned at + creation). + + This provides a stable, standards-compliant identifier for platform + integrations + + that require UUID format. + example: 7c9e6679-7425-40de-944b-e07fc1f90ae7 + format: uuid + type: string required: - name - spec @@ -1268,6 +1318,18 @@ definitions: updated_time: format: date-time type: string + uuid: + description: >- + RFC4122 UUID identifier for the nodepool (immutable, assigned at + creation). + + This provides a stable, standards-compliant identifier for platform + integrations + + that require UUID format. + example: 7c9e6679-7425-40de-944b-e07fc1f90ae7 + format: uuid + type: string required: - name - spec From 9160e18400ae74d44d747bc59d0302238313a72a Mon Sep 17 00:00:00 2001 From: dawang Date: Mon, 23 Mar 2026 15:15:20 +0800 Subject: [PATCH 2/3] HYPERFLEET-732 - fix: move the uuid field from the Base models to the response-only models --- models/clusters/model.tsp | 18 +++++------ models/nodepools/model.tsp | 18 +++++------ schemas/core/openapi.yaml | 64 ++++++++++++++------------------------ schemas/core/swagger.yaml | 24 -------------- schemas/gcp/openapi.yaml | 64 ++++++++++++++------------------------ schemas/gcp/swagger.yaml | 24 -------------- 6 files changed, 66 insertions(+), 146 deletions(-) diff --git a/models/clusters/model.tsp b/models/clusters/model.tsp index f8fa0b4..e935b52 100644 --- a/models/clusters/model.tsp +++ b/models/clusters/model.tsp @@ -5,15 +5,6 @@ import "../../aliases.tsp"; model ClusterBase { ...APIResource; - /** - * RFC4122 UUID identifier for the cluster (immutable, assigned at creation). - * This provides a stable, standards-compliant identifier for platform integrations - * that require UUID format (e.g., Hypershift spec.clusterID). - */ - @format("uuid") - @example("550e8400-e29b-41d4-a716-446655440000") - uuid?: string; - /** * Cluster name (unique) */ @@ -53,6 +44,15 @@ model Cluster { ...ClusterBase; ...APICreatedResource; + /** + * RFC4122 UUID identifier for the cluster (immutable, assigned at creation). + * This provides a stable, standards-compliant identifier for platform integrations + * that require UUID format (e.g., Hypershift spec.clusterID). + */ + @format("uuid") + @example("550e8400-e29b-41d4-a716-446655440000") + uuid?: string; + /** * Generation field is updated on customer updates, reflecting the version of the "intent" of the customer */ diff --git a/models/nodepools/model.tsp b/models/nodepools/model.tsp index dfb65dc..9d9f636 100644 --- a/models/nodepools/model.tsp +++ b/models/nodepools/model.tsp @@ -5,15 +5,6 @@ import "../../aliases.tsp"; model NodePoolBase { ...APIResource; - /** - * RFC4122 UUID identifier for the nodepool (immutable, assigned at creation). - * This provides a stable, standards-compliant identifier for platform integrations - * that require UUID format. - */ - @format("uuid") - @example("7c9e6679-7425-40de-944b-e07fc1f90ae7") - uuid?: string; - /** * NodePool name (unique in a cluster) */ @@ -50,6 +41,15 @@ model NodePool { ...NodePoolBase; ...APICreatedResource; + /** + * RFC4122 UUID identifier for the nodepool (immutable, assigned at creation). + * This provides a stable, standards-compliant identifier for platform integrations + * that require UUID format. + */ + @format("uuid") + @example("7c9e6679-7425-40de-944b-e07fc1f90ae7") + uuid?: string; + /** * Generation field is updated on customer updates, reflecting the version of the "intent" of the customer */ diff --git a/schemas/core/openapi.yaml b/schemas/core/openapi.yaml index 1bb83ae..494f05b 100644 --- a/schemas/core/openapi.yaml +++ b/schemas/core/openapi.yaml @@ -725,14 +725,6 @@ components: additionalProperties: type: string description: labels for the API resource as pairs of name:value strings - uuid: - type: string - format: uuid - description: |- - RFC4122 UUID identifier for the cluster (immutable, assigned at creation). - This provides a stable, standards-compliant identifier for platform integrations - that require UUID format (e.g., Hypershift spec.clusterID). - example: 550e8400-e29b-41d4-a716-446655440000 name: type: string minLength: 3 @@ -753,6 +745,14 @@ components: updated_by: type: string format: email + uuid: + type: string + format: uuid + description: |- + RFC4122 UUID identifier for the cluster (immutable, assigned at creation). + This provides a stable, standards-compliant identifier for platform integrations + that require UUID format (e.g., Hypershift spec.clusterID). + example: 550e8400-e29b-41d4-a716-446655440000 generation: type: integer format: int32 @@ -829,14 +829,6 @@ components: additionalProperties: type: string description: labels for the API resource as pairs of name:value strings - uuid: - type: string - format: uuid - description: |- - RFC4122 UUID identifier for the cluster (immutable, assigned at creation). - This provides a stable, standards-compliant identifier for platform integrations - that require UUID format (e.g., Hypershift spec.clusterID). - example: 550e8400-e29b-41d4-a716-446655440000 name: type: string minLength: 3 @@ -999,14 +991,6 @@ components: additionalProperties: type: string description: labels for the API resource as pairs of name:value strings - uuid: - type: string - format: uuid - description: |- - RFC4122 UUID identifier for the nodepool (immutable, assigned at creation). - This provides a stable, standards-compliant identifier for platform integrations - that require UUID format. - example: 7c9e6679-7425-40de-944b-e07fc1f90ae7 name: type: string minLength: 3 @@ -1027,6 +1011,14 @@ components: updated_by: type: string format: email + uuid: + type: string + format: uuid + description: |- + RFC4122 UUID identifier for the nodepool (immutable, assigned at creation). + This provides a stable, standards-compliant identifier for platform integrations + that require UUID format. + example: 7c9e6679-7425-40de-944b-e07fc1f90ae7 generation: type: integer format: int32 @@ -1109,14 +1101,6 @@ components: additionalProperties: type: string description: labels for the API resource as pairs of name:value strings - uuid: - type: string - format: uuid - description: |- - RFC4122 UUID identifier for the nodepool (immutable, assigned at creation). - This provides a stable, standards-compliant identifier for platform integrations - that require UUID format. - example: 7c9e6679-7425-40de-944b-e07fc1f90ae7 name: type: string minLength: 3 @@ -1158,14 +1142,6 @@ components: additionalProperties: type: string description: labels for the API resource as pairs of name:value strings - uuid: - type: string - format: uuid - description: |- - RFC4122 UUID identifier for the nodepool (immutable, assigned at creation). - This provides a stable, standards-compliant identifier for platform integrations - that require UUID format. - example: 7c9e6679-7425-40de-944b-e07fc1f90ae7 name: type: string minLength: 3 @@ -1186,6 +1162,14 @@ components: updated_by: type: string format: email + uuid: + type: string + format: uuid + description: |- + RFC4122 UUID identifier for the nodepool (immutable, assigned at creation). + This provides a stable, standards-compliant identifier for platform integrations + that require UUID format. + example: 7c9e6679-7425-40de-944b-e07fc1f90ae7 generation: type: integer format: int32 diff --git a/schemas/core/swagger.yaml b/schemas/core/swagger.yaml index a76492a..4f6293d 100644 --- a/schemas/core/swagger.yaml +++ b/schemas/core/swagger.yaml @@ -972,18 +972,6 @@ definitions: type: string spec: $ref: '#/definitions/ClusterSpec' - uuid: - description: >- - RFC4122 UUID identifier for the cluster (immutable, assigned at - creation). - - This provides a stable, standards-compliant identifier for platform - integrations - - that require UUID format (e.g., Hypershift spec.clusterID). - example: 550e8400-e29b-41d4-a716-446655440000 - format: uuid - type: string required: - name - spec @@ -1273,18 +1261,6 @@ definitions: type: string spec: $ref: '#/definitions/NodePoolSpec' - uuid: - description: >- - RFC4122 UUID identifier for the nodepool (immutable, assigned at - creation). - - This provides a stable, standards-compliant identifier for platform - integrations - - that require UUID format. - example: 7c9e6679-7425-40de-944b-e07fc1f90ae7 - format: uuid - type: string required: - name - spec diff --git a/schemas/gcp/openapi.yaml b/schemas/gcp/openapi.yaml index 476f998..c78464e 100644 --- a/schemas/gcp/openapi.yaml +++ b/schemas/gcp/openapi.yaml @@ -604,14 +604,6 @@ components: additionalProperties: type: string description: labels for the API resource as pairs of name:value strings - uuid: - type: string - format: uuid - description: |- - RFC4122 UUID identifier for the cluster (immutable, assigned at creation). - This provides a stable, standards-compliant identifier for platform integrations - that require UUID format (e.g., Hypershift spec.clusterID). - example: 550e8400-e29b-41d4-a716-446655440000 name: type: string minLength: 3 @@ -632,6 +624,14 @@ components: updated_by: type: string format: email + uuid: + type: string + format: uuid + description: |- + RFC4122 UUID identifier for the cluster (immutable, assigned at creation). + This provides a stable, standards-compliant identifier for platform integrations + that require UUID format (e.g., Hypershift spec.clusterID). + example: 550e8400-e29b-41d4-a716-446655440000 generation: type: integer format: int32 @@ -727,14 +727,6 @@ components: additionalProperties: type: string description: labels for the API resource as pairs of name:value strings - uuid: - type: string - format: uuid - description: |- - RFC4122 UUID identifier for the cluster (immutable, assigned at creation). - This provides a stable, standards-compliant identifier for platform integrations - that require UUID format (e.g., Hypershift spec.clusterID). - example: 550e8400-e29b-41d4-a716-446655440000 name: type: string minLength: 3 @@ -956,14 +948,6 @@ components: additionalProperties: type: string description: labels for the API resource as pairs of name:value strings - uuid: - type: string - format: uuid - description: |- - RFC4122 UUID identifier for the nodepool (immutable, assigned at creation). - This provides a stable, standards-compliant identifier for platform integrations - that require UUID format. - example: 7c9e6679-7425-40de-944b-e07fc1f90ae7 name: type: string minLength: 3 @@ -984,6 +968,14 @@ components: updated_by: type: string format: email + uuid: + type: string + format: uuid + description: |- + RFC4122 UUID identifier for the nodepool (immutable, assigned at creation). + This provides a stable, standards-compliant identifier for platform integrations + that require UUID format. + example: 7c9e6679-7425-40de-944b-e07fc1f90ae7 generation: type: integer format: int32 @@ -1085,14 +1077,6 @@ components: additionalProperties: type: string description: labels for the API resource as pairs of name:value strings - uuid: - type: string - format: uuid - description: |- - RFC4122 UUID identifier for the nodepool (immutable, assigned at creation). - This provides a stable, standards-compliant identifier for platform integrations - that require UUID format. - example: 7c9e6679-7425-40de-944b-e07fc1f90ae7 name: type: string minLength: 3 @@ -1153,14 +1137,6 @@ components: additionalProperties: type: string description: labels for the API resource as pairs of name:value strings - uuid: - type: string - format: uuid - description: |- - RFC4122 UUID identifier for the nodepool (immutable, assigned at creation). - This provides a stable, standards-compliant identifier for platform integrations - that require UUID format. - example: 7c9e6679-7425-40de-944b-e07fc1f90ae7 name: type: string minLength: 3 @@ -1181,6 +1157,14 @@ components: updated_by: type: string format: email + uuid: + type: string + format: uuid + description: |- + RFC4122 UUID identifier for the nodepool (immutable, assigned at creation). + This provides a stable, standards-compliant identifier for platform integrations + that require UUID format. + example: 7c9e6679-7425-40de-944b-e07fc1f90ae7 generation: type: integer format: int32 diff --git a/schemas/gcp/swagger.yaml b/schemas/gcp/swagger.yaml index abae5f9..fffe48c 100644 --- a/schemas/gcp/swagger.yaml +++ b/schemas/gcp/swagger.yaml @@ -878,18 +878,6 @@ definitions: type: string spec: $ref: '#/definitions/ClusterSpec' - uuid: - description: >- - RFC4122 UUID identifier for the cluster (immutable, assigned at - creation). - - This provides a stable, standards-compliant identifier for platform - integrations - - that require UUID format (e.g., Hypershift spec.clusterID). - example: 550e8400-e29b-41d4-a716-446655440000 - format: uuid - type: string required: - name - spec @@ -1255,18 +1243,6 @@ definitions: type: string spec: $ref: '#/definitions/NodePoolSpec' - uuid: - description: >- - RFC4122 UUID identifier for the nodepool (immutable, assigned at - creation). - - This provides a stable, standards-compliant identifier for platform - integrations - - that require UUID format. - example: 7c9e6679-7425-40de-944b-e07fc1f90ae7 - format: uuid - type: string required: - name - spec From a5680dfe736c124950fd6288d6464b2ea88dbd14 Mon Sep 17 00:00:00 2001 From: dawang Date: Mon, 23 Mar 2026 19:15:10 +0800 Subject: [PATCH 3/3] HYPERFLEET-732 - feat: bump openapi version to 1.0.5 --- main.tsp | 2 +- schemas/core/openapi.yaml | 2 +- schemas/core/swagger.yaml | 2 +- schemas/gcp/openapi.yaml | 2 +- schemas/gcp/swagger.yaml | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/main.tsp b/main.tsp index f4a537d..941c257 100644 --- a/main.tsp +++ b/main.tsp @@ -20,7 +20,7 @@ using OpenAPI; * */ @service(#{ title: "HyperFleet API" }) -@info(#{ version: "1.0.4", contact: #{ name: "HyperFleet Team" }, license: #{ name: "Apache 2.0" ,url: "https://www.apache.org/licenses/LICENSE-2.0"} }) +@info(#{ version: "1.0.5", contact: #{ name: "HyperFleet Team" }, license: #{ name: "Apache 2.0" ,url: "https://www.apache.org/licenses/LICENSE-2.0"} }) @server("https://hyperfleet.redhat.com", "Production") @route("/api/hyperfleet/v1") namespace HyperFleet; diff --git a/schemas/core/openapi.yaml b/schemas/core/openapi.yaml index 494f05b..349482a 100644 --- a/schemas/core/openapi.yaml +++ b/schemas/core/openapi.yaml @@ -1,7 +1,7 @@ openapi: 3.0.0 info: title: HyperFleet API - version: 1.0.4 + version: 1.0.5 contact: name: HyperFleet Team license: diff --git a/schemas/core/swagger.yaml b/schemas/core/swagger.yaml index 4f6293d..d8092e0 100644 --- a/schemas/core/swagger.yaml +++ b/schemas/core/swagger.yaml @@ -16,7 +16,7 @@ info: name: Apache 2.0 url: 'https://www.apache.org/licenses/LICENSE-2.0' title: HyperFleet API - version: 1.0.4 + version: 1.0.5 host: hyperfleet.redhat.com basePath: / schemes: diff --git a/schemas/gcp/openapi.yaml b/schemas/gcp/openapi.yaml index c78464e..4ad8354 100644 --- a/schemas/gcp/openapi.yaml +++ b/schemas/gcp/openapi.yaml @@ -1,7 +1,7 @@ openapi: 3.0.0 info: title: HyperFleet API - version: 1.0.4 + version: 1.0.5 contact: name: HyperFleet Team license: diff --git a/schemas/gcp/swagger.yaml b/schemas/gcp/swagger.yaml index fffe48c..612069b 100644 --- a/schemas/gcp/swagger.yaml +++ b/schemas/gcp/swagger.yaml @@ -16,7 +16,7 @@ info: name: Apache 2.0 url: 'https://www.apache.org/licenses/LICENSE-2.0' title: HyperFleet API - version: 1.0.4 + version: 1.0.5 host: hyperfleet.redhat.com basePath: / schemes: