toolkit: run make for backend plugins (#19029)

pull/19043/head
Ryan McKinley 6 years ago committed by GitHub
parent bc4ba64a24
commit e4e7719428
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 8
      packages/grafana-toolkit/src/cli/index.ts
  2. 18
      packages/grafana-toolkit/src/cli/tasks/plugin.ci.ts

@ -156,9 +156,13 @@ export const run = (includeInternalScripts = false) => {
program
.command('plugin:ci-build')
.option('--backend <backend>', 'For backend task, which backend to run')
.description('Build the plugin, leaving artifacts in /dist')
.option('--backend', 'Run Makefile for backend task', false)
.description('Build the plugin, leaving results in /dist and /coverage')
.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)({
backend: cmd.backend,
});

@ -35,7 +35,7 @@ import { runEndToEndTests } from '../../plugins/e2e/launcher';
import { getEndToEndSettings } from '../../plugins/index';
export interface PluginCIOptions {
backend?: string;
backend?: boolean;
full?: boolean;
upload?: boolean;
}
@ -58,14 +58,14 @@ const buildPluginRunner: TaskRunner<PluginCIOptions> = async ({ backend }) => {
fs.mkdirSync(workDir);
if (backend) {
console.log('TODO, backend support?');
fs.mkdirSync(path.resolve(process.cwd(), 'dist'));
const file = path.resolve(process.cwd(), 'dist', `README_${backend}.txt`);
fs.writeFile(file, `TODO... build bakend plugin: ${backend}!`, err => {
if (err) {
throw new Error('Unable to write: ' + file);
}
});
const makefile = path.resolve(process.cwd(), 'Makefile');
if (!fs.existsSync(makefile)) {
throw new Error(`Missing: ${makefile}. A Makefile is required for backend plugins.`);
}
// Run plugin-ci task
const exe = await execa('make', ['backend-plugin-ci']);
console.log(exe.stdout);
} else {
// Do regular build process with coverage
await pluginBuildRunner({ coverage: true });

Loading…
Cancel
Save