1
0
Fork 0
mirror of https://github.com/kyverno/kyverno.git synced 2024-12-14 11:57:48 +00:00
Cloud Native Policy Management
Find a file
Khaled Emara fb40aa5f38
feat(audit): use a worker pool for Audit policies (#10048)
* enhancement: split validation logic for enforce and audit policies to return admission response earlier

Signed-off-by: ShutingZhao <shuting@nirmata.com>

* chore: add missing file

Signed-off-by: ShutingZhao <shuting@nirmata.com>

* fix: unit tests

Signed-off-by: ShutingZhao <shuting@nirmata.com>

* fix: linter issues

Signed-off-by: ShutingZhao <shuting@nirmata.com>

* fix: unit tests

Signed-off-by: ShutingZhao <shuting@nirmata.com>

* fix: get latest policy object before updating status

Signed-off-by: ShutingZhao <shuting@nirmata.com>

* chore: remove debug code

Signed-off-by: ShutingZhao <shuting@nirmata.com>

* fix: compare before updates

Signed-off-by: ShutingZhao <shuting@nirmata.com>

* fix: initial reconcile

Signed-off-by: ShutingZhao <shuting@nirmata.com>

* fix: updates

Signed-off-by: ShutingZhao <shuting@nirmata.com>

* feat(audit): use a worker pool for Audit policies

Signed-off-by: Khaled Emara <khaled.emara@nirmata.com>

* fix: unit test

Signed-off-by: ShutingZhao <shuting@nirmata.com>

* fix(attempt): spin up go routine

Signed-off-by: ShutingZhao <shuting@nirmata.com>

* feat: add flags maxAuditWorkers, maxAuditCapacity

Signed-off-by: ShutingZhao <shuting@nirmata.com>

* fix: enable debug log on failure

Signed-off-by: ShutingZhao <shuting@nirmata.com>

* fix: wait group panic

Signed-off-by: ShutingZhao <shuting@nirmata.com>

* load-tests: add stess tests configurations

Signed-off-by: ShutingZhao <shuting@nirmata.com>

* load-tests: disable admissionreports

Signed-off-by: ShutingZhao <shuting@nirmata.com>

* fix: build policy contexts syncronously

Signed-off-by: Vishal Choudhary <vishal.choudhary@nirmata.com>

* fix: only run generate and mutate existing go routines when policies are present

Signed-off-by: Vishal Choudhary <vishal.choudhary@nirmata.com>

* fix: mutate and verify tests

Signed-off-by: Vishal Choudhary <vishal.choudhary@nirmata.com>

* fix: return early if no audit policy

Signed-off-by: ShutingZhao <shuting@nirmata.com>

* fix: run handlegenerate and mutate existing in all cases

Signed-off-by: Vishal Choudhary <vishal.choudhary@nirmata.com>

* fix: only test bgapplies in generate test

Signed-off-by: Vishal Choudhary <vishal.choudhary@nirmata.com>

* fix: defer wait in tests

Signed-off-by: Vishal Choudhary <vishal.choudhary@nirmata.com>

* enhancement: process validate enforce in a go routine

Signed-off-by: ShutingZhao <shuting@nirmata.com>

---------

Signed-off-by: ShutingZhao <shuting@nirmata.com>
Signed-off-by: Khaled Emara <khaled.emara@nirmata.com>
Signed-off-by: Vishal Choudhary <vishal.choudhary@nirmata.com>
Co-authored-by: ShutingZhao <shuting@nirmata.com>
Co-authored-by: Vishal Choudhary <vishal.choudhary@nirmata.com>
2024-04-17 15:46:18 +08:00
.devcontainer feat: add arm64 support in devcontainers (#8675) 2023-10-19 07:47:31 +00:00
.github feat(audit): use a worker pool for Audit policies (#10048) 2024-04-17 15:46:18 +08:00
.vscode fix launch.json (#9239) 2023-12-21 10:53:16 +00:00
api feat: add TSA cert chain support in cosign (#9961) 2024-03-30 20:50:07 +00:00
charts feat: add TSA cert chain support in cosign (#9961) 2024-03-30 20:50:07 +00:00
cmd feat(audit): use a worker pool for Audit policies (#10048) 2024-04-17 15:46:18 +08:00
config feat: add TSA cert chain support in cosign (#9961) 2024-03-30 20:50:07 +00:00
data feat: update built-in resource schemas (#7014) 2023-04-27 05:11:31 +00:00
docs chore: changes to use latest kyverno-json apis (#9980) 2024-04-02 14:35:26 +00:00
ext refactor: move resource loader package to ext (#8780) 2023-10-30 17:27:02 +00:00
hack feat: improve instrumented clients (#7006) 2023-04-25 15:31:09 +00:00
img upload logo (#1560) 2021-02-08 13:09:37 -08:00
litmuschaos [Chore] Bump to Go 1.20 (#6683) 2023-04-03 11:40:47 +00:00
pkg feat(audit): use a worker pool for Audit policies (#10048) 2024-04-17 15:46:18 +08:00
scripts feat(audit): use a worker pool for Audit policies (#10048) 2024-04-17 15:46:18 +08:00
test feat: add TSA cert chain support in cosign (#9961) 2024-03-30 20:50:07 +00:00
.chainsaw.yaml [Bug] [CLI] PSS report does not show properties with control details (#9785) 2024-03-07 13:54:00 -08:00
.codeclimate.yml remove arm from goreleaser (#903) 2020-06-04 11:45:37 -07:00
.directory Implemented validation across same yaml 2019-06-20 18:21:55 +03:00
.gitignore Unit tests for Pod Security Admission Integrations (#8585) 2023-12-26 22:28:08 +08:00
.golangci.yml chore: increase linter timeout (#7767) 2023-07-06 13:39:52 +00:00
.goreleaser.yml fix: release archive name template (#8475) 2023-09-20 22:35:49 +00:00
.ko.yaml feat: template background controller (#6157) 2023-01-31 17:12:34 +01:00
.krew.yaml Remove s390X (#4063) 2022-06-03 08:11:12 +00:00
.nancy-ignore chore: fix nancy ignore (#9908) 2024-03-15 14:24:49 +08:00
ADOPTERS.md Update ADOPTERS.md (#9986) 2024-04-02 22:46:21 +00:00
CHANGELOG.md chore: enable policy exceptions by default (#8545) 2023-09-27 17:40:13 +00:00
CODE_OF_CONDUCT.md Fix typos (#2860) 2021-12-18 20:03:16 +00:00
CODEOWNERS chore(codeowners): add KhaledEmaraDev to CODEOWNERS (#9851) 2024-03-08 09:51:29 +00:00
CONTRIBUTING.md chore: remove reference to kuttl (#9539) 2024-01-27 23:01:32 +00:00
CONTRIBUTORS.md Adding myself as Contributor (#9871) 2024-03-11 08:45:22 +00:00
DEVELOPMENT.md fix: modify the conformance config name (#9691) 2024-02-07 11:02:31 +00:00
go.mod feat(audit): use a worker pool for Audit policies (#10048) 2024-04-17 15:46:18 +08:00
go.sum feat(audit): use a worker pool for Audit policies (#10048) 2024-04-17 15:46:18 +08:00
GOVERNANCE.md governance added (#6488) 2023-03-10 10:52:50 +00:00
LICENSE Create LICENSE 2019-06-05 23:00:32 -04:00
MAINTAINERS.md chore: add myself to the maintainers list (#9130) 2023-12-11 09:09:53 -08:00
Makefile chore: bump controller gen to 0.14.0 (#9953) 2024-03-28 09:33:17 +01:00
OWNERS.md chore: add myself in approvers (#4990) 2022-10-15 23:55:00 +00:00
README.md update README for new features and OSS security index card (#9467) 2024-01-21 09:24:56 +00:00
ROADMAP.md Add Roadmap.md and link to active releases / roadap (#6564) 2023-03-14 10:21:17 +00:00
SECURITY-INSIGHTS.yml [Feature] Security Improvements based on CLOMonitor Checks (#9395) 2024-01-19 10:50:17 +00:00
SECURITY.md feat: security.md 2021-09-19 09:50:26 +05:30
sonar-project.properties Integrate Sonarcloud and Nancy github action (#3491) 2022-09-14 07:25:14 +00:00

Kyverno Tweet

Cloud Native Policy Management 🎉

build releaser Go Report Card License: Apache-2.0 GitHub Repo stars CII Best Practices OpenSSF Scorecard codecov Artifact HUB FOSSA Status

logo

Kyverno is a policy engine designed for Kubernetes platform engineering teams. It enables security, automation, compliance, and governance using policy-as-code. Kyverno can validate, mutate, generate, and cleanup configurations using Kubernetes admission controls, background scans, and source code respository scans. Kyverno policies can be managed as Kubernetes resources and do not require learning a new language. Kyverno is designed to work nicely with tools you already use like kubectl, kustomize, and Git.

Open Source Security Index - Fastest Growing Open Source Security Projects

📙 Documentation

Kyverno installation and reference documents are available at kyverno.io.

👉 Quick Start

👉 Installation

👉 Sample Policies

🙋‍♂️ Getting Help

We are here to help!

👉 For feature requests and bugs, file an issue.

👉 For discussions or questions, join the Kyverno Slack channel.

👉 For community meeting access, join the mailing list.

👉 To get updates star this repository.

Contributing

Thanks for your interest in contributing to Kyverno! Here are some steps to help get you started:

✔ Read and agree to the Contribution Guidelines.

✔ Browse through the GitHub discussions.

✔ Read Kyverno design and development details on the GitHub Wiki.

✔ Check out the good first issues list. Add a comment with /assign to request assignment of the issue.

✔ Check out the Kyverno Community page for other ways to get involved.

Software Bill of Materials

All Kyverno images include a Software Bill of Materials (SBOM) in CycloneDX JSON format. SBOMs for Kyverno images are stored in a separate repository at ghcr.io/kyverno/sbom. More information on this is available at Fetching the SBOM for Kyverno.

Contributors

Kyverno is built and maintained by our growing community of contributors!

Made with contributors-img.

License

Copyright 2023, the Kyverno project. All rights reserved. Kyverno is licensed under the Apache License 2.0.

Kyverno is a Cloud Native Computing Foundation (CNCF) Incubating project and was contributed by Nirmata.