diff --git a/grafana-cloud-integration-utils/util.libsonnet b/grafana-cloud-integration-utils/util.libsonnet index 25d5fde43..84527711a 100644 --- a/grafana-cloud-integration-utils/util.libsonnet +++ b/grafana-cloud-integration-utils/util.libsonnet @@ -259,7 +259,8 @@ local integration_version_panel(version, statusPanelDataSource, height, width, x panelsHeight=config.statusPanelsGridPos[0], panelsWidth=config.statusPanelsGridPos[1], rowPositionY=config.statusPanelsGridPos[3], - )).panels.statusPanelsWithRow, + withRow=(if std.objectHas(config, 'statusPanelsWithRow') then config.statusPanelsWithRow else true), + )).panels.statusPanels, [ panel { gridPos+: { diff --git a/status-panels-lib/README.md b/status-panels-lib/README.md index 28ce4cbbf..a04c39a56 100644 --- a/status-panels-lib/README.md +++ b/status-panels-lib/README.md @@ -35,7 +35,8 @@ jb install https://github.com/grafana/jsonnet-libs/status-panels-lib panelsHeight=2, panelsWidth=8, rowPositionY=10, -)).panels.statusPanelsWithRow + withRow=true, +)).panels.statusPanels ``` ## Logs @@ -51,7 +52,8 @@ jb install https://github.com/grafana/jsonnet-libs/status-panels-lib panelsHeight=2, panelsWidth=8, rowPositionY=10, -)).panels.statusPanelsWithRow + withRow=true, +)).panels.statusPanels ``` ## Only panels without row @@ -67,6 +69,7 @@ jb install https://github.com/grafana/jsonnet-libs/status-panels-lib panelsHeight=2, panelsWidth=8, rowPositionY=10, + withRow=false, )).panels.statusPanels ``` @@ -123,6 +126,10 @@ Position (Default `0`) Override the datetime unit for panels (Default `dateTimeFromNow`) +### withRow + +Whether to add a separate row for the status panels (Default `true`) + ## Sample Dashboard `status-panel-dashboard.libsonnet` @@ -149,7 +156,8 @@ local title = 'Status Panel Example'; panelsHeight=2, panelsWidth=8, rowPositionY=10, - )).panels.statusPanelsWithRow + withRow=true, + )).panels.statusPanels ) } } diff --git a/status-panels-lib/status-panels/main.libsonnet b/status-panels-lib/status-panels/main.libsonnet index 6d8415a48..59d8321b4 100644 --- a/status-panels-lib/status-panels/main.libsonnet +++ b/status-panels-lib/status-panels/main.libsonnet @@ -17,6 +17,7 @@ local variables = import './variables.libsonnet'; panelsWidth=8, rowPositionY=0, dateTimeUnit='dateTimeFromNow', + withRow=true, ): { local this = self, @@ -39,7 +40,9 @@ local variables = import './variables.libsonnet'; panelsWidth, rowPositionY, dateTimeUnit, + withRow, ), + }, } diff --git a/status-panels-lib/status-panels/panels.libsonnet b/status-panels-lib/status-panels/panels.libsonnet index 6ce71e8db..dfdd19f86 100644 --- a/status-panels-lib/status-panels/panels.libsonnet +++ b/status-panels-lib/status-panels/panels.libsonnet @@ -13,6 +13,7 @@ function( panelsWidth, rowPositionY, dateTimeUnit, + withRow, ) { @@ -95,7 +96,7 @@ function( latestMetricReceivedLogs:: self.latestMetricReceivedInit(statusPanelsTargetLogs, 'logs'), integrationVersion:: self.integrationVersionInit(integrationVersion), - statusPanels: utils.join([ + statusPanelsWithOutRow: utils.join([ if type == 'metrics' || type == 'both' then [ self.integrationStatusMetrics, @@ -116,6 +117,11 @@ function( [ self.row, ], - self.statusPanels, + self.statusPanelsWithOutRow, ]), + + statusPanels: if withRow then + self.statusPanelsWithRow + else + self.statusPanelsWithOutRow, }