diff --git a/.github/workflows/release.yaml b/.github/workflows/release.yaml index 60dc1c6..cbf21a3 100644 --- a/.github/workflows/release.yaml +++ b/.github/workflows/release.yaml @@ -155,7 +155,9 @@ jobs: cp -R assets/shared/* generated/go/ cp -R assets/shared/* generated/python cp -R assets/shared/* generated/javascript - cp -R assets/shared/* generated/html2 + cp -R assets/shared/* generated/html2 + mkdir -p generated/html2/openapi + cp openapi/openapi.* generated/html2/openapi/ - name: Open branches on external client REPOs run: | diff --git a/.gitignore b/.gitignore index 9884e68..73b22d9 100644 --- a/.gitignore +++ b/.gitignore @@ -4,5 +4,5 @@ generated/* !templates templates/* !templates/.gitkeep -openapi/openapi.yaml +openapi/openapi.* official-generator-templates diff --git a/openapi/compose/compose.go b/openapi/compose/compose.go index b69044b..3ead844 100644 --- a/openapi/compose/compose.go +++ b/openapi/compose/compose.go @@ -20,7 +20,8 @@ const ( HeaderOpenApi = OpenapiComponentsFolder + "header.yaml" FooterOpenApi = OpenapiComponentsFolder + "footer.yaml" - MergedOpenApi = BasePath + "openapi.yaml" + MergedOpenYAMLApi = BasePath + "openapi.yaml" + MergedOpenJSONApi = BasePath + "openapi.json" ) //go:embed path-blacklist.json @@ -107,11 +108,27 @@ func main() { log.Fatalf("Failed to marshal merged document to YAML: %v", err) } - err = os.WriteFile(MergedOpenApi, yamlData, 0644) + err = os.WriteFile(MergedOpenYAMLApi, yamlData, 0644) if err != nil { - log.Fatalf("Failed to write %s: %v", MergedOpenApi, err) + log.Fatalf("Failed to write %s: %v", MergedOpenYAMLApi, err) } - log.Println("Merged OpenAPI saved to " + MergedOpenApi) + log.Println("Merged OpenAPI saved to " + MergedOpenYAMLApi) + js, err := masterOpenapi.MarshalJSON() + if err != nil { + log.Fatalf("Failed to marshal merged document to JSON: %v", err) + } + + jsonData, err := json.Marshal(js) + if err != nil { + log.Fatalf("Failed to marshal merged document to JSON: %v", err) + } + + err = os.WriteFile(MergedOpenJSONApi, jsonData, 0644) + if err != nil { + log.Fatalf("Failed to write %s: %v", MergedOpenJSONApi, err) + } + + log.Println("Merged OpenAPI saved to " + MergedOpenJSONApi) }