UNPKG

@veecode-platform/safira-cli

Version:

Generate a microservice project from your spec.

42 lines (41 loc) 1.41 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.SpecHouseUtils = void 0; const yaml_utils_1 = require("../utils/yaml-utils"); const git_providers_1 = require("../git/git-providers"); class SpecHouseUtils { constructor() { } load(appName, description, definitionText) { return { apiVersion: "backstage.io/v1alpha1", kind: "API", metadata: { name: appName, description: description, }, spec: { type: "openapi", lifecycle: "production", owner: "consumer", definition: definitionText, }, }; } writeFile(writePath, appName, description, definitionText) { yaml_utils_1.YamlUtils.writeFile(writePath, this.load(appName, description, definitionText)); } buildSpecHouseUrl(gitProvider, ownerRepo, branch) { switch (gitProvider) { case git_providers_1.GitProviderEnum.github: return `https://github.com/${ownerRepo}/blob/${branch}/catalog-info.yaml`; default: throw new Error("Unsupported Git Provider"); } } static get instance() { if (!this._instance) this._instance = new this(); return this._instance; } } exports.SpecHouseUtils = SpecHouseUtils;