-
Notifications
You must be signed in to change notification settings - Fork 833
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
fix: fix Helm Chart #1007
fix: fix Helm Chart #1007
Conversation
The Webhooks resources generated by the Helm Chart are not the same that Karpenter redeploys. This is annoying when using a tool like ArgoCD to deploy Karpenter because it never converges.
✔️ Deploy Preview for karpenter-docs-prod canceled. 🔨 Explore the source changes: 61a46db 🔍 Inspect the deploy log: https://app.netlify.com/sites/karpenter-docs-prod/deploys/61bb1c7ab120a1000848d90d |
operations: | ||
- CREATE | ||
- UPDATE | ||
- DELETE |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This was intentionally left out. Why was this included?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Oh I see -- this is generated by knative pkg. Do you need DEFAULT in the above webhook as well?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Here is what I have when the webhook is redeployed by Karpenter:
apiVersion: admissionregistration.k8s.io/v1
kind: ValidatingWebhookConfiguration
metadata:
annotations:
kubectl.kubernetes.io/last-applied-configuration: >
{"apiVersion":"admissionregistration.k8s.io/v1","kind":"ValidatingWebhookConfiguration","metadata":{"annotations":{},"labels":{"argocd.argoproj.io/instance":"karpenter"},"name":"validation.webhook.provisioners.karpenter.sh"},"webhooks":[{"admissionReviewVersions":["v1"],"clientConfig":{"service":{"name":"karpenter-webhook","namespace":"kube-system"}},"failurePolicy":"Fail","name":"validation.webhook.provisioners.karpenter.sh","rules":[{"apiGroups":["karpenter.sh"],"apiVersions":["v1alpha5"],"operations":["CREATE","UPDATE"],"resources":["provisioners
provisioners/status"]}],"sideEffects":"None"}]}
creationTimestamp: '2021-12-08T08:03:41Z'
generation: 212932
labels:
argocd.argoproj.io/instance: karpenter
managedFields:
- apiVersion: admissionregistration.k8s.io/v1
fieldsType: FieldsV1
fieldsV1:
'f:metadata':
'f:annotations':
.: {}
'f:kubectl.kubernetes.io/last-applied-configuration': {}
'f:labels':
.: {}
'f:argocd.argoproj.io/instance': {}
'f:webhooks':
.: {}
'k:{"name":"validation.webhook.provisioners.karpenter.sh"}':
.: {}
'f:admissionReviewVersions': {}
'f:clientConfig':
.: {}
'f:service':
.: {}
'f:name': {}
'f:namespace': {}
'f:port': {}
'f:failurePolicy': {}
'f:matchPolicy': {}
'f:name': {}
'f:objectSelector': {}
'f:sideEffects': {}
'f:timeoutSeconds': {}
manager: argocd-application-controller
operation: Update
time: '2021-12-16T10:26:16Z'
- apiVersion: admissionregistration.k8s.io/v1
fieldsType: FieldsV1
fieldsV1:
'f:metadata':
'f:ownerReferences':
.: {}
'k:{"uid":"bb1593ba-ee19-4c73-901e-f2b4926627c4"}':
.: {}
'f:apiVersion': {}
'f:blockOwnerDeletion': {}
'f:controller': {}
'f:kind': {}
'f:name': {}
'f:uid': {}
'f:webhooks':
'k:{"name":"validation.webhook.provisioners.karpenter.sh"}':
'f:clientConfig':
'f:caBundle': {}
'f:service':
'f:path': {}
'f:namespaceSelector': {}
'f:rules': {}
manager: webhook
operation: Update
time: '2021-12-16T10:26:16Z'
name: validation.webhook.provisioners.karpenter.sh
ownerReferences:
- apiVersion: v1
blockOwnerDeletion: true
controller: true
kind: Namespace
name: kube-system
uid: bb1593ba-ee19-4c73-901e-f2b4926627c4
resourceVersion: '5402674'
uid: e427aa54-60ae-4242-b9fa-a9d012e4c600
webhooks:
- admissionReviewVersions:
- v1
clientConfig:
caBundle: >-
LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUNlekNDQWlDZ0F3SUJBZ0lSQU9vdXFPVlJ5ZWFKMzRGYUlHRnkxMjB3Q2dZSUtvWkl6ajBFQXdJd1FqRVUKTUJJR0ExVUVDaE1MYTI1aGRHbDJaUzVrWlhZeEtqQW9CZ05WQkFNVElXdGhjbkJsYm5SbGNpMTNaV0pvYjI5cgpMbXQxWW1VdGMzbHpkR1Z0TG5OMll6QWVGdzB5TVRFeU1UWXhNREkyTlRaYUZ3MHlNVEV5TWpNeE1ESTJOVFphCk1FSXhGREFTQmdOVkJBb1RDMnR1WVhScGRtVXVaR1YyTVNvd0tBWURWUVFERXlGcllYSndaVzUwWlhJdGQyVmkKYUc5dmF5NXJkV0psTFhONWMzUmxiUzV6ZG1Nd1dUQVRCZ2NxaGtqT1BRSUJCZ2dxaGtqT1BRTUJCd05DQUFTdQpmaE9QWUpSeEdJcVd6SmF2TGxlNXVpTzdOVkRRbmpFZWU1WVNWU21jam9OS09OZTZ0WlJFZ0JpOTZKbXMyWnM5CjFSQUtrZFZLY3REcFNPdFZyZlFTbzRIMk1JSHpNQTRHQTFVZER3RUIvd1FFQXdJQ2hEQWRCZ05WSFNVRUZqQVUKQmdnckJnRUZCUWNEQVFZSUt3WUJCUVVIQXdJd0R3WURWUjBUQVFIL0JBVXdBd0VCL3pBZEJnTlZIUTRFRmdRVQpQVzhPMVRoWlJwRGhIOEwrMGw2Nk9FZTRHK293Z1pFR0ExVWRFUVNCaVRDQmhvSVJhMkZ5Y0dWdWRHVnlMWGRsClltaHZiMnVDSFd0aGNuQmxiblJsY2kxM1pXSm9iMjlyTG10MVltVXRjM2x6ZEdWdGdpRnJZWEp3Wlc1MFpYSXQKZDJWaWFHOXZheTVyZFdKbExYTjVjM1JsYlM1emRtT0NMMnRoY25CbGJuUmxjaTEzWldKb2IyOXJMbXQxWW1VdApjM2x6ZEdWdExuTjJZeTVqYkhWemRHVnlMbXh2WTJGc01Bb0dDQ3FHU000OUJBTUNBMGtBTUVZQ0lRRHo2czI1CjB6QWZ4VE44MC9sa01xYzFSd1NmQUZPQlRiWHAreDllRVJBTVJBSWhBS0RVVG5FK0J0eElNN2paSWJkemZudGEKaTJraXBiMUZmSFZ6K2ZHWkhDWWQKLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo=
service:
name: karpenter-webhook
namespace: kube-system
path: /validate-resource
port: 443
failurePolicy: Fail
matchPolicy: Equivalent
name: validation.webhook.provisioners.karpenter.sh
namespaceSelector:
matchExpressions:
- key: webhooks.knative.dev/exclude
operator: DoesNotExist
objectSelector: {}
rules:
- apiGroups:
- karpenter.sh
apiVersions:
- v1alpha5
operations:
- CREATE
- UPDATE
- DELETE
resources:
- provisioners
- provisioners/status
scope: '*'
sideEffects: None
timeoutSeconds: 10
My change only reflects in the Helm Chart of what is done by Karpenter.
1. Issue, if available:
2. Description of changes:
The Webhooks resources generated by the Helm Chart are not the same that Karpenter redeploys.
This is annoying when using a tool like ArgoCD to deploy Karpenter because it never converges.
3. Does this change impact docs?
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.