Skip to content

Commit

Permalink
Implement dashboard management (#548)
Browse files Browse the repository at this point in the history
* Implement dashboard management

Implement a new configuration option graphing.grafana.dashboards.enabled
which results in dashboards objects being created for the Grafana
Operator. Previously loading dashboards would be done manually via 'oc
apply' using instructions from documentation.

The new CRD parameters to the ServiceTelemetry object allows the Service
Telemetry Operator to now make the GrafanaDashboard objects directly.

Related: OSPRH-825

* Drop unnecessary cluster roles

* Update CSV for owned parameter
  • Loading branch information
leifmadsen authored and elfiesmelfie committed Dec 13, 2023
1 parent 6e8dc90 commit 0aaa5c6
Show file tree
Hide file tree
Showing 10 changed files with 6,657 additions and 6 deletions.
9 changes: 8 additions & 1 deletion deploy/crds/infra.watch_servicetelemetrys_crd.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -289,7 +289,7 @@ spec:
description: Whether to disable the Grafana signout menu
type: boolean
ingressEnabled:
description: Enable ingress access to Grafana
description: Whether to enable ingress access to Grafana
type: boolean
adminPassword:
description: Grafana admin password
Expand All @@ -301,6 +301,13 @@ spec:
baseImage:
description: Path to the base container image used to instantiate a Grafana instance
type: string
dashboards:
description: Dashboard configurations for Grafana
properties:
enabled:
description: Whether to enable built-in dashboards provided by Service Telemetry Framework
type: boolean
type: object
type: object
type: object
cloudsRemoveOnMissing:
Expand Down
5 changes: 4 additions & 1 deletion deploy/crds/infra.watch_v1beta1_servicetelemetry_cr.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -79,10 +79,13 @@ spec:
graphing:
enabled: false
grafana:
ingressEnabled: false
ingressEnabled: true
adminPassword: secret
adminUser: root
disableSignoutMenu: false
baseImage: registry.redhat.io/rhel8/grafana:7
dashboards:
enabled: true
transports:
qdr:
enabled: true
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -396,11 +396,19 @@ spec:
description: Path to the base container image used to instantiate
a Grafana instance
type: string
dashboards:
description: Dashboard configurations for Grafana
properties:
enabled:
description: Whether to enable built-in dashboards provided
by Service Telemetry Framework
type: boolean
type: object
disableSignoutMenu:
description: Whether to disable the Grafana signout menu
type: boolean
ingressEnabled:
description: Enable ingress access to Grafana
description: Whether to enable ingress access to Grafana
type: boolean
type: object
type: object
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -119,8 +119,12 @@ metadata:
"grafana": {
"adminPassword": "secret",
"adminUser": "root",
"baseImage": "registry.redhat.io/rhel8/grafana:7",
"dashboards": {
"enabled": true
},
"disableSignoutMenu": false,
"ingressEnabled": false
"ingressEnabled": true
}
},
"highAvailability": {
Expand Down
6 changes: 4 additions & 2 deletions roles/servicetelemetry/defaults/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -82,11 +82,13 @@ servicetelemetry_defaults:
graphing:
enabled: false
grafana:
ingress_enabled: false
ingress_enabled: true
admin_password: secret
admin_user: root
disable_signout_menu: false
base_image: docker.io/grafana/grafana:8.1.2
base_image: registry.redhat.io/rhel8/grafana:7
dashboards:
enabled: true

# 'clouds' object is not partially updatable like other objects. If 'clouds'
# object is defined then the default is overwritten.
Expand Down
Loading

0 comments on commit 0aaa5c6

Please sign in to comment.