Skip to content
This repository has been archived by the owner on Apr 19, 2023. It is now read-only.

Commit

Permalink
Merge pull request #157 from HubertStefanski/update-grafana-bump-amo
Browse files Browse the repository at this point in the history
update grafana-operator to v3.8.1 and amo to 1.5.0
  • Loading branch information
openshift-merge-robot committed Jan 25, 2021
2 parents 523313e + dd6b1e0 commit fd12b99
Show file tree
Hide file tree
Showing 12 changed files with 1,370 additions and 7 deletions.
6 changes: 3 additions & 3 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -13,9 +13,9 @@ COMPILE_TARGET=./tmp/_output/bin/$(PROJECT)
# You can delete this comment afterwards.
PROMETHEUS_OPERATOR_VERSION=v0.34.0
LOCAL=local
GRAFANA_OPERATOR_VERSION=v3.6.0
AMO_VERSION=1.4.0
PREV_AMO_VERSION=1.3.0
GRAFANA_OPERATOR_VERSION=v3.8.1
AMO_VERSION=1.5.0
PREV_AMO_VERSION=1.4.0

AUTH_TOKEN=$(shell curl -sH "Content-Type: application/json" -XPOST https://quay.io/cnr/api/v1/users/login -d '{"user": {"username": "$(QUAY_USERNAME)", "password": "${QUAY_PASSWORD}"}}' | jq -r '.token')

Expand Down
3 changes: 3 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,9 @@

An OpenShift Operator using the Operator SDK that installs an Application Monitoring Stack consisting of Grafana, Prometheus & Alertmanager.


# Warning:
### This operator isn't being actively maintained, issues may not be resolved unless they are security related.
# Supported Custom Resources

The following resources are supported:
Expand Down

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
apiVersion: apiextensions.k8s.io/v1beta1
kind: CustomResourceDefinition
metadata:
name: blackboxtargets.applicationmonitoring.integreatly.org
spec:
group: applicationmonitoring.integreatly.org
names:
kind: BlackboxTarget
listKind: BlackboxTargetList
plural: blackboxtargets
singular: blackboxtarget
scope: Namespaced
validation:
openAPIV3Schema:
description: BlackboxTarget is the Schema for the blackboxtargets API
properties:
apiVersion:
description: 'APIVersion defines the versioned schema of this representation
of an object. Servers should convert recognized schemas to the latest
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
type: string
kind:
description: 'Kind is a string value representing the REST resource this
object represents. Servers may infer this from the endpoint the client
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
type: string
metadata:
type: object
spec:
description: BlackboxTargetSpec defines the desired state of BlackboxTarget
properties:
blackboxTargets:
description: 'INSERT ADDITIONAL SPEC FIELDS - desired state of cluster
Important: Run "operator-sdk generate k8s" to regenerate code after
modifying this file Add custom validation using kubebuilder tags:
https://book.kubebuilder.io/beyond_basics/generating_crd.html'
items:
description: 'BlackboxtargetStructure contains: A target (url, module
and service name) to be probed by the'
properties:
module:
type: string
service:
type: string
url:
type: string
required:
- module
- service
- url
type: object
type: array
type: object
status:
description: BlackboxTargetStatus defines the observed state of BlackboxTarget
properties:
phase:
description: 'INSERT ADDITIONAL STATUS FIELD - define observed state
of cluster Important: Run "operator-sdk generate k8s" to regenerate
code after modifying this file Add custom validation using kubebuilder
tags: https://book.kubebuilder.io/beyond_basics/generating_crd.html'
type: integer
required:
- phase
type: object
type: object
version: v1alpha1
versions:
- name: v1alpha1
served: true
storage: true
Original file line number Diff line number Diff line change
@@ -0,0 +1,228 @@
apiVersion: apiextensions.k8s.io/v1beta1
kind: CustomResourceDefinition
metadata:
name: grafanas.integreatly.org
spec:
group: integreatly.org
names:
kind: Grafana
listKind: GrafanaList
plural: grafanas
singular: grafana
scope: Namespaced
subresources:
status: { }
version: v1alpha1
validation:
openAPIV3Schema:
required: [ "spec" ]
properties:
spec:
properties:
containers:
type: array
items:
type: object
description: Additional container to add to the grafana pod
secrets:
type: array
items:
type: string
description: Secret to be mounted as volume into the grafana deployment
configMaps:
type: array
items:
type: string
description: Config map to be mounted as volume into the grafana deployment
logLevel:
type: string
description: Log level of the grafana instance, defaults to info
adminUser:
type: string
description: Default admin user name
adminPassword:
type: string
description: Default admin password
basicAuth:
type: boolean
description: Basic auth enabled
disableLoginForm:
type: boolean
description: Disable login form
disableSignoutMenu:
type: boolean
description: Disable signout menu
anonymous:
type: boolean
description: Anonymous auth enabled
config:
type: object
description: Grafana config
ingress:
type: object
properties:
enabled:
type: boolean
description: Create an ingress / route
path:
type: string
description: Ingress path
hostname:
type: string
description: The hostname of the ingress / route
annotations:
type: object
description: Additional annotations for the ingress / route
labels:
type: object
description: Additional labels for the ingress / route
targetPort:
type: string
description: Override port to target in the grafana service
service:
type: object
properties:
name:
type: string
description: Override default service name
ports:
type: array
description: Override default ports
items:
type: object
description: A port to add to the grafana service
annotations:
type: object
description: Additional annotations for the service
labels:
type: object
description: Additional labels for the service
type:
type: string
description: Service type (NodePort, ClusterIP or LoadBalancer)
deployment:
type: object
properties:
annotations:
type: object
description: Additional annotations for the service
labels:
type: object
description: Additional labels for the service
nodeSelector:
type: object
description: Additional labels for the running grafana pods in a labeled node.
tolerations:
type: array
description: Additonal labels for running grafana pods in tained nodes.
affinity:
type: object
description: Additonal labels for running grafana pods with affinity properties.
envFrom:
type: array
description: Environment variables from Secret or ConfigMap.
skipCreateAdminAccount:
type: boolean
description: Disable creating a random admin user
priorityClassName:
type: string
description: Pod priority class name
serviceAccount:
type: object
properties:
annotations:
type: object
description: Additional annotations for the serviceaccount
labels:
type: object
description: Additional labels for the serviceaccount
client:
type: object
description: Grafana client settings
compat:
type: object
description: Backwards compatibility switches
dashboardLabelSelectors:
type: array
items:
type: object
description: Label selector or match expressions
jsonnet:
type: object
description: Jsonnet library configuration
livenessProbeSpec:
type: object
properties:
initialDelaySeconds:
description: >-
Number of seconds after the container has
started before liveness probes are initiated. More info:
https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
format: int32
type: integer
timeoutSeconds:
description: Number of seconds after which the probe times out. Defaults to 1 second.
Minimum value is 1.
format: int32
type: integer
periodSeconds:
description: >-
How often (in seconds) to perform the probe.
Default to 10 seconds. Minimum value is 1.
format: int32
type: integer
successThreshold:
description: >-
Minimum consecutive successes for the probe
to be considered successful after having failed. Defaults
to 1. Must be 1 for liveness and startup. Minimum value
is 1.
format: int32
type: integer
failureThreshold:
description: >-
When a probe fails, Kubernetes will try failureThreshold times before giving up.
Giving up in case of liveness probe means restarting the container.
In case of readiness probe the Pod will be marked Unready.
Defaults to 3. Minimum value is 1.
format: int32
type: integer
readinessProbeSpec:
type: object
properties:
initialDelaySeconds:
description: >-
Number of seconds after the container has
started before liveness probes are initiated. More info
https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
format: int32
type: integer
timeoutSeconds:
description: >-
Number of seconds after which the probe times out. Defaults to 1 second.
Minimum value is 1.
format: int32
type: integer
periodSeconds:
description: >-
How often (in seconds) to perform the probe.
Default to 10 seconds. Minimum value is 1.
format: int32
type: integer
successThreshold:
description: >-
Minimum consecutive successes for the probe
to be considered successful after having failed. Defaults
to 1. Must be 1 for liveness and startup. Minimum value
is 1.
format: int32
type: integer
failureThreshold:
description: >-
When a probe fails, Kubernetes will try failureThreshold times before giving up.
Giving up in case of liveness probe means restarting the container.
In case of readiness probe the Pod will be marked Unready.
Defaults to 3. Minimum value is 1.
format: int32
type: integer

Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
apiVersion: apiextensions.k8s.io/v1beta1
kind: CustomResourceDefinition
metadata:
name: grafanadashboards.integreatly.org
spec:
group: integreatly.org
names:
kind: GrafanaDashboard
listKind: GrafanaDashboardList
plural: grafanadashboards
singular: grafanadashboard
scope: Namespaced
subresources:
status: {}
version: v1alpha1
validation:
openAPIV3Schema:
properties:
spec:
properties:
name:
type: string
json:
type: string
jsonnet:
description: Jsonnet source. Has access to grafonnet.
type: string
url:
type: string
description: URL to dashboard json
datasources:
type: array
items:
description: Input datasources to resolve before importing
type: object
plugins:
type: array
items:
description: Grafana Plugin Object
type: object
customFolderName:
description: Folder name that this dashboard will be assigned to.
type: string

Loading

0 comments on commit fd12b99

Please sign in to comment.