1 | ;
|
2 |
|
3 | Object.defineProperty(exports, "__esModule", {
|
4 | value: true
|
5 | });
|
6 | exports.default = void 0;
|
7 |
|
8 | require("source-map-support/register");
|
9 |
|
10 | var _publisherBase = _interopRequireDefault(require("@electron-forge/publisher-base"));
|
11 |
|
12 | var _asyncOra = require("@electron-forge/async-ora");
|
13 |
|
14 | var _debug = _interopRequireDefault(require("debug"));
|
15 |
|
16 | var _formData = _interopRequireDefault(require("form-data"));
|
17 |
|
18 | var _fs = _interopRequireDefault(require("fs"));
|
19 |
|
20 | var _nodeFetch = _interopRequireDefault(require("node-fetch"));
|
21 |
|
22 | var _path = _interopRequireDefault(require("path"));
|
23 |
|
24 | function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
25 |
|
26 | function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
|
27 |
|
28 | function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
29 |
|
30 | function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
31 |
|
32 | const d = (0, _debug.default)('electron-forge:publish:nucleus');
|
33 |
|
34 | class PublisherNucleus extends _publisherBase.default {
|
35 | constructor(...args) {
|
36 | super(...args);
|
37 |
|
38 | _defineProperty(this, "name", 'nucleus');
|
39 |
|
40 | _defineProperty(this, "collapseMakeResults", makeResults => {
|
41 | const newMakeResults = [];
|
42 |
|
43 | for (const result of makeResults) {
|
44 | const existingResult = newMakeResults.find(nResult => nResult.arch === result.arch && nResult.platform === result.platform && nResult.packageJSON.version === result.packageJSON.version);
|
45 |
|
46 | if (existingResult) {
|
47 | existingResult.artifacts.push(...result.artifacts);
|
48 | } else {
|
49 | newMakeResults.push(_objectSpread({}, result));
|
50 | }
|
51 | }
|
52 |
|
53 | return newMakeResults;
|
54 | });
|
55 | }
|
56 |
|
57 | async publish({
|
58 | makeResults
|
59 | }) {
|
60 | const {
|
61 | config
|
62 | } = this;
|
63 | const collapsedResults = this.collapseMakeResults(makeResults);
|
64 |
|
65 | for (const [resultIdx, makeResult] of collapsedResults.entries()) {
|
66 | const msg = `Uploading result (${resultIdx + 1}/${collapsedResults.length})`;
|
67 | d(msg);
|
68 | await (0, _asyncOra.asyncOra)(msg, async () => {
|
69 | const data = new _formData.default();
|
70 | data.append('platform', makeResult.platform);
|
71 | data.append('arch', makeResult.arch);
|
72 | data.append('version', makeResult.packageJSON.version);
|
73 | let artifactIdx = 0;
|
74 |
|
75 | for (const artifactPath of makeResult.artifacts) {
|
76 | // Skip the RELEASES file, it is automatically generated on the server
|
77 | // eslint-disable-next-line no-continue
|
78 | if (_path.default.basename(artifactPath).toLowerCase() === 'releases') continue;
|
79 | data.append(`file${artifactIdx}`, _fs.default.createReadStream(artifactPath));
|
80 | artifactIdx += 1;
|
81 | }
|
82 |
|
83 | const response = await (0, _nodeFetch.default)(`${config.host}/rest/app/${config.appId}/channel/${config.channelId}/upload`, {
|
84 | headers: {
|
85 | Authorization: config.token
|
86 | },
|
87 | method: 'POST',
|
88 | body: data
|
89 | });
|
90 |
|
91 | if (response.status !== 200) {
|
92 | throw new Error(`Unexpected response code from Nucleus: ${response.status}\n\nBody:\n${await response.text()}`);
|
93 | }
|
94 | });
|
95 | }
|
96 | }
|
97 |
|
98 | }
|
99 |
|
100 | exports.default = PublisherNucleus;
|
101 | //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9QdWJsaXNoZXJOdWNsZXVzLnRzIl0sIm5hbWVzIjpbImQiLCJQdWJsaXNoZXJOdWNsZXVzIiwiUHVibGlzaGVyQmFzZSIsIm1ha2VSZXN1bHRzIiwibmV3TWFrZVJlc3VsdHMiLCJyZXN1bHQiLCJleGlzdGluZ1Jlc3VsdCIsImZpbmQiLCJuUmVzdWx0IiwiYXJjaCIsInBsYXRmb3JtIiwicGFja2FnZUpTT04iLCJ2ZXJzaW9uIiwiYXJ0aWZhY3RzIiwicHVzaCIsInB1Ymxpc2giLCJjb25maWciLCJjb2xsYXBzZWRSZXN1bHRzIiwiY29sbGFwc2VNYWtlUmVzdWx0cyIsInJlc3VsdElkeCIsIm1ha2VSZXN1bHQiLCJlbnRyaWVzIiwibXNnIiwibGVuZ3RoIiwiZGF0YSIsIkZvcm1EYXRhIiwiYXBwZW5kIiwiYXJ0aWZhY3RJZHgiLCJhcnRpZmFjdFBhdGgiLCJwYXRoIiwiYmFzZW5hbWUiLCJ0b0xvd2VyQ2FzZSIsImZzIiwiY3JlYXRlUmVhZFN0cmVhbSIsInJlc3BvbnNlIiwiaG9zdCIsImFwcElkIiwiY2hhbm5lbElkIiwiaGVhZGVycyIsIkF1dGhvcml6YXRpb24iLCJ0b2tlbiIsIm1ldGhvZCIsImJvZHkiLCJzdGF0dXMiLCJFcnJvciIsInRleHQiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUFBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOztBQUNBOzs7Ozs7Ozs7O0FBSUEsTUFBTUEsQ0FBQyxHQUFHLG9CQUFNLGdDQUFOLENBQVY7O0FBRWUsTUFBTUMsZ0JBQU4sU0FBK0JDLHNCQUEvQixDQUFxRTtBQUFBO0FBQUE7O0FBQUEsa0NBQzNFLFNBRDJFOztBQUFBLGlEQUduREMsV0FBRCxJQUFrRDtBQUM5RSxZQUFNQyxjQUFrQyxHQUFHLEVBQTNDOztBQUNBLFdBQUssTUFBTUMsTUFBWCxJQUFxQkYsV0FBckIsRUFBa0M7QUFDaEMsY0FBTUcsY0FBYyxHQUFHRixjQUFjLENBQUNHLElBQWYsQ0FBcUJDLE9BQUQsSUFBYUEsT0FBTyxDQUFDQyxJQUFSLEtBQWlCSixNQUFNLENBQUNJLElBQXhCLElBQ2pERCxPQUFPLENBQUNFLFFBQVIsS0FBcUJMLE1BQU0sQ0FBQ0ssUUFEcUIsSUFFakRGLE9BQU8sQ0FBQ0csV0FBUixDQUFvQkMsT0FBcEIsS0FBZ0NQLE1BQU0sQ0FBQ00sV0FBUCxDQUFtQkMsT0FGbkMsQ0FBdkI7O0FBR0EsWUFBSU4sY0FBSixFQUFvQjtBQUNsQkEsVUFBQUEsY0FBYyxDQUFDTyxTQUFmLENBQXlCQyxJQUF6QixDQUE4QixHQUFHVCxNQUFNLENBQUNRLFNBQXhDO0FBQ0QsU0FGRCxNQUVPO0FBQ0xULFVBQUFBLGNBQWMsQ0FBQ1UsSUFBZixtQkFBeUJULE1BQXpCO0FBQ0Q7QUFDRjs7QUFDRCxhQUFPRCxjQUFQO0FBQ0QsS0FoQmlGO0FBQUE7O0FBa0JsRixRQUFNVyxPQUFOLENBQWM7QUFBRVosSUFBQUE7QUFBRixHQUFkLEVBQWlEO0FBQy9DLFVBQU07QUFBRWEsTUFBQUE7QUFBRixRQUFhLElBQW5CO0FBRUEsVUFBTUMsZ0JBQWdCLEdBQUcsS0FBS0MsbUJBQUwsQ0FBeUJmLFdBQXpCLENBQXpCOztBQUVBLFNBQUssTUFBTSxDQUFDZ0IsU0FBRCxFQUFZQyxVQUFaLENBQVgsSUFBc0NILGdCQUFnQixDQUFDSSxPQUFqQixFQUF0QyxFQUFrRTtBQUNoRSxZQUFNQyxHQUFHLEdBQUkscUJBQW9CSCxTQUFTLEdBQUcsQ0FBRSxJQUFHRixnQkFBZ0IsQ0FBQ00sTUFBTyxHQUExRTtBQUNBdkIsTUFBQUEsQ0FBQyxDQUFDc0IsR0FBRCxDQUFEO0FBRUEsWUFBTSx3QkFBU0EsR0FBVCxFQUFjLFlBQVk7QUFDOUIsY0FBTUUsSUFBSSxHQUFHLElBQUlDLGlCQUFKLEVBQWI7QUFDQUQsUUFBQUEsSUFBSSxDQUFDRSxNQUFMLENBQVksVUFBWixFQUF3Qk4sVUFBVSxDQUFDVixRQUFuQztBQUNBYyxRQUFBQSxJQUFJLENBQUNFLE1BQUwsQ0FBWSxNQUFaLEVBQW9CTixVQUFVLENBQUNYLElBQS9CO0FBQ0FlLFFBQUFBLElBQUksQ0FBQ0UsTUFBTCxDQUFZLFNBQVosRUFBdUJOLFVBQVUsQ0FBQ1QsV0FBWCxDQUF1QkMsT0FBOUM7QUFFQSxZQUFJZSxXQUFXLEdBQUcsQ0FBbEI7O0FBQ0EsYUFBSyxNQUFNQyxZQUFYLElBQTJCUixVQUFVLENBQUNQLFNBQXRDLEVBQWlEO0FBQy9DO0FBQ0E7QUFDQSxjQUFJZ0IsY0FBS0MsUUFBTCxDQUFjRixZQUFkLEVBQTRCRyxXQUE1QixPQUE4QyxVQUFsRCxFQUE4RDtBQUM5RFAsVUFBQUEsSUFBSSxDQUFDRSxNQUFMLENBQWEsT0FBTUMsV0FBWSxFQUEvQixFQUFrQ0ssWUFBR0MsZ0JBQUgsQ0FBb0JMLFlBQXBCLENBQWxDO0FBQ0FELFVBQUFBLFdBQVcsSUFBSSxDQUFmO0FBQ0Q7O0FBRUQsY0FBTU8sUUFBUSxHQUFHLE1BQU0sd0JBQU8sR0FBRWxCLE1BQU0sQ0FBQ21CLElBQUssYUFBWW5CLE1BQU0sQ0FBQ29CLEtBQU0sWUFBV3BCLE1BQU0sQ0FBQ3FCLFNBQVUsU0FBMUUsRUFBb0Y7QUFDekdDLFVBQUFBLE9BQU8sRUFBRTtBQUNQQyxZQUFBQSxhQUFhLEVBQUV2QixNQUFNLENBQUN3QjtBQURmLFdBRGdHO0FBSXpHQyxVQUFBQSxNQUFNLEVBQUUsTUFKaUc7QUFLekdDLFVBQUFBLElBQUksRUFBRWxCO0FBTG1HLFNBQXBGLENBQXZCOztBQVFBLFlBQUlVLFFBQVEsQ0FBQ1MsTUFBVCxLQUFvQixHQUF4QixFQUE2QjtBQUMzQixnQkFBTSxJQUFJQyxLQUFKLENBQVcsMENBQXlDVixRQUFRLENBQUNTLE1BQU8sY0FBYSxNQUFNVCxRQUFRLENBQUNXLElBQVQsRUFBZ0IsRUFBdkcsQ0FBTjtBQUNEO0FBQ0YsT0ExQkssQ0FBTjtBQTJCRDtBQUNGOztBQXZEaUYiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUHVibGlzaGVyQmFzZSwgeyBQdWJsaXNoZXJPcHRpb25zIH0gZnJvbSAnQGVsZWN0cm9uLWZvcmdlL3B1Ymxpc2hlci1iYXNlJztcbmltcG9ydCB7IGFzeW5jT3JhIH0gZnJvbSAnQGVsZWN0cm9uLWZvcmdlL2FzeW5jLW9yYSc7XG5pbXBvcnQgZGVidWcgZnJvbSAnZGVidWcnO1xuaW1wb3J0IEZvcm1EYXRhIGZyb20gJ2Zvcm0tZGF0YSc7XG5pbXBvcnQgZnMgZnJvbSAnZnMnO1xuaW1wb3J0IGZldGNoIGZyb20gJ25vZGUtZmV0Y2gnO1xuaW1wb3J0IHBhdGggZnJvbSAncGF0aCc7XG5cbmltcG9ydCB7IFB1Ymxpc2hlck51Y2xldXNDb25maWcgfSBmcm9tICcuL0NvbmZpZyc7XG5cbmNvbnN0IGQgPSBkZWJ1ZygnZWxlY3Ryb24tZm9yZ2U6cHVibGlzaDpudWNsZXVzJyk7XG5cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIFB1Ymxpc2hlck51Y2xldXMgZXh0ZW5kcyBQdWJsaXNoZXJCYXNlPFB1Ymxpc2hlck51Y2xldXNDb25maWc+IHtcbiAgbmFtZSA9ICdudWNsZXVzJztcblxuICBwcml2YXRlIGNvbGxhcHNlTWFrZVJlc3VsdHMgPSAobWFrZVJlc3VsdHM6IFB1Ymxpc2hlck9wdGlvbnNbJ21ha2VSZXN1bHRzJ10pID0+IHtcbiAgICBjb25zdCBuZXdNYWtlUmVzdWx0czogdHlwZW9mIG1ha2VSZXN1bHRzID0gW107XG4gICAgZm9yIChjb25zdCByZXN1bHQgb2YgbWFrZVJlc3VsdHMpIHtcbiAgICAgIGNvbnN0IGV4aXN0aW5nUmVzdWx0ID0gbmV3TWFrZVJlc3VsdHMuZmluZCgoblJlc3VsdCkgPT4gblJlc3VsdC5hcmNoID09PSByZXN1bHQuYXJjaFxuICAgICAgICAgICYmIG5SZXN1bHQucGxhdGZvcm0gPT09IHJlc3VsdC5wbGF0Zm9ybVxuICAgICAgICAgICYmIG5SZXN1bHQucGFja2FnZUpTT04udmVyc2lvbiA9PT0gcmVzdWx0LnBhY2thZ2VKU09OLnZlcnNpb24pO1xuICAgICAgaWYgKGV4aXN0aW5nUmVzdWx0KSB7XG4gICAgICAgIGV4aXN0aW5nUmVzdWx0LmFydGlmYWN0cy5wdXNoKC4uLnJlc3VsdC5hcnRpZmFjdHMpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgbmV3TWFrZVJlc3VsdHMucHVzaCh7IC4uLnJlc3VsdCB9KTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIG5ld01ha2VSZXN1bHRzO1xuICB9XG5cbiAgYXN5bmMgcHVibGlzaCh7IG1ha2VSZXN1bHRzIH06IFB1Ymxpc2hlck9wdGlvbnMpIHtcbiAgICBjb25zdCB7IGNvbmZpZyB9ID0gdGhpcztcblxuICAgIGNvbnN0IGNvbGxhcHNlZFJlc3VsdHMgPSB0aGlzLmNvbGxhcHNlTWFrZVJlc3VsdHMobWFrZVJlc3VsdHMpO1xuXG4gICAgZm9yIChjb25zdCBbcmVzdWx0SWR4LCBtYWtlUmVzdWx0XSBvZiBjb2xsYXBzZWRSZXN1bHRzLmVudHJpZXMoKSkge1xuICAgICAgY29uc3QgbXNnID0gYFVwbG9hZGluZyByZXN1bHQgKCR7cmVzdWx0SWR4ICsgMX0vJHtjb2xsYXBzZWRSZXN1bHRzLmxlbmd0aH0pYDtcbiAgICAgIGQobXNnKTtcblxuICAgICAgYXdhaXQgYXN5bmNPcmEobXNnLCBhc3luYyAoKSA9PiB7XG4gICAgICAgIGNvbnN0IGRhdGEgPSBuZXcgRm9ybURhdGEoKTtcbiAgICAgICAgZGF0YS5hcHBlbmQoJ3BsYXRmb3JtJywgbWFrZVJlc3VsdC5wbGF0Zm9ybSk7XG4gICAgICAgIGRhdGEuYXBwZW5kKCdhcmNoJywgbWFrZVJlc3VsdC5hcmNoKTtcbiAgICAgICAgZGF0YS5hcHBlbmQoJ3ZlcnNpb24nLCBtYWtlUmVzdWx0LnBhY2thZ2VKU09OLnZlcnNpb24pO1xuXG4gICAgICAgIGxldCBhcnRpZmFjdElkeCA9IDA7XG4gICAgICAgIGZvciAoY29uc3QgYXJ0aWZhY3RQYXRoIG9mIG1ha2VSZXN1bHQuYXJ0aWZhY3RzKSB7XG4gICAgICAgICAgLy8gU2tpcCB0aGUgUkVMRUFTRVMgZmlsZSwgaXQgaXMgYXV0b21hdGljYWxseSBnZW5lcmF0ZWQgb24gdGhlIHNlcnZlclxuICAgICAgICAgIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBuby1jb250aW51ZVxuICAgICAgICAgIGlmIChwYXRoLmJhc2VuYW1lKGFydGlmYWN0UGF0aCkudG9Mb3dlckNhc2UoKSA9PT0gJ3JlbGVhc2VzJykgY29udGludWU7XG4gICAgICAgICAgZGF0YS5hcHBlbmQoYGZpbGUke2FydGlmYWN0SWR4fWAsIGZzLmNyZWF0ZVJlYWRTdHJlYW0oYXJ0aWZhY3RQYXRoKSk7XG4gICAgICAgICAgYXJ0aWZhY3RJZHggKz0gMTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgZmV0Y2goYCR7Y29uZmlnLmhvc3R9L3Jlc3QvYXBwLyR7Y29uZmlnLmFwcElkfS9jaGFubmVsLyR7Y29uZmlnLmNoYW5uZWxJZH0vdXBsb2FkYCwge1xuICAgICAgICAgIGhlYWRlcnM6IHtcbiAgICAgICAgICAgIEF1dGhvcml6YXRpb246IGNvbmZpZy50b2tlbixcbiAgICAgICAgICB9LFxuICAgICAgICAgIG1ldGhvZDogJ1BPU1QnLFxuICAgICAgICAgIGJvZHk6IGRhdGEsXG4gICAgICAgIH0pO1xuXG4gICAgICAgIGlmIChyZXNwb25zZS5zdGF0dXMgIT09IDIwMCkge1xuICAgICAgICAgIHRocm93IG5ldyBFcnJvcihgVW5leHBlY3RlZCByZXNwb25zZSBjb2RlIGZyb20gTnVjbGV1czogJHtyZXNwb25zZS5zdGF0dXN9XFxuXFxuQm9keTpcXG4ke2F3YWl0IHJlc3BvbnNlLnRleHQoKX1gKTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuICB9XG59XG4iXX0= |
\ | No newline at end of file |