grafana

package
v1.1.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 17, 2019 License: Apache-2.0 Imports: 27 Imported by: 0

Documentation

Index

Constants

View Source
const (
	PhaseConfigFiles int = iota
	PhaseInstallGrafana
	PhaseDone
	PhasePlugins
)
View Source
const (
	DefaultLogLevel = "info"
)
View Source
const OpenShiftOAuthRedirect = "serviceaccounts.openshift.io/oauth-redirectreference.primary"
View Source
const ReconcilePauseSeconds = 5

Variables

View Source
var MockCR = v1alpha1.Grafana{
	ObjectMeta: v1.ObjectMeta{
		Name:      "test",
		Namespace: "dummy",
	},
	Spec: v1alpha1.GrafanaSpec{
		Containers: []v12.Container{},
	},
}
View Source
var MockGrafana = v1alpha1.Grafana{
	Status: v1alpha1.GrafanaStatus{
		Phase:            0,
		InstalledPlugins: v1alpha1.PluginList{},
	},
}
View Source
var Mockplugina100 = v1alpha1.GrafanaPlugin{
	Name:    "a",
	Version: "1.0.0",
}
View Source
var Mockplugina101 = v1alpha1.GrafanaPlugin{
	Name:    "a",
	Version: "1.0.1",
}
View Source
var Mockplugina102 = v1alpha1.GrafanaPlugin{
	Name:    "a",
	Version: "1.0.2",
}
View Source
var Mockpluginb100 = v1alpha1.GrafanaPlugin{
	Name:    "b",
	Version: "1.0.0",
}
View Source
var Mockpluginc100 = v1alpha1.GrafanaPlugin{
	Name:    "c",
	Version: "1.0.0",
}

Functions

func Add

func Add(mgr manager.Manager) error

Add creates a new Grafana Controller and adds it to the Manager. The Manager will set fields on the Controller and Start it when the Manager is Started.

Types

type GrafanaParamaeters

type GrafanaParamaeters struct {
	GrafanaImage                    string
	GrafanaVersion                  string
	Namespace                       string
	GrafanaConfigMapName            string
	GrafanaProvidersConfigMapName   string
	GrafanaDatasourcesConfigMapName string
	GrafanaDashboardsConfigMapName  string
	GrafanaServiceAccountName       string
	GrafanaDeploymentName           string
	LogLevel                        string
	GrafanaRouteName                string
	GrafanaServiceName              string
	PluginsInitContainerImage       string
	PluginsInitContainerTag         string
	GrafanaIngressName              string
	Hostname                        string
	AdminUser                       string
	AdminPassword                   string
	BasicAuth                       bool
	DisableLoginForm                bool
	DisableSignoutMenu              bool
	Anonymous                       bool
}

type PluginsHelperImpl

type PluginsHelperImpl struct {
	BaseUrl    string
	HttpClient *http.Client
}

func (*PluginsHelperImpl) AppendMessage

func (h *PluginsHelperImpl) AppendMessage(message string, dashboard *integreatly.GrafanaDashboard)

Append a status message to the origin dashboard of a plugin

func (*PluginsHelperImpl) BuildEnv

func (h *PluginsHelperImpl) BuildEnv(cr *integreatly.Grafana) string

Turns an array of plugins into a string representation of the form `<name>:<version>,...` that is used as the value for the GRAFANA_PLUGINS environment variable

func (*PluginsHelperImpl) CanUpdatePlugins

func (h *PluginsHelperImpl) CanUpdatePlugins() bool

func (*PluginsHelperImpl) FilterPlugins

Creates the list of plugins that can be added or updated Does not directly deal with removing plugins: if a plugin is not in the list and the env var is updated, it will automatically be removed

func (*PluginsHelperImpl) PickLatestVersions

func (h *PluginsHelperImpl) PickLatestVersions(requested integreatly.PluginList) (integreatly.PluginList, error)

Append a status message to the origin dashboard of a plugin

func (*PluginsHelperImpl) PluginExists

func (h *PluginsHelperImpl) PluginExists(plugin integreatly.GrafanaPlugin) bool

Query the Grafana plugin database for the given plugin and version A 200 OK response indicates that the plugin exists and can be downloaded

type ReconcileGrafana

type ReconcileGrafana struct {
	// contains filtered or unexported fields
}

ReconcileGrafana reconciles a Grafana object

func (*ReconcileGrafana) CreateConfigFiles

func (r *ReconcileGrafana) CreateConfigFiles(cr *i8ly.Grafana) (reconcile.Result, error)

func (*ReconcileGrafana) CreateDeployment

func (r *ReconcileGrafana) CreateDeployment(cr *i8ly.Grafana, resourceName string) error

Creates the deployment from the template and injects any specified extra containers before submitting it

func (*ReconcileGrafana) CreateResource

func (r *ReconcileGrafana) CreateResource(cr *i8ly.Grafana, resourceName string) error

Creates a generic kubernetes resource from a template

func (*ReconcileGrafana) CreateServiceAccount

func (r *ReconcileGrafana) CreateServiceAccount(cr *i8ly.Grafana, resourceName string) error

func (*ReconcileGrafana) DeployResource

func (r *ReconcileGrafana) DeployResource(cr *i8ly.Grafana, resource runtime.Object, resourceName string) error

Deploys a resource given by a runtime object

func (*ReconcileGrafana) InstallGrafana

func (r *ReconcileGrafana) InstallGrafana(cr *i8ly.Grafana) (reconcile.Result, error)

func (*ReconcileGrafana) Reconcile

func (r *ReconcileGrafana) Reconcile(request reconcile.Request) (reconcile.Result, error)

Reconcile reads that state of the cluster for a Grafana object and makes changes based on the state read and what is in the Grafana.Spec

func (*ReconcileGrafana) ReconcileDashboardPlugins

func (r *ReconcileGrafana) ReconcileDashboardPlugins(cr *i8ly.Grafana) (reconcile.Result, error)

func (*ReconcileGrafana) ReconcilePlugins

func (r *ReconcileGrafana) ReconcilePlugins(cr *i8ly.Grafana, plugins []i8ly.GrafanaPlugin) error

func (*ReconcileGrafana) UpdateDashboardMessages

func (r *ReconcileGrafana) UpdateDashboardMessages(plugins i8ly.PluginList) error

func (*ReconcileGrafana) UpdatePhase

func (r *ReconcileGrafana) UpdatePhase(cr *i8ly.Grafana, phase int) (reconcile.Result, error)

type ResourceHelper

type ResourceHelper struct {
	// contains filtered or unexported fields
}

Helps with creating kubernetes resources from yaml templates

type TemplateHelper

type TemplateHelper struct {
	Parameters   GrafanaParamaeters
	TemplatePath string
}

type UnstructuredResourceMap

type UnstructuredResourceMap struct {
	Values map[string]interface{}
}

An abstraction type that allows easier access to the contents of an unstructured resource

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL