UNPKG

@atomist/automation-client

Version:

Atomist API for software low-level client

35 lines 2.84 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const _ = require("lodash"); const globals_1 = require("../../../globals"); const info_1 = require("../../util/info"); const string_1 = require("../../util/string"); function prepareRegistration(automations, options = {}, metadata = {}) { return Object.assign({ api_version: "1", name: automations.name, version: automations.version, policy: { name: (automations.policy ? automations.policy : "ephemeral") }, team_ids: automations.team_ids && automations.team_ids.length > 0 ? automations.team_ids : undefined, groups: automations.groups && automations.groups.length > 0 ? automations.groups : undefined, commands: automations.commands.filter(c => c.expose !== false).map(prepareCommandRegistration), events: automations.events.filter(e => e.expose !== false).map(prepareEventRegistration), ingesters: automations.ingesters, metadata: { labels: prepareMetadata(automations, metadata) } }, options); } exports.prepareRegistration = prepareRegistration; function prepareMetadata(automations, metadata) { const i = info_1.info(automations); const cfg = globals_1.automationClientInstance().configuration; return Object.assign({ "atomist.version": cfg.version, "atomist.description": i.description, "atomist.license": i.license, "atomist.author": i.author, "atomist.homepage": i.homepage, "atomist.client": i.client ? `${i.client.name}:${i.client.version}` : undefined, "atomist.git.sha": i.git ? i.git.sha : undefined, "atomist.git.branch": i.git ? i.git.branch : undefined, "atomist.git.repository": i.git ? i.git.repository : undefined, "atomist.system.hostname": i.system ? i.system.hostname : undefined, "atomist.system.type": i.system ? i.system.type : undefined, "atomist.system.release": i.system ? i.system.release : undefined, "atomist.system.platform": i.system ? i.system.platform : undefined, "atomist.environment": cfg.environment, "atomist.cluster": cfg.cluster ? `${cfg.cluster.enabled}` : "false", "atomist.policy": cfg.policy }, metadata); } function prepareCommandRegistration(c) { return { name: c.name, description: c.description, tags: _.uniq(typeof c.tags === "string" ? [c.tags] : (c.tags || []).map(t => t.name)), intent: _.uniq(string_1.toStringArray(c.intent)), auto_submit: c.auto_submit ? c.auto_submit : false, question: c.question, parameters: _.uniqBy(c.parameters, "name"), mapped_parameters: _.uniqBy(c.mapped_parameters, "name"), secrets: _.uniqBy(c.secrets ? c.secrets.map(s => ({ uri: s.uri })) : [], "uri"), }; } function prepareEventRegistration(e) { return { subscription: e.subscription, secrets: _.uniqBy(e.secrets ? e.secrets.map(s => ({ uri: s.uri })) : [], "uri"), }; } //# sourceMappingURL=payloads.js.map