init
This commit is contained in:
42
06-monitoring/02-debugging/debug-context-inspector.yaml
Normal file
42
06-monitoring/02-debugging/debug-context-inspector.yaml
Normal file
@@ -0,0 +1,42 @@
|
||||
apiVersion: kyverno.io/v1
|
||||
kind: ClusterPolicy
|
||||
metadata:
|
||||
name: debug-context-inspector
|
||||
annotations:
|
||||
policies.kyverno.io/title: "DEBUG: Инспектор контекстных переменных"
|
||||
policies.kyverno.io/description: >-
|
||||
ТОЛЬКО ДЛЯ ОТЛАДКИ. Всегда отклоняет запрос, выводя содержимое
|
||||
переменных в сообщении ошибки. Помогает понять, что видит политика.
|
||||
УДАЛИТЕ после отладки — не держите в production.
|
||||
spec:
|
||||
validationFailureAction: Enforce
|
||||
background: false # не запускать в background — только для живых запросов
|
||||
rules:
|
||||
- name: print-context
|
||||
match:
|
||||
resources:
|
||||
kinds:
|
||||
- Pod
|
||||
namespaces:
|
||||
- debug-namespace # применяем только в отдельном namespace
|
||||
context:
|
||||
- name: nsLabels
|
||||
apiCall:
|
||||
urlPath: "/api/v1/namespaces/{{ request.object.metadata.namespace }}"
|
||||
jmesPath: "metadata.labels"
|
||||
validate:
|
||||
# Всегда fail — выводим данные в сообщении
|
||||
message: >-
|
||||
[DEBUG] Pod: {{ request.object.metadata.name }}
|
||||
Namespace: {{ request.object.metadata.namespace }}
|
||||
Namespace labels: {{ nsLabels }}
|
||||
Pod labels: {{ request.object.metadata.labels }}
|
||||
User: {{ request.userInfo.username }}
|
||||
Groups: {{ request.userInfo.groups }}
|
||||
Operation: {{ request.operation }}
|
||||
Containers: {{ request.object.spec.containers[].name }}
|
||||
deny:
|
||||
conditions:
|
||||
- key: "true"
|
||||
operator: Equals
|
||||
value: "true"
|
||||
Reference in New Issue
Block a user