feat: scripts
This commit is contained in:
70
scripts/checkdependences.js
Normal file
70
scripts/checkdependences.js
Normal file
@@ -0,0 +1,70 @@
|
||||
#! /usr/bin/env runjs
|
||||
|
||||
var colorPrint = require('component-colorprint-ex.js');
|
||||
|
||||
var checkResultList = [];
|
||||
|
||||
var getArchiveInfo = (gid, aid) => {
|
||||
var archiveInfo = __.httprequest
|
||||
.fromUrl('https://hatter.ink/repo/archive_info.jsonp')
|
||||
.param('__auth_token', 'r7dyCJpant4VFs5vqQSphEBEEqNBXqSBiFPPG7Nz6')
|
||||
.param('gid', gid)
|
||||
.param('aid', aid)
|
||||
.get();
|
||||
return JSON.parse($STR(archiveInfo));
|
||||
};
|
||||
|
||||
var checkNewestVersion = (printedLen, gid, aid, ver) => {
|
||||
var printS = (79 - printedLen);
|
||||
printS = ((printS < 0)? 0: printS) + 1;
|
||||
|
||||
print(printS.repeat(' ').join(''));
|
||||
var archiveInfo = getArchiveInfo(gid, aid);
|
||||
if (archiveInfo.data == null) {
|
||||
println('-');
|
||||
} else {
|
||||
if (archiveInfo.data.latestVersion == ver) {
|
||||
println(colorPrint.okgreen.render('OK'));
|
||||
} else {
|
||||
println(colorPrint.warning.render('NG') + ' ' + colorPrint.okgreen.render('-> ' + archiveInfo.data.latestVersion));
|
||||
checkResultList.push([gid, aid, ver].join(':') + ' -> ' + archiveInfo.data.latestVersion);
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
var main = () => {
|
||||
var outs = $$.shell().commands('build.js', '-q', 'dependencies', '--configuration', 'compile').mergeError().start();
|
||||
var out = outs[0];
|
||||
|
||||
var lines = $STR(out).split(/\n/);
|
||||
|
||||
lines.forEach((ln) => {
|
||||
var indexOfSSS = ln.indexOf('--- ');
|
||||
if (indexOfSSS >= 0) {
|
||||
print(ln);
|
||||
if (ln.indexOf('(*)') >= 0) {
|
||||
println();
|
||||
} else {
|
||||
var gidAidVerAndMore = ln.substring(indexOfSSS + 3).trim();
|
||||
var gid = gidAidVerAndMore.split(':')[0];
|
||||
var aid = gidAidVerAndMore.split(':')[1];
|
||||
var ver = gidAidVerAndMore.split(':')[2];
|
||||
if (gidAidVerAndMore.indexOf('->') >= 0) {
|
||||
ver = gidAidVerAndMore.split('->')[1].trim();
|
||||
}
|
||||
|
||||
checkNewestVersion(ln.length, gid, aid, ver);
|
||||
}
|
||||
} else {
|
||||
println(ln);
|
||||
}
|
||||
});
|
||||
|
||||
if (checkResultList.length > 0) {
|
||||
xprintln('[WARN] Check result:\n' + checkResultList.join('\n'));
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
main();
|
||||
|
||||
Reference in New Issue
Block a user