Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 21 additions & 0 deletions apps/kyverno-policies.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: kyverno-policies
namespace: argo-cd
spec:
project: default
source:
repoURL: https://github.com/devshinthant/internal-developer-platform.git
targetRevision: main
path: platform/policies
destination:
server: https://kubernetes.default.svc
namespace: kyverno
syncPolicy:
automated:
prune: true
selfHeal: true
syncOptions:
- CreateNamespace=true

1 change: 1 addition & 0 deletions charts/node-api/templates/deployment.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ spec:
metadata:
labels:
app: node-api
environment: dev
spec:
containers:
- name: node-api
Expand Down
16 changes: 16 additions & 0 deletions platform/policies/check-labels.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
apiVersion: policies.kyverno.io/v1
kind: ValidatingPolicy
metadata:
name: check-labels
spec:
validationActions:
- Deny
matchConstraints:
resourceRules:
- apiGroups: ["apps"]
apiVersions: ["v1"]
operations: ["CREATE", "UPDATE"]
resources: ["deployments"]
validations:
- message: label 'environment' is required
expression: "'environment' in object.metadata.?labels.orValue({})"
Loading