UNPKG

@atomist/sdm

Version:

Atomist Software Delivery Machine SDK

53 lines 1.88 kB
"use strict"; /* * Copyright © 2020 Atomist, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ Object.defineProperty(exports, "__esModule", { value: true }); exports.reqString = exports.reqFilter = exports.isKubernetesApplication = exports.appName = void 0; const stringify = require("json-stringify-safe"); /** Qualified name of Kubernetes application */ function appName(k) { return `${k.ns}/${k.name}`; } exports.appName = appName; /** * Test if the object is a valid [[KubernetesApplication]] by checking * if it has all required properties. * * @param o Putative Kubernetes application data * @return `true` if all required properties are present, `false` otherwise. */ function isKubernetesApplication(o) { if (!o) { return false; } const required = ["image", "name", "ns", "workspaceId"]; return required.every(k => o[k]); } exports.isKubernetesApplication = isKubernetesApplication; /** Stringify filter for a Kubernetes request object. */ function reqFilter(k, v) { if (k === "config" || k === "clients" || k === "secrets") { return undefined; } return v; } exports.reqFilter = reqFilter; /** Stringify a Kubernetes request object. */ function reqString(req) { return stringify(req, reqFilter, undefined, () => undefined); } exports.reqString = reqString; //# sourceMappingURL=request.js.map