UNPKG

1.25 kBJavaScriptView Raw
1"use strict";
2
3var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
4
5Object.defineProperty(exports, "__esModule", {
6 value: true
7});
8exports.makeGithubReleases = void 0;
9
10var _utils = require("@auto/utils");
11
12var _requestPromiseNative = _interopRequireDefault(require("request-promise-native"));
13
14var _utils2 = require("./utils");
15
16const makeGithubReleases = async (logs, prefixes, workspacesOptions, githubOptions) => {
17 if (typeof githubOptions.token !== 'string') {
18 throw new Error('GitHub token is required');
19 }
20
21 for (const log of logs) {
22 const name = (0, _utils.removeAutoNamePrefix)(log.name, workspacesOptions.autoNamePrefix);
23 await (0, _requestPromiseNative.default)({
24 uri: `${_utils2.GITHUB_API_REPOS_URL}${githubOptions.username}/${githubOptions.repo}/releases`,
25 method: 'POST',
26 headers: {
27 Authorization: `token ${githubOptions.token}`,
28 'User-Agent': 'auto-tools'
29 },
30 json: {
31 tag_name: `${name}@${log.version}`,
32 name: `${name}@${log.version}`,
33 body: log.messages.map(message => `* ${prefixes.required[message.type].value} ${message.value}`).join('\n')
34 }
35 });
36 }
37};
38
39exports.makeGithubReleases = makeGithubReleases;
\No newline at end of file