Created
August 19, 2020 21:21
-
-
Save jsturtevant/bd8e62b93312712edf162f8e738a1b3d to your computer and use it in GitHub Desktop.
hyper-v-mutator
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
apiVersion: v1 | |
kind: Namespace | |
metadata: | |
labels: | |
control-plane: controller-manager | |
name: hyper-v-mutator-system | |
--- | |
apiVersion: rbac.authorization.k8s.io/v1 | |
kind: Role | |
metadata: | |
name: hyper-v-mutator-leader-election-role | |
namespace: hyper-v-mutator-system | |
rules: | |
- apiGroups: | |
- "" | |
resources: | |
- configmaps | |
verbs: | |
- get | |
- list | |
- watch | |
- create | |
- update | |
- patch | |
- delete | |
- apiGroups: | |
- "" | |
resources: | |
- configmaps/status | |
verbs: | |
- get | |
- update | |
- patch | |
- apiGroups: | |
- "" | |
resources: | |
- events | |
verbs: | |
- create | |
--- | |
apiVersion: rbac.authorization.k8s.io/v1 | |
kind: ClusterRole | |
metadata: | |
creationTimestamp: null | |
name: hyper-v-mutator-manager-role | |
rules: | |
- apiGroups: | |
- windows.windows.k8s.io | |
resources: | |
- hypervs | |
verbs: | |
- create | |
- delete | |
- get | |
- list | |
- patch | |
- update | |
- watch | |
- apiGroups: | |
- windows.windows.k8s.io | |
resources: | |
- hypervs/status | |
verbs: | |
- get | |
- patch | |
- update | |
--- | |
apiVersion: rbac.authorization.k8s.io/v1 | |
kind: ClusterRole | |
metadata: | |
name: hyper-v-mutator-proxy-role | |
rules: | |
- apiGroups: | |
- authentication.k8s.io | |
resources: | |
- tokenreviews | |
verbs: | |
- create | |
- apiGroups: | |
- authorization.k8s.io | |
resources: | |
- subjectaccessreviews | |
verbs: | |
- create | |
--- | |
apiVersion: rbac.authorization.k8s.io/v1beta1 | |
kind: ClusterRole | |
metadata: | |
name: hyper-v-mutator-metrics-reader | |
rules: | |
- nonResourceURLs: | |
- /metrics | |
verbs: | |
- get | |
--- | |
apiVersion: rbac.authorization.k8s.io/v1 | |
kind: RoleBinding | |
metadata: | |
name: hyper-v-mutator-leader-election-rolebinding | |
namespace: hyper-v-mutator-system | |
roleRef: | |
apiGroup: rbac.authorization.k8s.io | |
kind: Role | |
name: hyper-v-mutator-leader-election-role | |
subjects: | |
- kind: ServiceAccount | |
name: default | |
namespace: hyper-v-mutator-system | |
--- | |
apiVersion: rbac.authorization.k8s.io/v1 | |
kind: ClusterRoleBinding | |
metadata: | |
name: hyper-v-mutator-manager-rolebinding | |
roleRef: | |
apiGroup: rbac.authorization.k8s.io | |
kind: ClusterRole | |
name: hyper-v-mutator-manager-role | |
subjects: | |
- kind: ServiceAccount | |
name: default | |
namespace: hyper-v-mutator-system | |
--- | |
apiVersion: rbac.authorization.k8s.io/v1 | |
kind: ClusterRoleBinding | |
metadata: | |
name: hyper-v-mutator-proxy-rolebinding | |
roleRef: | |
apiGroup: rbac.authorization.k8s.io | |
kind: ClusterRole | |
name: hyper-v-mutator-proxy-role | |
subjects: | |
- kind: ServiceAccount | |
name: default | |
namespace: hyper-v-mutator-system | |
--- | |
apiVersion: v1 | |
kind: Service | |
metadata: | |
labels: | |
control-plane: controller-manager | |
name: hyper-v-mutator-controller-manager-metrics-service | |
namespace: hyper-v-mutator-system | |
spec: | |
ports: | |
- name: https | |
port: 8443 | |
targetPort: https | |
selector: | |
control-plane: controller-manager | |
--- | |
apiVersion: v1 | |
kind: Service | |
metadata: | |
name: hyper-v-mutator-webhook-service | |
namespace: hyper-v-mutator-system | |
spec: | |
ports: | |
- port: 443 | |
targetPort: 9443 | |
selector: | |
control-plane: controller-manager | |
--- | |
apiVersion: apps/v1 | |
kind: Deployment | |
metadata: | |
labels: | |
control-plane: controller-manager | |
name: hyper-v-mutator-controller-manager | |
namespace: hyper-v-mutator-system | |
spec: | |
replicas: 1 | |
selector: | |
matchLabels: | |
control-plane: controller-manager | |
template: | |
metadata: | |
labels: | |
control-plane: controller-manager | |
spec: | |
containers: | |
- args: | |
- --secure-listen-address=0.0.0.0:8443 | |
- --upstream=http://127.0.0.1:8080/ | |
- --logtostderr=true | |
- --v=10 | |
image: gcr.io/kubebuilder/kube-rbac-proxy:v0.5.0 | |
name: kube-rbac-proxy | |
ports: | |
- containerPort: 8443 | |
name: https | |
- args: | |
- --metrics-addr=127.0.0.1:8080 | |
- --enable-leader-election | |
command: | |
- /manager | |
image: jsturtevant/hyperv-webhook:latest | |
imagePullPolicy: Always | |
name: manager | |
ports: | |
- containerPort: 9443 | |
name: webhook-server | |
protocol: TCP | |
resources: | |
limits: | |
cpu: 100m | |
memory: 30Mi | |
requests: | |
cpu: 100m | |
memory: 20Mi | |
volumeMounts: | |
- mountPath: /tmp/k8s-webhook-server/serving-certs | |
name: cert | |
readOnly: true | |
terminationGracePeriodSeconds: 10 | |
volumes: | |
- name: cert | |
secret: | |
defaultMode: 420 | |
secretName: webhook-server-cert | |
--- | |
apiVersion: cert-manager.io/v1alpha2 | |
kind: Certificate | |
metadata: | |
name: hyper-v-mutator-serving-cert | |
namespace: hyper-v-mutator-system | |
spec: | |
dnsNames: | |
- hyper-v-mutator-webhook-service.hyper-v-mutator-system.svc | |
- hyper-v-mutator-webhook-service.hyper-v-mutator-system.svc.cluster.local | |
issuerRef: | |
kind: Issuer | |
name: hyper-v-mutator-selfsigned-issuer | |
secretName: webhook-server-cert | |
--- | |
apiVersion: cert-manager.io/v1alpha2 | |
kind: Issuer | |
metadata: | |
name: hyper-v-mutator-selfsigned-issuer | |
namespace: hyper-v-mutator-system | |
spec: | |
selfSigned: {} | |
--- | |
apiVersion: admissionregistration.k8s.io/v1beta1 | |
kind: MutatingWebhookConfiguration | |
metadata: | |
annotations: | |
cert-manager.io/inject-ca-from: hyper-v-mutator-system/hyper-v-mutator-serving-cert | |
creationTimestamp: null | |
name: hyper-v-mutator-mutating-webhook-configuration | |
webhooks: | |
- clientConfig: | |
caBundle: Cg== | |
service: | |
name: hyper-v-mutator-webhook-service | |
namespace: hyper-v-mutator-system | |
path: /mutate-v1-pod | |
failurePolicy: Fail | |
name: mpod.kb.io | |
rules: | |
- apiGroups: | |
- "" | |
apiVersions: | |
- v1 | |
operations: | |
- CREATE | |
- UPDATE | |
resources: | |
- pods |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment