UNPKG

@provisioner/common

Version:
48 lines 1.61 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.AppHelper = void 0; const contracts_1 = require("@provisioner/contracts"); const APP_DOCUMENT = { apiVersion: 'system.codezero.io/v1', kind: 'App' }; class AppHelper extends contracts_1.AppHelper { async read(cluster, errorMessage) { const result = await cluster.read(this.resource); result.throwIfError(errorMessage); return result.as(); } async list(cluster, errorMessage) { const result = !this.name ? await cluster.list(this.resource) : await cluster.list(this.resource, { fieldSelector: `metadata.name=${this.name}` }); result.throwIfError(errorMessage); return Array.from(result.each('App')); } static async byInterface(cluster, interfaceName, errorMessage) { const result = await cluster.list({ ...APP_DOCUMENT, metadata: { labels: { [`system.codezero.io/interface-${interfaceName}`]: 'true' } } }); result.throwIfError(errorMessage); return Array.from(result.each('App')); } } exports.AppHelper = AppHelper; AppHelper.template = (namespace, name) => ({ apiVersion: 'system.codezero.io/v1', kind: 'App', metadata: { ...(name ? { name } : undefined), ...(namespace ? { namespace } : undefined) } }); AppHelper.from = (namespace, name) => { const template = AppHelper.template(namespace, name); return new AppHelper(template); }; //# sourceMappingURL=app.js.map