This commit is contained in:
Timo Hocker 2020-04-18 17:43:13 +02:00
parent f383ed0ce4
commit c0c2881020
3 changed files with 14 additions and 6 deletions

View File

@ -18,7 +18,8 @@ async function apply_template (
}
type JSONMutator = {
(json: object): Promise<object>;
// eslint-disable-next-line @typescript-eslint/no-explicit-any
(json: any): any;
}
/**
@ -46,11 +47,17 @@ async function modify_json (
*/
function run_command (command: string, folder = ''): Promise<void> {
return new Promise ((res) => {
const exec = child_process.exec (
child_process.exec (
command,
{ cwd: path.join (process.cwd (), folder), stdio: 'inherit' }
{ cwd: path.join (process.cwd (), folder) },
(err, stdout, stderr) => {
if (err)
throw err;
// eslint-disable-next-line no-console
console.log (stdout + stderr);
res ();
}
);
exec.on ('close', res);
});
}

View File

@ -24,7 +24,8 @@ export class Jenkins implements Snippet {
if (is_node) {
await apply_template (node_js, 'jenkins.js');
await apply_template (node_jenkinsfile, 'Jenkinsfile');
await modify_json ((obj) => {
// eslint-disable-next-line @typescript-eslint/no-explicit-any
await modify_json ((obj: any): any => {
obj.scripts.ci = 'yarn && node jenkins.js';
return obj;
});

View File

@ -35,7 +35,7 @@ export class Node implements Snippet {
folder
);
await modify_json ((obj) => {
await modify_json ((obj: Record<string, unknown>) => {
obj.scripts = {
lint: 'eslint . --ext .js,.jsx,.ts,.tsx,.vue,.mjs',
test: 'nyc ava'