mirror of
https://github.com/grafana/grafana.git
synced 2026-07-30 00:08:10 -05:00
feat(export): more progress on dashboard export
This commit is contained in:
@@ -16,6 +16,7 @@ export class DashboardExporter {
|
||||
dynSrv.process(dash, {cleanUpOnly: true});
|
||||
|
||||
var inputs = [];
|
||||
var requires = {};
|
||||
var datasources = {};
|
||||
var promises = [];
|
||||
|
||||
@@ -30,6 +31,13 @@ export class DashboardExporter {
|
||||
pluginId: ds.meta.id,
|
||||
};
|
||||
panel.datasource = '${' + refName +'}';
|
||||
|
||||
requires['datasource' + ds.meta.id] = {
|
||||
type: 'datasource',
|
||||
id: ds.meta.id,
|
||||
name: ds.meta.name,
|
||||
version: ds.meta.info.version
|
||||
};
|
||||
}));
|
||||
}
|
||||
});
|
||||
@@ -40,7 +48,13 @@ export class DashboardExporter {
|
||||
inputs.push(value);
|
||||
});
|
||||
|
||||
requires = _.map(requires, req => {
|
||||
return req;
|
||||
});
|
||||
|
||||
dash["__inputs"] = inputs;
|
||||
dash["__requires"] = requires;
|
||||
|
||||
return dash;
|
||||
});
|
||||
}
|
||||
|
||||
@@ -2,7 +2,7 @@ import {describe, beforeEach, it, sinon, expect, angularMocks} from 'test/lib/co
|
||||
|
||||
import {DashboardExporter} from '../exporter';
|
||||
|
||||
describe('given dashboard with repeated panels', function() {
|
||||
describe.only('given dashboard with repeated panels', function() {
|
||||
var dash, exported;
|
||||
|
||||
beforeEach((done) => {
|
||||
@@ -39,6 +39,7 @@ describe('given dashboard with repeated panels', function() {
|
||||
exporter.makeExportable(dash).then(clean => {
|
||||
exported = clean;
|
||||
done();
|
||||
console.log('done');
|
||||
});
|
||||
});
|
||||
|
||||
@@ -56,5 +57,11 @@ describe('given dashboard with repeated panels', function() {
|
||||
expect(panel.datasource).to.be("${DS_GFDB}");
|
||||
});
|
||||
|
||||
it('should add datasource as input', function() {
|
||||
expect(exported.__inputs[0].name).to.be("DS_GFDB");
|
||||
expect(exported.__inputs[0].pluginId).to.be("testdb");
|
||||
expect(exported.__inputs[0].type).to.be("datasource");
|
||||
});
|
||||
|
||||
});
|
||||
|
||||
|
||||
Reference in New Issue
Block a user