Skip to content

Commit c316018

Browse files
authored
operator [CI] deployment-validation-operator (0.7.12)
1 parent 650f7c2 commit c316018

File tree

5 files changed

+270
-6
lines changed

5 files changed

+270
-6
lines changed
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
apiVersion: v1
2+
kind: Service
3+
metadata:
4+
name: deployment-validation-operator-metrics
5+
labels:
6+
name: deployment-validation-operator
7+
spec:
8+
ports:
9+
- name: http-metrics
10+
port: 8383
11+
protocol: TCP
12+
targetPort: 8383
13+
selector:
14+
name: deployment-validation-operator
Lines changed: 169 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,169 @@
1+
apiVersion: operators.coreos.com/v1alpha1
2+
kind: ClusterServiceVersion
3+
metadata:
4+
annotations:
5+
alm-examples: '[]'
6+
capabilities: Basic Install
7+
categories: Application Runtime, Monitoring, Security
8+
certified: "false"
9+
containerImage: quay.io/deployment-validation-operator/dv-operator:0.7.12
10+
createdAt: 2025-09-11T00:00:00Z
11+
description: The deployment validation operator
12+
repository: https://github.com/app-sre/deployment-validation-operator
13+
support: Best Effort
14+
ignore-check.kube-linter.io/minimum-three-replicas: "This deployment uses 1 pod as currently replicating does not replicate metric data causing installation issues"
15+
name: deployment-validation-operator.v0.7.12
16+
spec:
17+
description: |
18+
The Deployment Validation Operator (DVO) checks deployments and other resources against a curated collection of best practices.
19+
These best practices focus mainly on ensuring that the applications are fault-tolerant. DVO reports failed validations via Prometheus metrics.
20+
If the best-practice check has failed, the metrics will report `1`.
21+
displayName: Deployment Validation Operator
22+
icon:
23+
- base64data: "PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNTguNTEgMjU4LjUxIj48ZGVmcz48c3R5bGU+LmNscy0xe2ZpbGw6I2QxZDFkMTt9LmNscy0ye2ZpbGw6IzhkOGQ4Zjt9PC9zdHlsZT48L2RlZnM+PHRpdGxlPkFzc2V0IDQ8L3RpdGxlPjxnIGlkPSJMYXllcl8yIiBkYXRhLW5hbWU9IkxheWVyIDIiPjxnIGlkPSJMYXllcl8xLTIiIGRhdGEtbmFtZT0iTGF5ZXIgMSI+PHBhdGggY2xhc3M9ImNscy0xIiBkPSJNMTI5LjI1LDIwQTEwOS4xLDEwOS4xLDAsMCwxLDIwNi40LDIwNi40LDEwOS4xLDEwOS4xLDAsMSwxLDUyLjExLDUyLjExLDEwOC40NSwxMDguNDUsMCwwLDEsMTI5LjI1LDIwbTAtMjBoMEM1OC4xNiwwLDAsNTguMTYsMCwxMjkuMjVIMGMwLDcxLjA5LDU4LjE2LDEyOS4yNiwxMjkuMjUsMTI5LjI2aDBjNzEuMDksMCwxMjkuMjYtNTguMTcsMTI5LjI2LTEyOS4yNmgwQzI1OC41MSw1OC4xNiwyMDAuMzQsMCwxMjkuMjUsMFoiLz48cGF0aCBjbGFzcz0iY2xzLTIiIGQ9Ik0xNzcuNTQsMTAzLjQxSDE0MS42NkwxNTQuOSw2NS43NmMxLjI1LTQuNC0yLjMzLTguNzYtNy4yMS04Ljc2SDEwMi45M2E3LjMyLDcuMzIsMCwwLDAtNy40LDZsLTEwLDY5LjYxYy0uNTksNC4xNywyLjg5LDcuODksNy40LDcuODloMzYuOUwxMTUuNTUsMTk3Yy0xLjEyLDQuNDEsMi40OCw4LjU1LDcuMjQsOC41NWE3LjU4LDcuNTgsMCwwLDAsNi40Ny0zLjQ4TDE4NCwxMTMuODVDMTg2Ljg2LDEwOS4yNCwxODMuMjksMTAzLjQxLDE3Ny41NCwxMDMuNDFaIi8+PC9nPjwvZz48L3N2Zz4="
24+
mediatype: "image/svg+xml"
25+
install:
26+
spec:
27+
clusterPermissions:
28+
- rules:
29+
- apiGroups:
30+
- '*'
31+
resources:
32+
- '*'
33+
verbs:
34+
- get
35+
- list
36+
- watch
37+
serviceAccountName: deployment-validation-operator
38+
deployments:
39+
- name: deployment-validation-operator
40+
spec:
41+
replicas: 1
42+
selector:
43+
matchLabels:
44+
app: deployment-validation-operator
45+
strategy:
46+
rollingUpdate:
47+
maxSurge: 1
48+
maxUnavailable: 0
49+
type: RollingUpdate
50+
template:
51+
metadata:
52+
labels:
53+
app: deployment-validation-operator
54+
name: deployment-validation-operator
55+
spec:
56+
affinity:
57+
podAntiAffinity:
58+
preferredDuringSchedulingIgnoredDuringExecution:
59+
- podAffinityTerm:
60+
labelSelector:
61+
matchExpressions:
62+
- key: app
63+
operator: In
64+
values:
65+
- deployment-validation-operator
66+
topologyKey: kubernetes.io/hostname
67+
weight: 100
68+
containers:
69+
- env:
70+
- name: WATCH_NAMESPACE
71+
value: ""
72+
- name: OPERATOR_NAME
73+
value: deployment-validation-operator
74+
- name: NAMESPACE_IGNORE_PATTERN
75+
value: "^(openshift.*|kube-.*|open-cluster-management-.*|default|dedicated-admin|redhat-.*|acm|addon-dba-operator|codeready-.*|prow)$"
76+
- name: POD_NAME
77+
valueFrom:
78+
fieldRef:
79+
fieldPath: metadata.name
80+
- name: POD_NAMESPACE
81+
valueFrom:
82+
fieldRef:
83+
fieldPath: metadata.namespace
84+
image: quay.io/deployment-validation-operator/dv-operator:0.7.12
85+
imagePullPolicy: Always
86+
name: deployment-validation-operator
87+
ports:
88+
- containerPort: 8383
89+
name: http-metrics
90+
protocol: TCP
91+
args:
92+
- --config /config/deployment-validation-operator-config.yaml
93+
resources:
94+
requests:
95+
memory: "256Mi"
96+
cpu: "100n"
97+
limits:
98+
memory: "2Gi"
99+
cpu: "1"
100+
volumeMounts:
101+
- name: dvo-config
102+
mountPath: /config
103+
securityContext:
104+
readOnlyRootFilesystem: true
105+
restartPolicy: Always
106+
serviceAccountName: deployment-validation-operator
107+
terminationGracePeriodSeconds: 30
108+
volumes:
109+
- name: dvo-config
110+
configMap:
111+
optional: true
112+
name: deployment-validation-operator-config
113+
permissions:
114+
- rules:
115+
- apiGroups:
116+
- ""
117+
resources:
118+
- configmaps
119+
- services
120+
verbs:
121+
- get
122+
- create
123+
- list
124+
- delete
125+
- update
126+
- watch
127+
- patch
128+
- apiGroups:
129+
- monitoring.coreos.com
130+
resources:
131+
- servicemonitors
132+
verbs:
133+
- '*'
134+
serviceAccountName: deployment-validation-operator
135+
strategy: deployment
136+
installModes:
137+
- supported: true
138+
type: OwnNamespace
139+
- supported: true
140+
type: SingleNamespace
141+
- supported: true
142+
type: AllNamespaces
143+
- supported: false
144+
type: MultiNamespace
145+
keywords:
146+
- dvo
147+
labels:
148+
alm-owner-dvo: deployment-validation-operator
149+
operated-by: deployment-validation-operator
150+
operatorframework.io/arch.amd64: supported
151+
operatorframework.io/arch.arm64: supported
152+
links:
153+
- name: repository
154+
url: https://github.com/app-sre/deployment-validation-operator
155+
- name: containerImage
156+
url: https://quay.io/deployment-validation-operator/dv-operator:0.7.12
157+
maintainers:
158+
- name: Red Hat
159+
160+
maturity: alpha
161+
provider:
162+
name: Red Hat
163+
selector:
164+
matchLabels:
165+
alm-owner-dvo: deployment-validation-operator
166+
operated-by: deployment-validation-operator
167+
replaces: deployment-validation-operator.v0.7.9
168+
skipRange: ">=0.0.10 <0.7.0"
169+
version: 0.7.12
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
annotations:
2+
# Core bundle annotations.
3+
operators.operatorframework.io.bundle.mediatype.v1: registry+v1
4+
operators.operatorframework.io.bundle.manifests.v1: manifests/
5+
operators.operatorframework.io.bundle.metadata.v1: metadata/
6+
operators.operatorframework.io.bundle.package.v1: deployment-validation-operator
7+
operators.operatorframework.io.bundle.channels.v1: alpha
8+
operators.operatorframework.io.bundle.channel.default.v1: alpha
9+
operators.operatorframework.io.metrics.builder: operator-sdk-v1.13.0+git
10+
operators.operatorframework.io.metrics.mediatype.v1: metrics+v1
11+
operators.operatorframework.io.metrics.project_layout: go.kubebuilder.io/v3
12+
13+
# Annotations for testing.
14+
operators.operatorframework.io.test.mediatype.v1: scorecard+v1
15+
operators.operatorframework.io.test.config.v1: tests/scorecard/
Lines changed: 70 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,70 @@
1+
apiVersion: scorecard.operatorframework.io/v1alpha3
2+
kind: Configuration
3+
metadata:
4+
name: config
5+
stages:
6+
- parallel: true
7+
tests:
8+
- entrypoint:
9+
- scorecard-test
10+
- basic-check-spec
11+
image: quay.io/operator-framework/scorecard-test:v1.7.2
12+
labels:
13+
suite: basic
14+
test: basic-check-spec-test
15+
storage:
16+
spec:
17+
mountPath: {}
18+
- entrypoint:
19+
- scorecard-test
20+
- olm-bundle-validation
21+
image: quay.io/operator-framework/scorecard-test:v1.7.2
22+
labels:
23+
suite: olm
24+
test: olm-bundle-validation-test
25+
storage:
26+
spec:
27+
mountPath: {}
28+
- entrypoint:
29+
- scorecard-test
30+
- olm-crds-have-validation
31+
image: quay.io/operator-framework/scorecard-test:v1.7.2
32+
labels:
33+
suite: olm
34+
test: olm-crds-have-validation-test
35+
storage:
36+
spec:
37+
mountPath: {}
38+
- entrypoint:
39+
- scorecard-test
40+
- olm-crds-have-resources
41+
image: quay.io/operator-framework/scorecard-test:v1.7.2
42+
labels:
43+
suite: olm
44+
test: olm-crds-have-resources-test
45+
storage:
46+
spec:
47+
mountPath: {}
48+
- entrypoint:
49+
- scorecard-test
50+
- olm-spec-descriptors
51+
image: quay.io/operator-framework/scorecard-test:v1.7.2
52+
labels:
53+
suite: olm
54+
test: olm-spec-descriptors-test
55+
storage:
56+
spec:
57+
mountPath: {}
58+
- entrypoint:
59+
- scorecard-test
60+
- olm-status-descriptors
61+
image: quay.io/operator-framework/scorecard-test:v1.7.2
62+
labels:
63+
suite: olm
64+
test: olm-status-descriptors-test
65+
storage:
66+
spec:
67+
mountPath: {}
68+
storage:
69+
spec:
70+
mountPath: {}

operators/deployment-validation-operator/ci.yaml

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,6 @@
33
updateGraph: replaces-mode
44

55
reviewers:
6-
- bkez322
7-
- BumbleFeng
8-
- npecka
9-
- TGPSKI
10-
- tremes
6+
- BaiyangZhou
117
- ncaak
12-
- rluders
8+
- opokornyy

0 commit comments

Comments
 (0)