在Grafana实验室,我们一直在努力减少在不同版本的Grafana中维护插件所需的工作量。这就是为什么我们很高兴为你提供一个工具来检查你的插件与最新Grafana插件API的兼容性。
我们知道,如果开发者发现人们无法使用他们的插件,这可能是一件令人沮丧的事情。在过去的几个月里,我们一直致力于在发生突破性变化时立即检测。为了做到这一点,我们开发了一个叫做Levitate的工具,将其整合到我们的CI管道中,现在Grafana仓库中每一个相关的拉动请求都有一个关于破坏性变化的报告。你可以在这里阅读更多关于它如何工作的信息。
今天,我们宣布我们已经为这个工具增加了额外的功能--插件开发者可以用它来检查他们的插件是否能与Grafana的旧版本和更新版本正常工作。该工具可以被集成到CI工作流程中,也可以作为本地机器上的CLI使用。我们希望它能让开发者更好地了解Grafana的变化,更快地采用他们的代码,并对插件的正常工作有更大的信心。
这就像运行一样简单
npx @grafana/levitate@latest is-compatible --path src/module.ts --target @grafana/data,@grafana/ui,@grafana/runtime
你也可以指定一个Grafana版本来检查
npx @grafana/levitate@latest is-compatible --path src/module.ts --target @grafana/data@9.0.5,@grafana/ui@9.0.5,@grafana/runtime@9.0.5
你可以在这里阅读如何在本地运行它并将其整合到GitHub Actions工作流程中。
这就是插件兼容性检查的样子。
不,我们的目标不是100%的正确性,而是在AST树解析的限制下,尽可能地增加开发者的信心,而且是尽可能地增加。
让我们知道你对这个工具的想法你可以在这里分享你的反馈。