Commit e4e77194 by Ryan McKinley Committed by GitHub

toolkit: run make for backend plugins (#19029)

parent bc4ba64a
...@@ -156,9 +156,13 @@ export const run = (includeInternalScripts = false) => { ...@@ -156,9 +156,13 @@ export const run = (includeInternalScripts = false) => {
program program
.command('plugin:ci-build') .command('plugin:ci-build')
.option('--backend <backend>', 'For backend task, which backend to run') .option('--backend', 'Run Makefile for backend task', false)
.description('Build the plugin, leaving artifacts in /dist') .description('Build the plugin, leaving results in /dist and /coverage')
.action(async cmd => { .action(async cmd => {
if (typeof cmd === 'string') {
console.error(`Invalid argument: ${cmd}\nSee --help for a list of available commands.`);
process.exit(1);
}
await execTask(ciBuildPluginTask)({ await execTask(ciBuildPluginTask)({
backend: cmd.backend, backend: cmd.backend,
}); });
......
...@@ -35,7 +35,7 @@ import { runEndToEndTests } from '../../plugins/e2e/launcher'; ...@@ -35,7 +35,7 @@ import { runEndToEndTests } from '../../plugins/e2e/launcher';
import { getEndToEndSettings } from '../../plugins/index'; import { getEndToEndSettings } from '../../plugins/index';
export interface PluginCIOptions { export interface PluginCIOptions {
backend?: string; backend?: boolean;
full?: boolean; full?: boolean;
upload?: boolean; upload?: boolean;
} }
...@@ -58,14 +58,14 @@ const buildPluginRunner: TaskRunner<PluginCIOptions> = async ({ backend }) => { ...@@ -58,14 +58,14 @@ const buildPluginRunner: TaskRunner<PluginCIOptions> = async ({ backend }) => {
fs.mkdirSync(workDir); fs.mkdirSync(workDir);
if (backend) { if (backend) {
console.log('TODO, backend support?'); const makefile = path.resolve(process.cwd(), 'Makefile');
fs.mkdirSync(path.resolve(process.cwd(), 'dist')); if (!fs.existsSync(makefile)) {
const file = path.resolve(process.cwd(), 'dist', `README_${backend}.txt`); throw new Error(`Missing: ${makefile}. A Makefile is required for backend plugins.`);
fs.writeFile(file, `TODO... build bakend plugin: ${backend}!`, err => { }
if (err) {
throw new Error('Unable to write: ' + file); // Run plugin-ci task
} const exe = await execa('make', ['backend-plugin-ci']);
}); console.log(exe.stdout);
} else { } else {
// Do regular build process with coverage // Do regular build process with coverage
await pluginBuildRunner({ coverage: true }); await pluginBuildRunner({ coverage: true });
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment