apiVersion: v1 kind: Namespace metadata: name: homelab-access --- apiVersion: v1 kind: ServiceAccount metadata: name: homelab-readonly namespace: homelab-access --- apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRole metadata: name: homelab-readonly rules: - apiGroups: - "" resources: - componentstatuses - configmaps - endpoints - events - namespaces - nodes - persistentvolumeclaims - persistentvolumes - pods - pods/log - replicationcontrollers - resourcequotas - services verbs: - get - list - watch - apiGroups: - apps resources: - daemonsets - deployments - replicasets - statefulsets verbs: - get - list - watch - apiGroups: - batch resources: - cronjobs - jobs verbs: - get - list - watch - apiGroups: - networking.k8s.io resources: - ingresses - networkpolicies verbs: - get - list - watch - apiGroups: - monitoring.coreos.com resources: - prometheusrules - servicemonitors - podmonitors verbs: - get - list - watch - apiGroups: - argoproj.io resources: - applications - appprojects verbs: - get - list - watch - apiGroups: - kyverno.io - policies.kyverno.io resources: - clusterpolicies - policies - imagevalidatingpolicies verbs: - get - list - watch --- apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRoleBinding metadata: name: homelab-readonly roleRef: apiGroup: rbac.authorization.k8s.io kind: ClusterRole name: homelab-readonly subjects: - kind: ServiceAccount name: homelab-readonly namespace: homelab-access