Merge pull request #15515 from grafana/13767_fix

fix native annotation filtered by template variable with pipe
This commit is contained in:
Torkel Ödegaard 2019-02-19 11:14:04 +01:00 committed by GitHub
commit baddf42c8e
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 10 additions and 3 deletions

View File

@ -57,10 +57,17 @@ class GrafanaDatasource {
if (!_.isArray(options.annotation.tags) || options.annotation.tags.length === 0) {
return this.$q.when([]);
}
const delimiter = '__delimiter__';
const tags = [];
for (const t of params.tags) {
const renderedValues = this.templateSrv.replace(t, {}, 'pipe');
for (const tt of renderedValues.split('|')) {
const renderedValues = this.templateSrv.replace(t, {}, value => {
if (typeof value === 'string') {
return value;
}
return value.join(delimiter);
});
for (const tt of renderedValues.split(delimiter)) {
tags.push(tt);
}
}

View File

@ -14,7 +14,7 @@ describe('grafana data source', () => {
const templateSrvStub = {
replace: val => {
return val.replace('$var2', 'replaced|replaced2').replace('$var', 'replaced');
return val.replace('$var2', 'replaced__delimiter__replaced2').replace('$var', 'replaced');
},
};