From 6e207b47c848b15157bbaf35d433b3c149d04716 Mon Sep 17 00:00:00 2001 From: Rafael Benevides Date: Wed, 1 Jul 2026 11:40:20 -0300 Subject: [PATCH] HYPERFLEET-1202 - feat: add Go module support for downstream consumption Expose the generated template OpenAPI schema as an embedded filesystem so Go services can import this module and read schemas/template/openapi.yaml without vendoring local copies. Mirrors the pattern used by hyperfleet-api-spec. --- CHANGELOG.md | 6 ++++++ go.mod | 3 +++ main.tsp | 2 +- package-lock.json | 7 ------- schemas/schemas.go | 6 ++++++ schemas/template/openapi.yaml | 2 +- schemas/template/swagger.yaml | 2 +- 7 files changed, 18 insertions(+), 10 deletions(-) create mode 100644 go.mod create mode 100644 schemas/schemas.go diff --git a/CHANGELOG.md b/CHANGELOG.md index a734da9..b39e0fe 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,12 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +## [1.0.27] - 2026-07-01 + +### Added + +- Go module support (`go.mod` + `schemas/schemas.go`) for downstream Go consumers (HYPERFLEET-1202) + ## [1.0.24] - 2026-06-22 ### Fixed diff --git a/go.mod b/go.mod new file mode 100644 index 0000000..6d928d1 --- /dev/null +++ b/go.mod @@ -0,0 +1,3 @@ +module github.com/openshift-hyperfleet/hyperfleet-api-spec-template + +go 1.25.0 diff --git a/main.tsp b/main.tsp index 151ab70..b27feae 100644 --- a/main.tsp +++ b/main.tsp @@ -33,7 +33,7 @@ using OpenAPI; */ @service(#{ title: "HyperFleet API" }) @info(#{ - version: "1.0.26", + version: "1.0.27", contact: #{ name: "HyperFleet Team", url: "https://github.com/openshift-hyperfleet", diff --git a/package-lock.json b/package-lock.json index d3120eb..12a7a52 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1260,7 +1260,6 @@ "integrity": "sha512-hKCkHEEDdCpXFyOU8ln+TzBBwonFMbkeUV0zIc+vBETyO8p/Upui3XvEyLOyB4CpKUReHzGeGm3gcFjNc73ygg==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "@babel/code-frame": "^7.29.0", "@inquirer/prompts": "^8.4.1", @@ -1421,7 +1420,6 @@ "integrity": "sha512-3Bb1M6VSuEVPWOecXj3h3I/ddMpb9cmKRQQq34oq7LatiK4fwVBp+EdWbqzEzaRUGHm9mZtqsMsxZf5FndT8dg==", "dev": true, "license": "MIT", - "peer": true, "engines": { "node": ">=22.0.0" }, @@ -1441,7 +1439,6 @@ "integrity": "sha512-XtkCMPpzXFfuIzmx/BQrCMUCCk7d37lkqZe5ubJmvJ02Fr7yvAbofrgtNUZ1BbFe3TBBUS2nB3E3mjT3tE4zCQ==", "dev": true, "license": "MIT", - "peer": true, "engines": { "node": ">=22.0.0" }, @@ -1520,7 +1517,6 @@ "integrity": "sha512-s8giuYQTQPniy2YxNfKXYpAU2Vm4L74TdOsbFWe0tG+jnOy/9tt7kKTH4QF1sB8nRvmjv8h31EoHtZYOPe1GvA==", "dev": true, "license": "MIT", - "peer": true, "engines": { "node": ">=22.0.0" }, @@ -1555,7 +1551,6 @@ "integrity": "sha512-Thbli+OlOj+iMPYFBVBfJ3OmCAnaSyNn4M1vz9T6Gka5Jt9ba/HIR56joy65tY6kx/FCF5VXNB819Y7/GUrBGA==", "dev": true, "license": "MIT", - "peer": true, "dependencies": { "fast-deep-equal": "^3.1.3", "fast-uri": "^3.0.1", @@ -4642,7 +4637,6 @@ "integrity": "sha512-B7qPcEVE3NVkmSJbaYxvv4cHkVW7DQsZz13pUMrfS8z8Q/BuShN+gcTXrUlPiGqM2/t/EEaI030bpxMqY8gMlw==", "dev": true, "license": "MIT", - "peer": true, "engines": { "node": ">= 10.16.0" } @@ -6297,7 +6291,6 @@ "integrity": "sha512-cIFJOD1DESzpjOBl763Kp1AH7UE/0fcdHe6rZXUdQ9c50uvgigvW97u3IcSeBwOkgqL/PXPBktBCh0KEu5L8XQ==", "dev": true, "license": "MIT", - "peer": true, "bin": { "rollup": "dist/bin/rollup" }, diff --git a/schemas/schemas.go b/schemas/schemas.go new file mode 100644 index 0000000..96178d2 --- /dev/null +++ b/schemas/schemas.go @@ -0,0 +1,6 @@ +package schemas + +import "embed" + +//go:embed template/openapi.yaml +var FS embed.FS diff --git a/schemas/template/openapi.yaml b/schemas/template/openapi.yaml index 46cb155..ca2ed82 100644 --- a/schemas/template/openapi.yaml +++ b/schemas/template/openapi.yaml @@ -1,7 +1,7 @@ openapi: 3.0.0 info: title: HyperFleet API - version: 1.0.26 + version: 1.0.27 contact: name: HyperFleet Team url: https://github.com/openshift-hyperfleet diff --git a/schemas/template/swagger.yaml b/schemas/template/swagger.yaml index 3feebdf..5726f8b 100644 --- a/schemas/template/swagger.yaml +++ b/schemas/template/swagger.yaml @@ -17,7 +17,7 @@ info: name: Apache 2.0 url: 'https://www.apache.org/licenses/LICENSE-2.0' title: HyperFleet API - version: 1.0.26 + version: 1.0.27 host: hyperfleet.redhat.com basePath: / schemes: