@24i/smartapps-bigscreen-rnv-build-engine 0.0.2-alpha.1343 → 0.0.2-alpha.1345
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/src/constants/buildSchemes.js +11 -14
- package/dist/src/constants/index.js +6 -20
- package/dist/src/constants/platforms.js +8 -11
- package/dist/src/index.js +68 -79
- package/dist/src/resolvers/index.js +20 -76
- package/dist/src/resolvers/resolveBaseUrl.js +29 -55
- package/dist/src/resolvers/resolveBuildVersion.js +37 -58
- package/dist/src/resolvers/resolveBuildVersionOffset.js +30 -49
- package/dist/src/resolvers/resolveDeployLocations.js +62 -106
- package/dist/src/resolvers/resolveGenericRnvConfig.js +61 -68
- package/dist/src/resolvers/resolveHbbtvDeployConfig.js +5 -12
- package/dist/src/resolvers/resolveHbbtvDeployUrl.js +8 -17
- package/dist/src/resolvers/resolveHbbtvRemoteBuildDirRelativePath.js +24 -40
- package/dist/src/resolvers/resolveZippedPlatformBuildsRelativeFilePath.js +12 -18
- package/dist/src/scripts/buildAllWithScheme.js +21 -32
- package/dist/src/scripts/gitReleaser/afterVersionBump.js +17 -31
- package/dist/src/scripts/gitReleaser/beforeVersionBump.js +10 -20
- package/dist/src/scripts/gitReleaser/checkReleaseNotes.js +15 -31
- package/dist/src/scripts/gitReleaser/pushRelease.js +27 -48
- package/dist/src/scripts/gitReleaser/pushReleaseCandidate.js +4 -9
- package/dist/src/scripts/gitReleaser/pushReleaseNotes.js +33 -63
- package/dist/src/scripts/release/deleteSourceMaps.js +8 -19
- package/dist/src/scripts/release/deployToAppCenter.js +60 -81
- package/dist/src/scripts/release/githubRelease.js +106 -142
- package/dist/src/scripts/release/notifySlack/makePayload.js +75 -136
- package/dist/src/scripts/release/notifySlack/notifySlack.js +37 -43
- package/dist/src/scripts/release/notifySlack/slackBlockKitBuilder.js +27 -56
- package/dist/src/scripts/release/sentryRelease.js +62 -96
- package/dist/src/scripts/release/urlsMarkdown.js +51 -109
- package/dist/src/scripts/releaseAllWithScheme.js +69 -97
- package/dist/src/scripts/utils/cmdUtils.js +10 -29
- package/dist/src/scripts/utils/fsUtils.js +9 -16
- package/dist/src/scripts/utils/gitUtils.js +68 -108
- package/dist/src/scripts/utils/index.js +9 -14
- package/dist/src/scripts/utils/stringUtils.js +3 -8
- package/dist/src/sdks/index.js +35 -59
- package/dist/src/sdks/sdk-tizen/index.js +203 -517
- package/dist/src/sdks/sdk-webos/index.js +138 -377
- package/dist/src/sdks/sdk-webpack/index.js +25 -100
- package/dist/src/sdks/sdkUtils.js +15 -71
- package/dist/src/tasks/deploy/aswS3/aws.js +21 -41
- package/dist/src/tasks/deploy/aswS3/deployS3.js +70 -105
- package/dist/src/tasks/deploy/hbbtv/deployHbbtv.js +96 -199
- package/dist/src/tasks/engineTasks.js +20 -23
- package/dist/src/tasks/task.rnv.build.js +101 -176
- package/dist/src/tasks/task.rnv.configure.js +46 -103
- package/dist/src/tasks/task.rnv.configureSoft.js +27 -79
- package/dist/src/tasks/task.rnv.deploy.js +33 -76
- package/dist/src/tasks/task.rnv.hooks.run.js +55 -122
- package/dist/src/tasks/task.rnv.package.js +23 -62
- package/dist/src/tasks/task.rnv.project.configure.js +104 -261
- package/dist/src/tasks/task.rnv.start.js +48 -95
- package/dist/src/types/c.js +2 -0
- package/dist/src/types/index.js +2 -0
- package/dist/src/utils/forEachSupportedPlatformFlavour.js +19 -38
- package/dist/src/utils/replaceRelevantStringsInConfig/index.js +4 -12
- package/dist/src/utils/replaceRelevantStringsInConfig/replaceRelevantStringsInConfig.js +29 -44
- package/dist/src/utils/replaceRelevantStringsInConfig/replaceTemplateString.js +54 -83
- package/dist/src/utils/zipBuildsByPlatforms.js +42 -77
- package/dist/templates/platforms/_shared/template.js +76 -91
- package/dist/templates/platforms/_shared/webpack.base.js +244 -271
- package/dist/templates/platforms/entone/webpack.config.dev.js +46 -46
- package/dist/templates/platforms/entone/webpack.config.prod.js +40 -40
- package/dist/templates/platforms/hbbtv/webpack.config.dev.js +63 -50
- package/dist/templates/platforms/hbbtv/webpack.config.prod.js +57 -44
- package/dist/templates/platforms/tizen/webpack.config.dev.js +47 -47
- package/dist/templates/platforms/tizen/webpack.config.prod.js +40 -40
- package/dist/templates/platforms/webos/project/public/content/js/webOSTVjs-1.2.3/webOSTV.js +1 -391
- package/dist/templates/platforms/webos/webpack.config.dev.js +50 -48
- package/dist/templates/platforms/webos/webpack.config.prod.js +42 -40
- package/dist/templates/platforms/webtv/webpack.config.dev.js +46 -46
- package/dist/templates/platforms/webtv/webpack.config.prod.js +40 -40
- package/dist/types/src/constants/buildSchemes.d.ts +11 -0
- package/dist/types/src/constants/index.d.ts +2 -0
- package/dist/types/src/constants/platforms.d.ts +8 -0
- package/dist/types/src/index.d.ts +18 -0
- package/dist/types/src/resolvers/index.d.ts +9 -0
- package/dist/types/src/resolvers/resolveBaseUrl.d.ts +6 -0
- package/dist/types/src/resolvers/resolveBuildVersion.d.ts +6 -0
- package/dist/types/src/resolvers/resolveBuildVersionOffset.d.ts +3 -0
- package/dist/types/src/resolvers/resolveDeployLocations.d.ts +9 -0
- package/dist/types/src/resolvers/resolveGenericRnvConfig.d.ts +4 -0
- package/dist/types/src/resolvers/resolveHbbtvDeployConfig.d.ts +10 -0
- package/dist/types/src/resolvers/resolveHbbtvDeployUrl.d.ts +3 -0
- package/dist/types/src/resolvers/resolveHbbtvRemoteBuildDirRelativePath.d.ts +3 -0
- package/dist/types/src/resolvers/resolveZippedPlatformBuildsRelativeFilePath.d.ts +3 -0
- package/dist/types/src/scripts/buildAllWithScheme.d.ts +1 -0
- package/dist/types/src/scripts/gitReleaser/afterVersionBump.d.ts +1 -0
- package/dist/types/src/scripts/gitReleaser/beforeVersionBump.d.ts +1 -0
- package/dist/types/src/scripts/gitReleaser/checkReleaseNotes.d.ts +1 -0
- package/dist/types/src/scripts/gitReleaser/pushRelease.d.ts +1 -0
- package/dist/types/src/scripts/gitReleaser/pushReleaseCandidate.d.ts +1 -0
- package/dist/types/src/scripts/gitReleaser/pushReleaseNotes.d.ts +1 -0
- package/dist/types/src/scripts/release/deleteSourceMaps.d.ts +1 -0
- package/dist/types/src/scripts/release/deployToAppCenter.d.ts +1 -0
- package/dist/types/src/scripts/release/githubRelease.d.ts +1 -0
- package/dist/types/src/scripts/release/notifySlack/makePayload.d.ts +15 -0
- package/dist/types/src/scripts/release/notifySlack/notifySlack.d.ts +1 -0
- package/dist/types/src/scripts/release/notifySlack/slackBlockKitBuilder.d.ts +26 -0
- package/dist/types/src/scripts/release/sentryRelease.d.ts +1 -0
- package/dist/types/src/scripts/release/urlsMarkdown.d.ts +1 -0
- package/dist/types/src/scripts/releaseAllWithScheme.d.ts +1 -0
- package/dist/types/src/scripts/utils/cmdUtils.d.ts +4 -0
- package/dist/types/src/scripts/utils/fsUtils.d.ts +2 -0
- package/dist/types/src/scripts/utils/gitUtils.d.ts +14 -0
- package/dist/types/src/scripts/utils/index.d.ts +5 -0
- package/dist/types/src/scripts/utils/stringUtils.d.ts +1 -0
- package/dist/types/src/sdks/index.d.ts +5 -0
- package/dist/types/src/sdks/sdk-tizen/index.d.ts +5 -0
- package/dist/types/src/sdks/sdk-webos/index.d.ts +4 -0
- package/dist/types/src/sdks/sdk-webpack/index.d.ts +4 -0
- package/dist/types/src/sdks/sdkUtils.d.ts +2 -0
- package/dist/types/src/tasks/deploy/aswS3/aws.d.ts +2 -0
- package/dist/types/src/tasks/deploy/aswS3/deployS3.d.ts +1 -0
- package/dist/types/src/tasks/deploy/hbbtv/deployHbbtv.d.ts +1 -0
- package/dist/types/src/tasks/engineTasks.d.ts +13 -0
- package/dist/types/src/tasks/task.rnv.build.d.ts +9 -0
- package/dist/types/src/tasks/task.rnv.configure.d.ts +9 -0
- package/dist/types/src/tasks/task.rnv.configureSoft.d.ts +9 -0
- package/dist/types/src/tasks/task.rnv.deploy.d.ts +9 -0
- package/dist/types/src/tasks/task.rnv.hooks.run.d.ts +13 -0
- package/dist/types/src/tasks/task.rnv.package.d.ts +9 -0
- package/dist/types/src/tasks/task.rnv.project.configure.d.ts +9 -0
- package/dist/types/src/tasks/task.rnv.start.d.ts +9 -0
- package/dist/types/src/types/c.d.ts +316 -0
- package/dist/types/src/types/index.d.ts +1 -0
- package/dist/types/src/utils/forEachSupportedPlatformFlavour.d.ts +1 -0
- package/dist/types/src/utils/replaceRelevantStringsInConfig/index.d.ts +1 -0
- package/dist/types/src/utils/replaceRelevantStringsInConfig/replaceRelevantStringsInConfig.d.ts +1 -0
- package/dist/types/src/utils/replaceRelevantStringsInConfig/replaceTemplateString.d.ts +1 -0
- package/dist/types/src/utils/zipBuildsByPlatforms.d.ts +1 -0
- package/dist/types/templates/platforms/_shared/template.d.ts +2 -0
- package/dist/types/templates/platforms/_shared/webpack.base.d.ts +1 -0
- package/dist/types/templates/platforms/entone/webpack.config.dev.d.ts +2 -0
- package/dist/types/templates/platforms/entone/webpack.config.prod.d.ts +2 -0
- package/dist/types/templates/platforms/hbbtv/webpack.config.dev.d.ts +2 -0
- package/dist/types/templates/platforms/hbbtv/webpack.config.prod.d.ts +2 -0
- package/dist/types/templates/platforms/tizen/webpack.config.dev.d.ts +2 -0
- package/dist/types/templates/platforms/tizen/webpack.config.prod.d.ts +2 -0
- package/dist/types/templates/platforms/webos/webpack.config.dev.d.ts +2 -0
- package/dist/types/templates/platforms/webos/webpack.config.prod.d.ts +2 -0
- package/dist/types/templates/platforms/webtv/webpack.config.dev.d.ts +2 -0
- package/dist/types/templates/platforms/webtv/webpack.config.prod.d.ts +2 -0
- package/package.json +14 -17
|
@@ -1,153 +1,117 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
});
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.githubRelease = void 0;
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
message = response.message;
|
|
31
|
-
if (message && !errors) throw new Error("GitHub error: ".concat(message));
|
|
32
|
-
if (!errors) return;
|
|
33
|
-
|
|
34
|
-
var makeErrorDetailString = function makeErrorDetailString() {
|
|
35
|
-
var error = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
36
|
-
return Object.keys(error).map(function (key) {
|
|
37
|
-
return "".concat(key, ": \"").concat(error[key], "\"");
|
|
38
|
-
}).join(', ');
|
|
39
|
-
};
|
|
40
|
-
|
|
41
|
-
var errorsDetails = errors.map(makeErrorDetailString);
|
|
42
|
-
throw new Error("GitHub error: ".concat(message || '', "\n").concat(errorsDetails.join('\n')));
|
|
7
|
+
const child_process_1 = require("child_process");
|
|
8
|
+
const fs_1 = __importDefault(require("fs"));
|
|
9
|
+
const assert_1 = require("assert");
|
|
10
|
+
const path_1 = require("path");
|
|
11
|
+
const resolvers_1 = require("../../resolvers");
|
|
12
|
+
const urlsMarkdown_1 = require("./urlsMarkdown");
|
|
13
|
+
const { ok } = assert_1.strict;
|
|
14
|
+
const token = process.env.GITHUB_TOKEN;
|
|
15
|
+
const targetCommit = process.env.TRAVIS_COMMIT;
|
|
16
|
+
const githubContentType = 'application/vnd.github.v3+json';
|
|
17
|
+
const githubReleaseNotesPath = 'RELEASE_NOTES_GITHUB.md';
|
|
18
|
+
const handleResponseErrors = (response) => {
|
|
19
|
+
const { errors, message } = response;
|
|
20
|
+
if (message && !errors)
|
|
21
|
+
throw new Error(`GitHub error: ${message}`);
|
|
22
|
+
if (!errors)
|
|
23
|
+
return;
|
|
24
|
+
const makeErrorDetailString = (error = {}) => Object
|
|
25
|
+
.keys(error)
|
|
26
|
+
.map((key) => `${key}: "${error[key]}"`)
|
|
27
|
+
.join(', ');
|
|
28
|
+
const errorsDetails = errors.map(makeErrorDetailString);
|
|
29
|
+
throw new Error(`GitHub error: ${message || ''}\n${errorsDetails.join('\n')}`);
|
|
43
30
|
};
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
31
|
+
const getReleaseNotesPath = (c) => {
|
|
32
|
+
try {
|
|
33
|
+
return c.buildConfig.common.releaseNotes.relativePath || '';
|
|
34
|
+
}
|
|
35
|
+
catch (error) {
|
|
36
|
+
return '';
|
|
37
|
+
}
|
|
51
38
|
};
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
}
|
|
39
|
+
const deleteFileIfExists = (filePath) => {
|
|
40
|
+
if (fs_1.default.existsSync(filePath)) {
|
|
41
|
+
fs_1.default.unlinkSync(filePath);
|
|
42
|
+
}
|
|
57
43
|
};
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
var textToAppend = (0, _urlsMarkdown.getUrlsMarkdown)(c);
|
|
66
|
-
(0, _child_process.execSync)("echo \"".concat(textToAppend, "\" >> ").concat(githubReleaseNotesPath));
|
|
44
|
+
const makeGitHubReleaseNotes = (c) => {
|
|
45
|
+
const releaseNotesPath = getReleaseNotesPath(c);
|
|
46
|
+
ok(releaseNotesPath, 'The path to the file with release notes is missing!');
|
|
47
|
+
deleteFileIfExists(githubReleaseNotesPath);
|
|
48
|
+
child_process_1.execSync(`sed '1d;2d' ${releaseNotesPath} >> ${githubReleaseNotesPath}`);
|
|
49
|
+
const textToAppend = urlsMarkdown_1.getUrlsMarkdown(c);
|
|
50
|
+
child_process_1.execSync(`echo "${textToAppend}" >> ${githubReleaseNotesPath}`);
|
|
67
51
|
};
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
console.log("Pushing GitHub Release: ".concat(versionLabel, "..."));
|
|
97
|
-
var responseString = (0, _child_process.execSync)(cmd, {
|
|
98
|
-
stdio: 'pipe'
|
|
99
|
-
}).toString();
|
|
100
|
-
var response = JSON.parse(responseString);
|
|
101
|
-
handleResponseErrors(response);
|
|
102
|
-
console.log('Pushing done.');
|
|
103
|
-
return response;
|
|
52
|
+
const createRelease = (c) => {
|
|
53
|
+
const { packageVersion, git = {} } = c.buildConfig.common;
|
|
54
|
+
const versionLabel = `v${packageVersion}`;
|
|
55
|
+
ok(token, 'process.env.GITHUB_TOKEN is not set!');
|
|
56
|
+
ok(targetCommit, 'process.env.TRAVIS_COMMIT is not set!');
|
|
57
|
+
ok(git.owner, 'Missing value for rnv config prop: common.git.owner');
|
|
58
|
+
ok(git.repo, 'Missing value for rnv config prop: common.git.repo');
|
|
59
|
+
ok(packageVersion);
|
|
60
|
+
makeGitHubReleaseNotes(c);
|
|
61
|
+
const releaseNotesContent = fs_1.default.readFileSync(githubReleaseNotesPath).toString();
|
|
62
|
+
const data = {
|
|
63
|
+
tag_name: versionLabel,
|
|
64
|
+
target_commitish: targetCommit,
|
|
65
|
+
name: versionLabel,
|
|
66
|
+
body: releaseNotesContent,
|
|
67
|
+
draft: false,
|
|
68
|
+
prerelease: false,
|
|
69
|
+
};
|
|
70
|
+
const url = `https://api.github.com/repos/${git.owner}/${git.repo}/releases`;
|
|
71
|
+
const headers = `-H "Accept: ${githubContentType}" -H "Authorization: token ${token}"`;
|
|
72
|
+
const dataStringWithFixedSingleQuotes = JSON.stringify(data).replace(/'/g, "'\\''");
|
|
73
|
+
const cmd = `curl -X POST ${headers} ${url} -d '${dataStringWithFixedSingleQuotes}'`;
|
|
74
|
+
console.log(`Pushing GitHub Release: ${versionLabel}...`);
|
|
75
|
+
const responseString = child_process_1.execSync(cmd, { stdio: 'pipe' }).toString();
|
|
76
|
+
const response = JSON.parse(responseString);
|
|
77
|
+
handleResponseErrors(response);
|
|
78
|
+
console.log('Pushing done.');
|
|
79
|
+
return response;
|
|
104
80
|
};
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
}).toString().replace(/\r?\n/, '');
|
|
81
|
+
const getFileMimeType = (filepath) => {
|
|
82
|
+
const cmd = `file --mime-type -b ${filepath}`;
|
|
83
|
+
return child_process_1.execSync(cmd, { stdio: 'pipe' })
|
|
84
|
+
.toString()
|
|
85
|
+
.replace(/\r?\n/, '');
|
|
111
86
|
};
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
}).toString();
|
|
125
|
-
var uploadResponse = JSON.parse(responseString);
|
|
126
|
-
handleResponseErrors(uploadResponse);
|
|
127
|
-
console.log('Uploading done.');
|
|
128
|
-
return uploadResponse;
|
|
87
|
+
const uploadAsset = (uploadUrl = '', filePath) => {
|
|
88
|
+
if (!uploadUrl)
|
|
89
|
+
return null;
|
|
90
|
+
const url = `${uploadUrl.replace('{?name,label}', '')}`;
|
|
91
|
+
const headers = `-H "Accept: ${githubContentType}" -H "Authorization: token ${token}" -H "content-type: ${getFileMimeType(filePath)}" -H "content-length: ${fs_1.default.statSync(filePath).size}"`;
|
|
92
|
+
const cmd = `curl --data-binary @"${filePath}" ${headers} ${url}?name=${path_1.basename(filePath)}`;
|
|
93
|
+
console.log(`Uploading ${filePath} asset to created GitHub Release...`);
|
|
94
|
+
const responseString = child_process_1.execSync(cmd, { stdio: 'pipe' }).toString();
|
|
95
|
+
const uploadResponse = JSON.parse(responseString);
|
|
96
|
+
handleResponseErrors(uploadResponse);
|
|
97
|
+
console.log('Uploading done.');
|
|
98
|
+
return uploadResponse;
|
|
129
99
|
};
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
uploadAsset(githubUploadUrl, zipFilePath);
|
|
136
|
-
}
|
|
100
|
+
const uploadZipWithPlatformBuilds = (c, platformName, githubUploadUrl) => {
|
|
101
|
+
const zipFilePath = resolvers_1.resolveZippedPlatformBuildsRelativeFilePath(c, platformName);
|
|
102
|
+
if (zipFilePath) {
|
|
103
|
+
uploadAsset(githubUploadUrl, zipFilePath);
|
|
104
|
+
}
|
|
137
105
|
};
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
uploadZipWithPlatformBuilds(c, platformName, uploadUrl);
|
|
149
|
-
});
|
|
150
|
-
deleteFileIfExists(githubReleaseNotesPath);
|
|
106
|
+
const githubRelease = (c) => {
|
|
107
|
+
const releaseResponse = createRelease(c) || {};
|
|
108
|
+
const uploadUrl = releaseResponse.upload_url;
|
|
109
|
+
ok(uploadUrl, 'Missing "upload_url" in release response!');
|
|
110
|
+
const { defaults = {} } = c.buildConfig;
|
|
111
|
+
const { supportedPlatforms = [] } = defaults;
|
|
112
|
+
supportedPlatforms.forEach((platformName) => {
|
|
113
|
+
uploadZipWithPlatformBuilds(c, platformName, uploadUrl);
|
|
114
|
+
});
|
|
115
|
+
deleteFileIfExists(githubReleaseNotesPath);
|
|
151
116
|
};
|
|
152
|
-
|
|
153
|
-
exports.githubRelease = githubRelease;
|
|
117
|
+
exports.githubRelease = githubRelease;
|
|
@@ -1,149 +1,88 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
|
-
Object.defineProperty(exports, "__esModule", {
|
|
4
|
-
value: true
|
|
5
|
-
});
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
3
|
exports.makeDistributionPayload = exports.makeReleaseCandidatePayload = exports.makeDevelopmentPayload = void 0;
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
|
|
13
|
-
|
|
14
|
-
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
15
|
-
|
|
16
|
-
function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
|
|
17
|
-
|
|
18
|
-
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
|
|
19
|
-
|
|
20
|
-
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
21
|
-
|
|
22
|
-
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
23
|
-
|
|
24
|
-
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
25
|
-
|
|
26
|
-
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
|
27
|
-
|
|
28
|
-
function _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"] != null) _i["return"](); } finally { if (_d) throw _e; } } return _arr; }
|
|
29
|
-
|
|
30
|
-
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
31
|
-
|
|
32
|
-
var getVersionsObject = function getVersionsObject(c) {
|
|
33
|
-
var _ref = (0, _resolvers.resolveDeployLocations)(c) || {},
|
|
34
|
-
_ref$versions = _ref.versions,
|
|
35
|
-
versions = _ref$versions === void 0 ? [] : _ref$versions;
|
|
36
|
-
|
|
37
|
-
return versions;
|
|
38
|
-
};
|
|
39
|
-
|
|
40
|
-
var getVersion = function getVersion(c) {
|
|
41
|
-
return Object.keys(getVersionsObject(c))[0] || '';
|
|
42
|
-
};
|
|
43
|
-
|
|
44
|
-
var getPlatformsObject = function getPlatformsObject(c) {
|
|
45
|
-
var version = getVersion(c);
|
|
46
|
-
|
|
47
|
-
var _ref2 = getVersionsObject(c)[version] || {},
|
|
48
|
-
_ref2$platforms = _ref2.platforms,
|
|
49
|
-
platforms = _ref2$platforms === void 0 ? {} : _ref2$platforms;
|
|
50
|
-
|
|
51
|
-
return platforms;
|
|
4
|
+
const slackBlockKitBuilder_1 = require("./slackBlockKitBuilder");
|
|
5
|
+
const resolvers_1 = require("../../../resolvers");
|
|
6
|
+
const getVersionsObject = (c) => {
|
|
7
|
+
const { versions = [] } = resolvers_1.resolveDeployLocations(c) || {};
|
|
8
|
+
return versions;
|
|
52
9
|
};
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
return '';
|
|
59
|
-
}
|
|
10
|
+
const getVersion = (c) => Object.keys(getVersionsObject(c))[0] || '';
|
|
11
|
+
const getPlatformsObject = (c) => {
|
|
12
|
+
const version = getVersion(c);
|
|
13
|
+
const { platforms = {} } = getVersionsObject(c)[version] || {};
|
|
14
|
+
return platforms;
|
|
60
15
|
};
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
var indexUrl = flavourData.indexUrl,
|
|
69
|
-
packageUrl = flavourData.packageUrl;
|
|
70
|
-
return "- *".concat(flavour, "* [<").concat(packageUrl, "|Download>] [<").concat(indexUrl, "|Open deployed index.html>]");
|
|
71
|
-
}).join('\n');
|
|
16
|
+
const getCommonAppName = (c) => {
|
|
17
|
+
try {
|
|
18
|
+
return c.buildConfig.common.appName;
|
|
19
|
+
}
|
|
20
|
+
catch (error) {
|
|
21
|
+
return '';
|
|
22
|
+
}
|
|
72
23
|
};
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
24
|
+
const makeFlavoursMarkdown = (platformName, entries) => entries
|
|
25
|
+
.map(([flavour, flavourData]) => {
|
|
26
|
+
const { indexUrl, packageUrl } = flavourData;
|
|
27
|
+
return `- *${flavour}* [<${packageUrl}|Download>] [<${indexUrl}|Open deployed index.html>]`;
|
|
28
|
+
})
|
|
29
|
+
.join('\n');
|
|
30
|
+
const makePackagePayload = (c, platformName) => {
|
|
31
|
+
const platformData = getPlatformsObject(c)[platformName];
|
|
32
|
+
const flavoursEntries = Object.entries(platformData);
|
|
33
|
+
return [
|
|
34
|
+
slackBlockKitBuilder_1.Divider.plain(),
|
|
35
|
+
slackBlockKitBuilder_1.Context.mrkdwns([`Platform: *${platformName}*`]),
|
|
36
|
+
slackBlockKitBuilder_1.Context.mrkdwns([makeFlavoursMarkdown(platformName, flavoursEntries)]),
|
|
37
|
+
];
|
|
78
38
|
};
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
}).flat();
|
|
39
|
+
const makePackagesPayload = (c) => {
|
|
40
|
+
const platformList = Object.keys(getPlatformsObject(c));
|
|
41
|
+
return platformList
|
|
42
|
+
.map((platformName) => makePackagePayload(c, platformName))
|
|
43
|
+
.flat();
|
|
85
44
|
};
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
} : null, gitHubRelease ? {
|
|
106
|
-
text: 'View GitHub Release',
|
|
107
|
-
url: "https://github.com/".concat(owner, "/").concat(repo, "/releases/tag/").concat(version)
|
|
108
|
-
} : null].filter(Boolean))];
|
|
45
|
+
const makeHeaderPayload = (c, { title = '', buttons }) => {
|
|
46
|
+
const { travisBuild, gitHubRelease } = buttons || {};
|
|
47
|
+
const { owner, repo } = c.buildConfig.common.git || {};
|
|
48
|
+
const version = getVersion(c);
|
|
49
|
+
return [
|
|
50
|
+
slackBlockKitBuilder_1.Divider.plain(),
|
|
51
|
+
slackBlockKitBuilder_1.Section.mrkdwn(title),
|
|
52
|
+
slackBlockKitBuilder_1.Context.mrkdwns([`Version: *${version}*`]),
|
|
53
|
+
slackBlockKitBuilder_1.Actions.buttons([
|
|
54
|
+
travisBuild ? {
|
|
55
|
+
text: 'View Travis Build Log',
|
|
56
|
+
url: process.env.TRAVIS_BUILD_WEB_URL || `https://travis-ci.com/github/${owner}/${repo}/branches`,
|
|
57
|
+
} : null,
|
|
58
|
+
gitHubRelease ? {
|
|
59
|
+
text: 'View GitHub Release',
|
|
60
|
+
url: `https://github.com/${owner}/${repo}/releases/tag/${version}`,
|
|
61
|
+
} : null,
|
|
62
|
+
].filter(Boolean)),
|
|
63
|
+
];
|
|
109
64
|
};
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
};
|
|
119
|
-
|
|
120
|
-
var makeDevelopmentPayload = function makeDevelopmentPayload(c) {
|
|
121
|
-
var title = "There are new *development* builds for *".concat(getCommonAppName(c), "* app!");
|
|
122
|
-
var buttons = {
|
|
123
|
-
travisBuild: true
|
|
124
|
-
};
|
|
125
|
-
return makePayload(c, title, buttons);
|
|
65
|
+
const makePayload = (c, title, buttons) => ({
|
|
66
|
+
blocks: [
|
|
67
|
+
...makeHeaderPayload(c, { title, buttons }),
|
|
68
|
+
...makePackagesPayload(c),
|
|
69
|
+
],
|
|
70
|
+
});
|
|
71
|
+
const makeDevelopmentPayload = (c) => {
|
|
72
|
+
const title = `There are new *development* builds for *${getCommonAppName(c)}* app!`;
|
|
73
|
+
const buttons = { travisBuild: true };
|
|
74
|
+
return makePayload(c, title, buttons);
|
|
126
75
|
};
|
|
127
|
-
|
|
128
76
|
exports.makeDevelopmentPayload = makeDevelopmentPayload;
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
travisBuild: true
|
|
134
|
-
};
|
|
135
|
-
return makePayload(c, title, buttons);
|
|
77
|
+
const makeReleaseCandidatePayload = (c) => {
|
|
78
|
+
const title = `There are new *release candidate* builds for *${getCommonAppName(c)}* app!`;
|
|
79
|
+
const buttons = { travisBuild: true };
|
|
80
|
+
return makePayload(c, title, buttons);
|
|
136
81
|
};
|
|
137
|
-
|
|
138
82
|
exports.makeReleaseCandidatePayload = makeReleaseCandidatePayload;
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
travisBuild: true,
|
|
144
|
-
gitHubRelease: true
|
|
145
|
-
};
|
|
146
|
-
return makePayload(c, title, buttons);
|
|
83
|
+
const makeDistributionPayload = (c) => {
|
|
84
|
+
const title = `There are new *distribution* builds for *${getCommonAppName(c)}* app!`;
|
|
85
|
+
const buttons = { travisBuild: true, gitHubRelease: true };
|
|
86
|
+
return makePayload(c, title, buttons);
|
|
147
87
|
};
|
|
148
|
-
|
|
149
|
-
exports.makeDistributionPayload = makeDistributionPayload;
|
|
88
|
+
exports.makeDistributionPayload = makeDistributionPayload;
|
|
@@ -1,48 +1,42 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
5
|
+
}) : (function(o, m, k, k2) {
|
|
6
|
+
if (k2 === undefined) k2 = k;
|
|
7
|
+
o[k2] = m[k];
|
|
8
|
+
}));
|
|
9
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
10
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
11
|
+
}) : function(o, v) {
|
|
12
|
+
o["default"] = v;
|
|
7
13
|
});
|
|
14
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
15
|
+
if (mod && mod.__esModule) return mod;
|
|
16
|
+
var result = {};
|
|
17
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
18
|
+
__setModuleDefault(result, mod);
|
|
19
|
+
return result;
|
|
20
|
+
};
|
|
21
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
8
22
|
exports.notifySlack = void 0;
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
var releaseType = c.runtime.scheme;
|
|
20
|
-
|
|
21
|
-
switch (releaseType) {
|
|
22
|
-
case 'dev:latest':
|
|
23
|
-
return payload.makeDevelopmentPayload(c);
|
|
24
|
-
|
|
25
|
-
case 'rc:latest':
|
|
26
|
-
return payload.makeReleaseCandidatePayload(c);
|
|
27
|
-
|
|
28
|
-
case 'release:dist':
|
|
29
|
-
return payload.makeDistributionPayload(c);
|
|
30
|
-
|
|
31
|
-
default:
|
|
32
|
-
throw new Error('Notify Slack: unsupported or undefined release type! Did you pass it as an argument?');
|
|
33
|
-
}
|
|
23
|
+
const child_process_1 = require("child_process");
|
|
24
|
+
const payload = __importStar(require("./makePayload"));
|
|
25
|
+
const getPayload = (c) => {
|
|
26
|
+
const releaseType = c.runtime.scheme;
|
|
27
|
+
switch (releaseType) {
|
|
28
|
+
case 'dev:latest': return payload.makeDevelopmentPayload(c);
|
|
29
|
+
case 'rc:latest': return payload.makeReleaseCandidatePayload(c);
|
|
30
|
+
case 'release:dist': return payload.makeDistributionPayload(c);
|
|
31
|
+
default: throw new Error('Notify Slack: unsupported or undefined release type! Did you pass it as an argument?');
|
|
32
|
+
}
|
|
34
33
|
};
|
|
35
|
-
|
|
36
|
-
var
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
var cmd = "curl -X POST -H ".concat(contentType, " ").concat(data, " ").concat(webHookUrl);
|
|
43
|
-
(0, _child_process.execSync)(cmd, {
|
|
44
|
-
stdio: 'inherit'
|
|
45
|
-
});
|
|
34
|
+
const notifySlack = (c) => {
|
|
35
|
+
var _a, _b, _c, _d;
|
|
36
|
+
const contentType = '"Content-type: application/json"';
|
|
37
|
+
const data = `--data '${JSON.stringify(getPayload(c))}'`;
|
|
38
|
+
const webHookUrl = ((_d = (_c = (_b = (_a = c.buildConfig) === null || _a === void 0 ? void 0 : _a.common) === null || _b === void 0 ? void 0 : _b.deploy) === null || _c === void 0 ? void 0 : _c.slack) === null || _d === void 0 ? void 0 : _d.webhookUrl) || '';
|
|
39
|
+
const cmd = `curl -X POST -H ${contentType} ${data} ${webHookUrl}`;
|
|
40
|
+
child_process_1.execSync(cmd, { stdio: 'inherit' });
|
|
46
41
|
};
|
|
47
|
-
|
|
48
|
-
exports.notifySlack = notifySlack;
|
|
42
|
+
exports.notifySlack = notifySlack;
|