Skip to content

Commit a837775

Browse files
DavidRajnohaclaude
andcommitted
docs: consolidate COO 1.4.0 test case documentation
Add test cases for OU-632, OU-1039, OU-1123, OU-1205, OU-1213, and OU-1221. Include simulation scenario CSVs and RBAC resources referenced by the test documentation. Add CSV file references to prerequisites sections across all test docs. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
1 parent cebeb99 commit a837775

14 files changed

Lines changed: 1361 additions & 7 deletions
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
# HTPasswd Secret for creating a test user
2+
#
3+
# Before applying, generate the htpasswd file:
4+
# htpasswd -c -B -b users.htpasswd testuser password123
5+
#
6+
# Then base64 encode it:
7+
# base64 -w0 users.htpasswd
8+
#
9+
# Replace the data.htpasswd value below with your encoded content
10+
11+
apiVersion: v1
12+
kind: Secret
13+
metadata:
14+
name: htpass-secret
15+
namespace: openshift-config
16+
type: Opaque
17+
data:
18+
# base64 encoded: testuser:$2y$05$fBn5ChTgiV0A/6HEfoNKleU3CLVIWuV2816XVIsmmhwAz.fBpDObe
19+
htpasswd: dGVzdHVzZXI6JDJ5JDA1JGZCbjVDaFRnaVYwQS82SEVmb05LbGVVM0NMVklXdVYyODE2WFZJc21taHdBei5mQnBET2JlCg==
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
# Namespace and RoleBinding for testing limited permissions
2+
#
3+
# This creates a namespace with cluster-monitoring enabled and grants
4+
# the testuser only monitoring-rules-view access (no full monitoring access)
5+
#
6+
# The user will receive 403 Forbidden when accessing:
7+
# - /api/prometheus/api/v1/rules
8+
# - /api/alertmanager/api/v2/silences
9+
# - /api/prometheus/api/v1/query_range
10+
# - /api/prometheus/api/v1/query
11+
12+
apiVersion: v1
13+
kind: Namespace
14+
metadata:
15+
name: namespace-a
16+
labels:
17+
openshift.io/cluster-monitoring: "true"
18+
---
19+
apiVersion: rbac.authorization.k8s.io/v1
20+
kind: RoleBinding
21+
metadata:
22+
name: testuser-monitoring-view
23+
namespace: namespace-a
24+
subjects:
25+
- kind: User
26+
name: testuser
27+
apiGroup: rbac.authorization.k8s.io
28+
roleRef:
29+
kind: ClusterRole
30+
name: monitoring-rules-view
31+
apiGroup: rbac.authorization.k8s.io
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
# OAuth configuration to use HTPasswd identity provider
2+
#
3+
# This configures OpenShift to authenticate users from the htpass-secret
4+
# Apply htpasswd-secret.yaml first before applying this
5+
#
6+
# WARNING: Applying this manifest REPLACES ALL existing identity providers on
7+
# the cluster OAuth resource. The spec.identityProviders list below defines the
8+
# sole provider (htpasswd provider "my_htpasswd_provider" backed by the Secret
9+
# "htpass-secret"). Any previously configured providers (LDAP, OIDC, etc.) will
10+
# be removed, which can lock you out of the cluster.
11+
#
12+
# Do NOT apply this to production clusters that rely on other identity providers.
13+
# For non-destructive updates, merge this provider into the existing OAuth spec:
14+
# oc get oauth cluster -o yaml # inspect current providers first
15+
16+
apiVersion: config.openshift.io/v1
17+
kind: OAuth
18+
metadata:
19+
name: cluster
20+
spec:
21+
identityProviders:
22+
- name: my_htpasswd_provider
23+
mappingMethod: claim
24+
type: HTPasswd
25+
htpasswd:
26+
fileData:
27+
name: htpass-secret
Lines changed: 101 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,101 @@
1+
start,end,alertname,namespace,severity,silenced,labels
2+
7791,13621,KubeNodeUnreachable_001,openshift-monitoring,warning,false,{"component": "etcd"}
3+
7434,12671,KubeNodeNotReady_002,openshift-storage,critical,false,{"component": "monitoring"}
4+
1738,18654,KubePodCrashLooping_003,openshift-logging,critical,false,{"component": "storage"}
5+
1524,20019,ThanosQueryDown_004,openshift-etcd,critical,false,{"component": "Others"}
6+
1923,18016,KubeNodeNotReady_005,openshift-logging,info,false,{"component": "network"}
7+
1309,19658,KubePodCrashLooping_006,openshift-monitoring,info,false,{"component": "version"}
8+
1449,19662,PrometheusDown_007,openshift-network,info,false,{"component": "storage"}
9+
958,19475,KubeDeploymentReplicasMismatch_008,openshift-storage,critical,false,{"component": "compute"}
10+
1682,18597,AlertmanagerDown_009,openshift-machine-api,warning,false,{"component": "etcd"}
11+
6959,16519,HighMemoryUsage_010,openshift-machine-api,warning,false,{"component": "api-server"}
12+
1693,19790,AlertmanagerDown_011,openshift-machine-api,warning,false,{"component": "version"}
13+
2799,14348,HighCPUUsage_012,openshift-machine-api,warning,false,{"component": "monitoring"}
14+
1917,19276,ThanosQueryDown_013,openshift-etcd,warning,false,{"component": "monitoring"}
15+
868,18682,KubePodCrashLooping_014,openshift-network,critical,false,{"component": "Others"}
16+
17,19188,ThanosQueryDown_015,openshift-monitoring,warning,false,{"component": "compute"}
17+
862,19193,HighMemoryUsage_016,openshift-network,warning,false,{"component": "etcd"}
18+
232,18233,EtcdMembersDown_017,openshift-storage,critical,false,{"component": "Others"}
19+
708,19723,KubePodNotReady_018,openshift-kube-apiserver,info,false,{"component": "etcd"}
20+
747,19284,KubeNodeNotReady_019,openshift-kube-apiserver,info,false,{"component": "compute"}
21+
76,19563,KubeCPUOvercommit_020,openshift-machine-api,info,false,{"component": "network"}
22+
1566,18597,KubeDeploymentReplicasMismatch_021,openshift-monitoring,critical,false,{"component": "compute"}
23+
472,18197,APIServerErrorsHigh_022,openshift-machine-api,warning,false,{"component": "api-server"}
24+
975,19547,ThanosQueryDown_023,openshift-etcd,warning,false,{"component": "api-server"}
25+
1473,18723,APIServerLatency_024,openshift-operators,info,false,{"component": "version"}
26+
5642,16725,CephClusterWarning_025,openshift-monitoring,critical,false,{"component": "api-server"}
27+
700,18591,NetworkLatencyHigh_026,openshift-operators,warning,false,{"component": "network"}
28+
326,18545,EtcdHighCommitDurations_027,openshift-operators,warning,false,{"component": "api-server"}
29+
74,19235,PrometheusDown_028,openshift-logging,critical,false,{"component": "network"}
30+
1762,19690,KubePodCrashLooping_029,openshift-operators,warning,false,{"component": "monitoring"}
31+
6443,6720,ThanosQueryDown_030,openshift-logging,info,false,{"component": "version"}
32+
1103,20061,KubePodCrashLooping_031,openshift-storage,critical,true,{"component": "monitoring"}
33+
1847,19801,KubeNodeUnreachable_032,openshift-logging,warning,false,{"component": "etcd"}
34+
4202,13627,KubePodNotReady_033,openshift-storage,warning,false,{"component": "storage"}
35+
1172,19317,EtcdHighCommitDurations_034,openshift-operators,critical,false,{"component": "etcd"}
36+
363,19725,HighCPUUsage_035,openshift-kube-apiserver,critical,false,{"component": "version"}
37+
1794,18628,APIServerLatency_036,openshift-etcd,warning,false,{"component": "monitoring"}
38+
782,19732,PersistentVolumeErrors_037,openshift-logging,warning,false,{"component": "version"}
39+
430,18586,KubePodCrashLooping_038,openshift-etcd,warning,false,{"component": "version"}
40+
1260,18218,ClusterOperatorDegraded_039,openshift-storage,warning,false,{"component": "network"}
41+
5466,12367,KubePodNotReady_040,openshift-operators,warning,true,{"component": "compute"}
42+
6449,18321,KubeCPUOvercommit_041,openshift-logging,critical,false,{"component": "api-server"}
43+
493,19194,HighCPUUsage_042,openshift-machine-api,info,false,{"component": "Others"}
44+
150,19380,CephClusterWarning_043,openshift-logging,critical,true,{"component": "version"}
45+
658,18963,PrometheusDown_044,openshift-network,info,false,{"component": "Others"}
46+
1318,19654,KubeDeploymentReplicasMismatch_045,openshift-kube-apiserver,warning,false,{"component": "etcd"}
47+
1808,11121,ThanosQueryDown_046,openshift-network,warning,false,{"component": "monitoring"}
48+
5183,13768,APIServerLatency_047,openshift-operators,info,true,{"component": "storage"}
49+
1192,11469,KubePodCrashLooping_048,openshift-operators,critical,false,{"component": "version"}
50+
1399,18148,KubeMemoryOvercommit_049,openshift-etcd,info,false,{"component": "etcd"}
51+
821,18726,EtcdHighCommitDurations_050,openshift-network,warning,true,{"component": "compute"}
52+
802,19873,PrometheusTargetDown_051,openshift-storage,info,false,{"component": "Others"}
53+
4593,11031,KubePodNotReady_052,openshift-operators,warning,false,{"component": "api-server"}
54+
671,19852,CephClusterWarning_053,openshift-etcd,critical,false,{"component": "network"}
55+
813,19728,APIServerErrorsHigh_054,openshift-machine-api,critical,false,{"component": "version"}
56+
969,19155,KubeMemoryOvercommit_055,openshift-etcd,warning,true,{"component": "compute"}
57+
606,18620,HighMemoryUsage_056,openshift-monitoring,critical,true,{"component": "Others"}
58+
379,19131,NetworkLatencyHigh_057,openshift-storage,warning,false,{"component": "version"}
59+
440,19274,EtcdNoLeader_058,openshift-monitoring,info,false,{"component": "Others"}
60+
1137,18076,KubeDeploymentReplicasMismatch_059,openshift-logging,warning,false,{"component": "compute"}
61+
6200,16600,CephClusterWarning_060,openshift-monitoring,warning,false,{"component": "etcd"}
62+
168,18071,PersistentVolumeErrors_061,openshift-etcd,warning,false,{"component": "monitoring"}
63+
1187,18305,EtcdNoLeader_062,openshift-operators,warning,false,{"component": "etcd"}
64+
152,18342,ClusterOperatorDegraded_063,openshift-logging,warning,false,{"component": "api-server"}
65+
4,18156,KubeCPUOvercommit_064,openshift-machine-api,warning,false,{"component": "compute"}
66+
1546,18785,CephClusterWarning_065,openshift-logging,critical,false,{"component": "Others"}
67+
688,18035,PersistentVolumeErrors_066,openshift-etcd,warning,false,{"component": "storage"}
68+
6258,12288,EtcdHighCommitDurations_067,openshift-network,warning,false,{"component": "Others"}
69+
518,19559,DNSLatencyHigh_068,openshift-etcd,critical,false,{"component": "Others"}
70+
645,18003,CephClusterWarning_069,openshift-operators,critical,false,{"component": "version"}
71+
1785,19437,CephClusterWarning_070,openshift-storage,info,false,{"component": "version"}
72+
122,19575,KubeNodeNotReady_071,openshift-kube-apiserver,info,false,{"component": "api-server"}
73+
1987,18033,DNSLatencyHigh_072,openshift-storage,warning,true,{"component": "storage"}
74+
2394,12595,EtcdMembersDown_073,openshift-kube-apiserver,warning,false,{"component": "network"}
75+
933,19901,EtcdNoLeader_074,openshift-machine-api,info,false,{"component": "storage"}
76+
946,19710,KubeDeploymentReplicasMismatch_075,openshift-machine-api,critical,false,{"component": "monitoring"}
77+
531,18796,EtcdMembersDown_076,openshift-kube-apiserver,warning,false,{"component": "version"}
78+
14687,15006,KubeNodeNotReady_077,openshift-etcd,info,false,{"component": "compute"}
79+
1722,19888,KubeCPUOvercommit_078,openshift-logging,warning,false,{"component": "network"}
80+
1592,18315,HighCPUUsage_079,openshift-network,critical,false,{"component": "api-server"}
81+
808,18252,KubeMemoryOvercommit_080,openshift-etcd,info,true,{"component": "Others"}
82+
841,18753,EtcdNoLeader_081,openshift-logging,warning,false,{"component": "version"}
83+
265,18155,EtcdMembersDown_082,openshift-machine-api,critical,false,{"component": "api-server"}
84+
1456,18239,APIServerLatency_083,openshift-machine-api,critical,false,{"component": "compute"}
85+
6459,14355,PrometheusDown_084,openshift-logging,warning,false,{"component": "etcd"}
86+
1787,18753,KubePodCrashLooping_085,openshift-logging,info,false,{"component": "etcd"}
87+
17524,17625,AlertmanagerDown_086,openshift-kube-apiserver,warning,false,{"component": "etcd"}
88+
4192,4457,KubePodCrashLooping_087,openshift-monitoring,warning,false,{"component": "api-server"}
89+
5,19339,KubeNodeUnreachable_088,openshift-storage,warning,false,{"component": "compute"}
90+
1187,11825,DiskSpaceLow_089,openshift-storage,critical,false,{"component": "Others"}
91+
698,18146,NetworkLatencyHigh_090,openshift-kube-apiserver,warning,true,{"component": "compute"}
92+
1622,19711,KubePodNotReady_091,openshift-network,warning,false,{"component": "api-server"}
93+
733,18541,AlertmanagerDown_092,openshift-etcd,critical,false,{"component": "monitoring"}
94+
110,18407,NetworkLatencyHigh_093,openshift-storage,warning,false,{"component": "monitoring"}
95+
1845,19244,CephClusterWarning_094,openshift-kube-apiserver,critical,false,{"component": "monitoring"}
96+
76,18403,KubeDeploymentReplicasMismatch_095,openshift-operators,critical,false,{"component": "storage"}
97+
4622,11280,DiskSpaceLow_096,openshift-kube-apiserver,warning,false,{"component": "api-server"}
98+
1307,20050,KubePodCrashLooping_097,openshift-storage,warning,false,{"component": "Others"}
99+
53,18791,KubeCPUOvercommit_098,openshift-operators,critical,false,{"component": "etcd"}
100+
7420,15350,KubeMemoryOvercommit_099,openshift-network,warning,false,{"component": "Others"}
101+
1681,19730,KubePodCrashLooping_100,openshift-etcd,critical,false,{"component": "compute"}

0 commit comments

Comments
 (0)