Danny__Wei
84c44c0827
obtain webhook config name dynamically ( #2698 )
2021-11-08 20:09:19 -08:00
Marcus Noble
1966c82c6d
Fix various go lint issues ( #2639 )
...
* Fix various go lint issues
Signed-off-by: Marcus Noble <github@marcusnoble.co.uk>
* Fix if mistake
Signed-off-by: Marcus Noble <github@marcusnoble.co.uk>
* Simplified returns
Signed-off-by: Marcus Noble <github@marcusnoble.co.uk>
2021-10-29 17:06:03 +02:00
shuting
9dc2c2b4bf
Bugfixes - handle verifyImage rules for webhooks configurations ( #2501 )
...
* dynamic webhooks for verifyImages rule
Signed-off-by: ShutingZhao <shutting06@gmail.com>
* add namespace env to the initContainer
Signed-off-by: ShutingZhao <shutting06@gmail.com>
* add debug log
Signed-off-by: ShutingZhao <shutting06@gmail.com>
* update operator schema validation tag
Signed-off-by: ShutingZhao <shutting06@gmail.com>
* set policy to ready if auto-update-webhook disabled
Signed-off-by: ShutingZhao <shutting06@gmail.com>
2021-10-07 13:50:30 -07:00
Kumar Mallikarjuna
254be4c1d3
Leader Election for initContainer ( #2489 )
...
* Local build
Signed-off-by: Kumar Mallikarjuna <kumarmallikarjuna1@gmail.com>
* Leader Election for initContainer
Signed-off-by: Kumar Mallikarjuna <kumarmallikarjuna1@gmail.com>
* Lease deletion
Signed-off-by: Kumar Mallikarjuna <kumarmallikarjuna1@gmail.com>
* Use wrc client
Signed-off-by: Kumar Mallikarjuna <kumarmallikarjuna1@gmail.com>
* log error out
Signed-off-by: ShutingZhao <shutting06@gmail.com>
Co-authored-by: ShutingZhao <shutting06@gmail.com>
2021-10-06 16:12:07 -07:00
shuting
b10947b975
Dynamic webhooks ( #2425 )
...
* support k8s 1.22, update admissionregistration.k8s.io/v1beta1 to admissionregistration.k8s.io/v1
Signed-off-by: ShutingZhao <shutting06@gmail.com>
* - add failurePolicy to policy spec; - fix typo
Signed-off-by: ShutingZhao <shutting06@gmail.com>
* - add schema validation for failurePolicy; - add a printer column
Signed-off-by: ShutingZhao <shutting06@gmail.com>
* set default failure policy to fail if not defined
Signed-off-by: ShutingZhao <shutting06@gmail.com>
* resolve conflicts
Signed-off-by: ShutingZhao <shutting06@gmail.com>
* fix missing type for printerColumn
Signed-off-by: ShutingZhao <shutting06@gmail.com>
* refactor policy controller
Signed-off-by: ShutingZhao <shutting06@gmail.com>
* add webhook config manager
Signed-off-by: ShutingZhao <shutting06@gmail.com>
* - build webhook objects per policy update; - add fail webhook to default webhook configurations
Signed-off-by: ShutingZhao <shutting06@gmail.com>
* fix panic on policy update
Signed-off-by: ShutingZhao <shutting06@gmail.com>
* build default webhook: match empty if autoUpdateWebhooks is enabled, otherwise match all
Signed-off-by: ShutingZhao <shutting06@gmail.com>
* - set default webhook configs rule to empty; - handle policy deletion
Signed-off-by: ShutingZhao <shutting06@gmail.com>
* reset webhook config if policies with a specific failurePolicy are cleaned up
Signed-off-by: ShutingZhao <shutting06@gmail.com>
* handle wildcard pocliy
Signed-off-by: ShutingZhao <shutting06@gmail.com>
* update default webhook timeout to 10s
Signed-off-by: ShutingZhao <shutting06@gmail.com>
* cleanups
Signed-off-by: ShutingZhao <shutting06@gmail.com>
* added webhook informer to re-create it immediately if missing
Signed-off-by: ShutingZhao <shutting06@gmail.com>
* update tag webhookTimeoutSeconds description
Signed-off-by: ShutingZhao <shutting06@gmail.com>
* fix e2e tests
Signed-off-by: ShutingZhao <shutting06@gmail.com>
* fix linter issue
Signed-off-by: ShutingZhao <shutting06@gmail.com>
* correct metric endpoint
Signed-off-by: ShutingZhao <shutting06@gmail.com>
* add pol.generate.kind to webhooks
Signed-off-by: ShutingZhao <shutting06@gmail.com>
2021-10-05 00:15:09 -07:00
Pooja Singh
ba00ead7f8
adding ownerRef with namespace ( #2263 )
...
Signed-off-by: NoSkillGirl <singhpooja240393@gmail.com>
2021-08-13 17:07:40 -07:00
Pooja Singh
f9616cbab1
Removing OwnerReference ( #2251 )
...
* removing OwnerReference
Signed-off-by: NoSkillGirl <singhpooja240393@gmail.com>
* removing comments
Signed-off-by: NoSkillGirl <singhpooja240393@gmail.com>
2021-08-10 17:05:20 -07:00
shuting
65975a8b65
Enable webhooks configuration via Helm ( #2032 )
...
* helm - enable configurations of webhooks
Signed-off-by: Shuting Zhao <shutting06@gmail.com>
* retry on update failure
Signed-off-by: Shuting Zhao <shutting06@gmail.com>
* update Readme
Signed-off-by: Shuting Zhao <shutting06@gmail.com>
* address lint errors
Signed-off-by: Shuting Zhao <shutting06@gmail.com>
2021-06-16 23:29:07 -07:00
shuting
6f07ea407f
Customize namespaceSelector of Webhookconfigurations ( #2003 )
...
* customize namespaceSelector of webhook configurations from configMap
Signed-off-by: Shuting Zhao <shutting06@gmail.com>
* update webhook configurations base on UPDATEs of Kyverno ConfigMap
Signed-off-by: Shuting Zhao <shutting06@gmail.com>
* register webhook configurations with the namespaceSelector from ConfigMap
Signed-off-by: Shuting Zhao <shutting06@gmail.com>
* address golint comment
Signed-off-by: Shuting Zhao <shutting06@gmail.com>
* validate webhooks config format
Signed-off-by: Shuting Zhao <shutting06@gmail.com>
* fix NotDefined scenario
Signed-off-by: Shuting Zhao <shutting06@gmail.com>
2021-06-14 13:01:40 -07:00
shuting
e9a972a362
feat: HA ( #1931 )
...
* Fix Dev setup
* webhook monitor - start webhook monitor in main process
Signed-off-by: Shuting Zhao <shutting06@gmail.com>
* add leaderelection
Signed-off-by: Jim Bugwadia <jim@nirmata.com>
* - add isLeader; - update to use configmap lock
Signed-off-by: Shuting Zhao <shutting06@gmail.com>
* - add initialization method - add methods to get attributes
Signed-off-by: Shuting Zhao <shutting06@gmail.com>
* address comments
Signed-off-by: Shuting Zhao <shutting06@gmail.com>
* remove newContext in runLeaderElection
Signed-off-by: Shuting Zhao <shutting06@gmail.com>
* add leader election to GenerateController
Signed-off-by: Jim Bugwadia <jim@nirmata.com>
* skip processing for non-leaders
Signed-off-by: Jim Bugwadia <jim@nirmata.com>
* skip processing for non-leaders
Signed-off-by: Jim Bugwadia <jim@nirmata.com>
* add leader election to generate cleanup controller
Signed-off-by: Jim Bugwadia <jim@nirmata.com>
* Gracefully drain request
* HA - Webhook Register / Webhook Monitor / Certificate Renewer (#1920 )
* enable leader election for webhook register
Signed-off-by: Shuting Zhao <shutting06@gmail.com>
* extract certManager to its own process
Signed-off-by: Shuting Zhao <shutting06@gmail.com>
* leader election for cert manager
Signed-off-by: Shuting Zhao <shutting06@gmail.com>
* certManager - init certs by the leader
Signed-off-by: Shuting Zhao <shutting06@gmail.com>
* add leader election to webhook monitor
Signed-off-by: Shuting Zhao <shutting06@gmail.com>
* update log message
Signed-off-by: Shuting Zhao <shutting06@gmail.com>
* add leader election to policy controller
Signed-off-by: Shuting Zhao <shutting06@gmail.com>
* add leader election to policy report controller
Signed-off-by: Shuting Zhao <shutting06@gmail.com>
* rebuild leader election config
Signed-off-by: Shuting Zhao <shutting06@gmail.com>
* start informers in leaderelection
Signed-off-by: Shuting Zhao <shutting06@gmail.com>
* start policy informers in main
Signed-off-by: Shuting Zhao <shutting06@gmail.com>
* enable leader election in main
Signed-off-by: Shuting Zhao <shutting06@gmail.com>
* move eventHandler to the leader election start method
Signed-off-by: Shuting Zhao <shutting06@gmail.com>
* address reviewdog comments
Signed-off-by: Shuting Zhao <shutting06@gmail.com>
* add clusterrole leaderelection
Signed-off-by: Shuting Zhao <shutting06@gmail.com>
* fixed generate flow (#1936 )
Signed-off-by: NoSkillGirl <singhpooja240393@gmail.com>
* - init separate kubeclient for leaderelection - fix webhook monitor
Signed-off-by: Shuting Zhao <shutting06@gmail.com>
* address reviewdog comments
Signed-off-by: Shuting Zhao <shutting06@gmail.com>
* cleanup Kyverno managed resources on stopLeading
Signed-off-by: Shuting Zhao <shutting06@gmail.com>
* tag v1.4.0-beta1
Signed-off-by: Shuting Zhao <shutting06@gmail.com>
* fix cleanup process on Kyverno stops
Signed-off-by: Shuting Zhao <shutting06@gmail.com>
* bump kind to 0.11.0, k8s v1.21 (#1980 )
Co-authored-by: vyankatesh <vyankatesh@neualto.com>
Co-authored-by: vyankatesh <vyankateshkd@gmail.com>
Co-authored-by: Jim Bugwadia <jim@nirmata.com>
Co-authored-by: Pooja Singh <36136335+NoSkillGirl@users.noreply.github.com>
2021-06-08 12:37:19 -07:00
Vyankatesh Kudtarkar
ab8d077384
Fix Dev setup ( #1815 )
...
Co-authored-by: vyankatesh <vyankatesh@neualto.com>
2021-04-21 12:35:13 -07:00
shuting
9dab21619f
Match endpoint to the exact Kyverno Pod's IP ( #1787 )
...
* update log message
Signed-off-by: Shuting Zhao <shutting06@gmail.com>
* update printer column - validation failure action
Signed-off-by: Shuting Zhao <shutting06@gmail.com>
* match endpoint ip with the exact pod ip
Signed-off-by: Shuting Zhao <shutting06@gmail.com>
* - add tag "app.kubernetes.io/name"; - reduce throttling requests when deletes webhook configs
Signed-off-by: Shuting Zhao <shutting06@gmail.com>
* add [SelfSubjectAccessReview,*,*] to resource filters
Signed-off-by: Shuting Zhao <shutting06@gmail.com>
2021-04-12 20:29:51 -07:00
Shuting Zhao
4d01f76797
- fix variable validation; - update log level
...
Signed-off-by: Shuting Zhao <shutting06@gmail.com>
2021-03-31 13:24:36 -07:00
treydock
0131f375f1
Register webhooks only once service endpoint is ready ( #1741 )
...
* Register webhooks only once service endpoint is ready
Fixes #1740
Signed-off-by: Trey Dockendorf <tdockendorf@osc.edu>
* Wait for webhook to become ready in main loop
Signed-off-by: Trey Dockendorf <tdockendorf@osc.edu>
* Better error handling and logging around checking endpoint
Signed-off-by: Trey Dockendorf <tdockendorf@osc.edu>
* Log soft failure as info, remove redundant return
Signed-off-by: Trey Dockendorf <tdockendorf@osc.edu>
2021-03-30 13:46:01 -07:00
shuting
fd9acf21a7
Auto-recover policy report ( #1730 )
...
* auto-recover policy report
Signed-off-by: Shuting Zhao <shutting06@gmail.com>
* add flag background-scan to tune this interval
Signed-off-by: Shuting Zhao <shutting06@gmail.com>
* cleanup webhook configurations when Kyverno deployment is deleted
Signed-off-by: Shuting Zhao <shutting06@gmail.com>
* reconcile policy reports if Kyverno Configmap changes
Signed-off-by: Shuting Zhao <shutting06@gmail.com>
2021-03-25 12:28:03 -07:00
shuting
c816cf3d69
Add certificate renewer in webhook registration controller ( #1692 )
...
* load TLS pair from existing secret, if applicable
Signed-off-by: Shuting Zhao <shutting06@gmail.com>
* remove Kyverno managed secrets during shutdown
Signed-off-by: Shuting Zhao <shutting06@gmail.com>
* - add certificate renewer; - re-structure certificate package
Signed-off-by: Shuting Zhao <shutting06@gmail.com>
* commit un-saved file
Signed-off-by: Shuting Zhao <shutting06@gmail.com>
* eliminate throttling requests while registering webhook configs
Signed-off-by: Shuting Zhao <shutting06@gmail.com>
* disable webhook monitor (in old pod) during rolling update
Signed-off-by: Shuting Zhao <shutting06@gmail.com>
* remove webhook cleanup logic from init container
Signed-off-by: Shuting Zhao <shutting06@gmail.com>
* update PR template
Signed-off-by: Shuting Zhao <shutting06@gmail.com>
* update link to the website repo
Signed-off-by: Shuting Zhao <shutting06@gmail.com>
* update repo name
Signed-off-by: Shuting Zhao <shutting06@gmail.com>
2021-03-16 11:31:04 -07:00
shuting
39b27a16ed
Reduce throttling requests (GET) ( #1522 )
...
* add resource lister to even handler
Signed-off-by: Shuting Zhao <shutting06@gmail.com>
* use lister to get Kyverno deployment
Signed-off-by: Shuting Zhao <shutting06@gmail.com>
* add lister for webhook configs
Signed-off-by: Shuting Zhao <shutting06@gmail.com>
2021-02-05 09:58:10 -08:00
Shuting Zhao
54b0afb8b9
clean up old webhooks before registering new ones
2020-12-08 15:04:24 -08:00
shuting
624b481df3
Fix 1351 - policy report ( #1359 )
...
* ignore Kyverno CRDs existence check when server is not available
* clean up cluster / reportChangeRequest
* resolve PR comments
* - fixes #1351 ; - clean up code
* fo fmt
2020-12-04 10:04:46 -08:00
Jim Bugwadia
ec95724e97
update webhook registration and monitor ( #1318 )
...
* update webhook registration and monitor
* update log
* fix test
* improve logs
* improve logs
* format changes
* decrease interval for webhook config checks
2020-11-26 16:07:06 -08:00
Shuting Zhao
61e4088a53
improve eventGen logging
2020-11-03 16:07:02 -08:00
Shuting Zhao
cdc5190c56
update nirmata/kyverno to kyverno/kyverno
2020-10-07 11:12:31 -07:00
Mohan B E
a14828246d
Feature/api version 852 ( #1028 )
...
* apiVersion support for generate
* added apiVersion to crds
2020-08-07 09:47:33 +05:30
shuting
87fa77fbcc
965 add validate audit handler ( #967 )
...
* store policy names cache to reduce lookup time
* add validate audit handler
* fix #958 , remove auto-gen annotation on Pod
* formatting code
* update processTime to readable format
* #586 , add back unit test
* update logging info
* remove unused interface
* handle generate policy in a single thread in weboook
* resolve pr comments
2020-07-09 11:48:34 -07:00
Jim Bugwadia
65193feccb
update logging, naming, and event retry ( #959 )
...
* update logging and naming
* check per policy patch count
2020-06-30 11:53:27 -07:00
Shuting Zhao
0670abe2d2
set log level
2020-05-18 21:16:48 -07:00
Yuvraj
277402ba4c
Feature - Add checks for k8s version when Kyverno starts ( #831 )
...
* Added k8s version check for mutating and validating'
* version check adde
* middelware added
* formate
* Added timeout flag value to webhook server timeout middelware and refactore kubernetes version check
* Fixed test cases
* Removed log
* Update kubernetes version check
* Added check for mutate and validate
* Skip Validation in handleValidateAdmissionRequest if kubernetes version is below 1.14
* Update return object AdmissionResponse
* fixed condition for skiping mutation
* Handle condition for skip feature in case of kubernetes version 1.14.2
2020-05-18 17:00:52 -07:00
Jim Bugwadia
304c75403e
- skip resource schema validation when no mutate rules are applied
...
- cleanup webhook registration logic and logs
2020-05-17 14:37:05 -07:00
shivkumar dudhani
d327309d72
refactor logging
2020-03-17 16:25:34 -07:00
shivkumar dudhani
1b1ab78f77
logs & access
2020-03-17 11:05:20 -07:00
shravan
c4a8efbd7b
Merge branch 'master' into 253_ValidationInMutationFlag_v3
2020-01-29 14:34:15 +05:30
Shivkumar Dudhani
8c1d79ab28
linter suggestions ( #655 )
...
* cleanup phase 1
* linter fixes phase 2
2020-01-24 12:05:53 -08:00
shravan
81ea5ba157
253 fixing circle ci issues
2020-01-24 23:40:05 +05:30
shravan
12076f6183
Merge branch 'master' into 253_ValidationInMutationFlag_v3
2020-01-24 23:32:15 +05:30
Shivkumar Dudhani
1171ac691b
cleanup phase 1 ( #653 )
2020-01-24 09:37:12 -08:00
shravan
8dc6b06d79
resolving merge conflicts
2020-01-11 18:33:11 +05:30
Shuting Zhao
625e45c847
remove duplicate code
2019-12-12 18:55:40 -08:00
shivkumar dudhani
a19785261d
Merge branch '524_bug' into v1.1.0
2019-12-12 16:25:50 -08:00
Shuting Zhao
0f5cf40eda
- holds resource webhook creation requests in a quene; - remove webhookinformer from policy controller and webhookregistrationclient
2019-12-04 12:31:27 -08:00
shivkumar dudhani
0ea1d9986a
cleanup resource & policy
2019-12-02 17:15:47 -08:00
Shuting Zhao
f6db1b9e87
create policy webhookcfgs after verifying webhook status
2019-11-25 18:22:05 -08:00
Shuting Zhao
f506789498
create resource mutating webhook after verifying webhook is active
2019-11-25 18:07:11 -08:00
Shuting Zhao
8b0fb4b801
remove VerifyMutatingWebhook during shutdown
2019-11-25 13:08:02 -08:00
shivkumar dudhani
0d4bbb5a38
refactor
2019-11-19 10:13:03 -08:00
shivkumar dudhani
40b685c9db
merge with v1.1.0
2019-11-18 11:48:36 -08:00
Shivkumar Dudhani
61b202c64a
420 init container ( #501 )
...
* init container to cleanup stale webhook configurations if any.
* remove test code
* use internal pkg for os signals
* move webhook cleanup before http.server shutown.
* update make file and remove init
* update CI script
2019-11-18 11:41:37 -08:00
shivkumar dudhani
a315c22e2f
refer informer cache in policy controller for mutatingwebhookconfigs
2019-11-15 14:01:40 -08:00
shivkumar dudhani
e022084dd0
add checker to verify if mutatingwebhook is enabled or not + refactoring
2019-10-30 13:39:19 -07:00
shivkumar dudhani
c2e822c887
refactor webhook configuration
2019-09-04 13:43:12 -07:00
shivkumar dudhani
d71ad7004c
remove validation webhook configurations for resources
2019-08-28 11:04:38 -07:00