From 908bc0a7533c1896c66e33d41388f284776a5874 Mon Sep 17 00:00:00 2001 From: Ryan Hallisey Date: Thu, 5 Jul 2018 13:10:12 -0400 Subject: [PATCH] Update cdi and kubevirt version to match up with 0.7.0-alpha.4 (#306) --- roles/cdi/README.md | 2 +- roles/cdi/defaults/main.yml | 2 +- roles/kubevirt/templates/.gitignore | 4 + roles/kubevirt/templates/kubevirt.yaml.j2 | 1670 --------------------- 4 files changed, 6 insertions(+), 1672 deletions(-) create mode 100644 roles/kubevirt/templates/.gitignore delete mode 100644 roles/kubevirt/templates/kubevirt.yaml.j2 diff --git a/roles/cdi/README.md b/roles/cdi/README.md index 23d4d61ce..ad001dbd2 100644 --- a/roles/cdi/README.md +++ b/roles/cdi/README.md @@ -9,7 +9,7 @@ This role deploys the CDI controller. | cdi_kubevirt_storageclass | kubevirt | |Storageclass that CDI will use to create PersistentVolumes. | | apb_action | provision ||Action to perform.| | cdi_repo_tag | kubevirt | |CDI docker hub repo tag.| -| cdi_release_tag | v0.5.0 | |CDI docker hub release tag.| +| cdi_release_tag | v1.0.0 | |CDI docker hub release tag.| ### Usage diff --git a/roles/cdi/defaults/main.yml b/roles/cdi/defaults/main.yml index 77eabbd6b..7762d52fd 100644 --- a/roles/cdi/defaults/main.yml +++ b/roles/cdi/defaults/main.yml @@ -2,4 +2,4 @@ cdi_namespace: "{{ cdi_image_namespace | default('golden-images') }}" cdi_storageclass: "{{ cdi_kubevirt_storageclass | default('kubevirt') }}" apb_action: "provision" repo_tag: "{{ cdi_repo_tag | default('kubevirt') }}" -release_tag: "{{ cdi_release_tag | default('v0.5.0') }}" +release_tag: "{{ cdi_release_tag | default('v1.0.0') }}" diff --git a/roles/kubevirt/templates/.gitignore b/roles/kubevirt/templates/.gitignore new file mode 100644 index 000000000..5e7d2734c --- /dev/null +++ b/roles/kubevirt/templates/.gitignore @@ -0,0 +1,4 @@ +# Ignore everything in this directory +* +# Except this file +!.gitignore diff --git a/roles/kubevirt/templates/kubevirt.yaml.j2 b/roles/kubevirt/templates/kubevirt.yaml.j2 deleted file mode 100644 index 2c4e1e9d0..000000000 --- a/roles/kubevirt/templates/kubevirt.yaml.j2 +++ /dev/null @@ -1,1670 +0,0 @@ -# RBAC -apiVersion: rbac.authorization.k8s.io/v1beta1 -kind: ClusterRole -metadata: - name: kubevirt.io:admin - labels: - kubevirt.io: "" - rbac.authorization.k8s.io/aggregate-to-admin: "true" -rules: - - apiGroups: - - subresources.kubevirt.io - resources: - - virtualmachineinstances/console - - virtualmachineinstances/vnc - verbs: - - get - - apiGroups: - - kubevirt.io - resources: - - virtualmachineinstances - - virtualmachines - - virtualmachineinstancepresets - - virtualmachineinstancereplicasets - verbs: - - get - - delete - - create - - update - - patch - - list - - watch - - deletecollection ---- -apiVersion: rbac.authorization.k8s.io/v1beta1 -kind: ClusterRole -metadata: - name: kubevirt.io:edit - labels: - kubevirt.io: "" - rbac.authorization.k8s.io/aggregate-to-edit: "true" -rules: - - apiGroups: - - subresources.kubevirt.io - resources: - - virtualmachineinstances/console - - virtualmachineinstances/vnc - verbs: - - get - - apiGroups: - - kubevirt.io - resources: - - virtualmachineinstances - - virtualmachines - - virtualmachineinstancepresets - - virtualmachineinstancereplicasets - verbs: - - get - - delete - - create - - update - - patch - - list - - watch ---- -apiVersion: rbac.authorization.k8s.io/v1beta1 -kind: ClusterRole -metadata: - name: kubevirt.io:view - labels: - kubevirt.io: "" - rbac.authorization.k8s.io/aggregate-to-view: "true" -rules: - - apiGroups: - - kubevirt.io - resources: - - virtualmachineinstances - - virtualmachines - - virtualmachineinstancepresets - - virtualmachineinstancereplicasets - verbs: - - get - - list - - watch ---- -kind: ServiceAccount -apiVersion: v1 -metadata: - name: kubevirt-apiserver - namespace: {{ namespace }} - labels: - kubevirt.io: "" ---- -apiVersion: rbac.authorization.k8s.io/v1beta1 -kind: ClusterRoleBinding -metadata: - name: kubevirt-apiserver - namespace: {{ namespace }} - labels: - kubevirt.io: "" -roleRef: - kind: ClusterRole - name: kubevirt-apiserver - apiGroup: rbac.authorization.k8s.io -subjects: - - kind: ServiceAccount - name: kubevirt-apiserver - namespace: {{ namespace }} ---- -apiVersion: rbac.authorization.k8s.io/v1beta1 -kind: ClusterRoleBinding -metadata: - name: kubevirt-apiserver-auth-delegator - namespace: {{ namespace }} - labels: - kubevirt.io: "" -roleRef: - apiGroup: rbac.authorization.k8s.io - kind: ClusterRole - name: system:auth-delegator -subjects: -- kind: ServiceAccount - name: kubevirt-apiserver - namespace: {{ namespace }} ---- -apiVersion: rbac.authorization.k8s.io/v1beta1 -kind: RoleBinding -metadata: - name: kubevirt-apiserver - namespace: {{ namespace }} - labels: - kubevirt.io: "" -roleRef: - kind: Role - name: kubevirt-apiserver - apiGroup: rbac.authorization.k8s.io -subjects: - - kind: ServiceAccount - name: kubevirt-apiserver - namespace: {{ namespace }} ---- -apiVersion: rbac.authorization.k8s.io/v1beta1 -kind: Role -metadata: - name: kubevirt-apiserver - namespace: {{ namespace }} - labels: - kubevirt.io: "" -rules: - - apiGroups: - - '' - resources: - - secrets - verbs: - - get - - list - - delete - - update - - create - - apiGroups: - - '' - resources: - - configmaps - verbs: - - get - - list - - watch ---- -apiVersion: rbac.authorization.k8s.io/v1beta1 -kind: ClusterRole -metadata: - name: kubevirt-apiserver - namespace: {{ namespace }} - labels: - kubevirt.io: "" -rules: - - apiGroups: - - apiregistration.k8s.io - resources: - - apiservices - verbs: - - get - - create - - update - - apiGroups: - - '' - resources: - - pods - verbs: - - get - - list - - apiGroups: - - '' - resources: - - pods/exec - verbs: - - create - - apiGroups: - - kubevirt.io - resources: - - virtualmachineinstances - verbs: - - get - - list ---- -apiVersion: rbac.authorization.k8s.io/v1beta1 -kind: ClusterRole -metadata: - name: kubevirt-controller - namespace: {{ namespace }} - labels: - kubevirt.io: "" -rules: - - apiGroups: - - '' - resources: - - pods - verbs: - - get - - list - - watch - - delete - - update - - create - - apiGroups: - - '' - resources: - - nodes - - persistentvolumeclaims - verbs: - - get - - list - - watch - - apiGroups: - - kubevirt.io - resources: - - virtualmachineinstances - - virtualmachineinstancereplicasets - - virtualmachineinstancepresets - - virtualmachines - verbs: - - get - - list - - watch - - delete - - update - - create - - deletecollection ---- -apiVersion: v1 -kind: ServiceAccount -metadata: - name: kubevirt-controller - namespace: {{ namespace }} - labels: - kubevirt.io: "" ---- -apiVersion: v1 -kind: ServiceAccount -metadata: - name: kubevirt-privileged - namespace: {{ namespace }} - labels: - kubevirt.io: "" ---- -apiVersion: rbac.authorization.k8s.io/v1beta1 -kind: ClusterRoleBinding -metadata: - name: kubevirt-controller - namespace: {{ namespace }} - labels: - kubevirt.io: "" -roleRef: - kind: ClusterRole - name: kubevirt-controller - apiGroup: rbac.authorization.k8s.io -subjects: - - kind: ServiceAccount - name: kubevirt-controller - namespace: {{ namespace }} ---- -apiVersion: rbac.authorization.k8s.io/v1beta1 -kind: ClusterRoleBinding -metadata: - name: kubevirt-controller-cluster-admin - namespace: {{ namespace }} - labels: - kubevirt.io: "" -roleRef: - kind: ClusterRole - name: cluster-admin - apiGroup: rbac.authorization.k8s.io -subjects: - - kind: ServiceAccount - name: kubevirt-controller - namespace: {{ namespace }} ---- -apiVersion: rbac.authorization.k8s.io/v1beta1 -kind: ClusterRoleBinding -metadata: - name: kubevirt-privileged-cluster-admin - namespace: {{ namespace }} - labels: - kubevirt.io: "" -roleRef: - kind: ClusterRole - name: cluster-admin - apiGroup: rbac.authorization.k8s.io -subjects: - - kind: ServiceAccount - name: kubevirt-privileged - namespace: {{ namespace }} ---- -apiVersion: rbac.authorization.k8s.io/v1 -kind: ClusterRole -metadata: - annotations: - rbac.authorization.kubernetes.io/autoupdate: "true" - labels: - kubevirt.io: "" - kubernetes.io/bootstrapping: rbac-defaults - name: kubevirt.io:default -rules: -- apiGroups: - - subresources.kubevirt.io - resources: - - version - verbs: - - get - - list ---- -apiVersion: rbac.authorization.k8s.io/v1 -kind: ClusterRoleBinding -metadata: - labels: - kubevirt.io: "" - annotations: - rbac.authorization.kubernetes.io/autoupdate: "true" - name: kubevirt.io:default -roleRef: - apiGroup: rbac.authorization.k8s.io - kind: ClusterRole - name: kubevirt.io:default -subjects: -- apiGroup: rbac.authorization.k8s.io - kind: Group - name: system:authenticated -- apiGroup: rbac.authorization.k8s.io - kind: Group - name: system:unauthenticated ---- -apiVersion: v1 -kind: Service -metadata: - name: virt-api - namespace: {{ namespace }} - labels: - kubevirt.io: "virt-api" -spec: - ports: - - port: 443 - targetPort: 8443 - protocol: TCP - selector: - kubevirt.io: virt-api ---- -apiVersion: extensions/v1beta1 -kind: Deployment -metadata: - name: virt-api - namespace: {{ namespace }} - labels: - kubevirt.io: "virt-api" -spec: - replicas: 2 - template: - metadata: - annotations: - scheduler.alpha.kubernetes.io/critical-pod: "" - scheduler.alpha.kubernetes.io/tolerations: | - [ - { - "key": "CriticalAddonsOnly", - "operator": "Exists" - } - ] - labels: - kubevirt.io: virt-api - spec: - serviceAccountName: kubevirt-controller - containers: - - name: virt-api - image: {{ docker_prefix }}/virt-api:{{ docker_tag }} - imagePullPolicy: IfNotPresent - command: - - "virt-api" - - "--port" - - "8443" - - "--subresources-only" - ports: - - containerPort: 8443 - name: "virt-api" - protocol: "TCP" - readinessProbe: - tcpSocket: - port: 8443 - initialDelaySeconds: 5 - periodSeconds: 10 - securityContext: - runAsNonRoot: true ---- -# kubevirt controller -apiVersion: extensions/v1beta1 -kind: Deployment -metadata: - name: virt-controller - namespace: {{ namespace }} - labels: - kubevirt.io: "virt-controller" -spec: - replicas: 2 - template: - metadata: - annotations: - scheduler.alpha.kubernetes.io/critical-pod: "" - scheduler.alpha.kubernetes.io/tolerations: | - [ - { - "key": "CriticalAddonsOnly", - "operator": "Exists" - } - ] - labels: - kubevirt.io: virt-controller - spec: - serviceAccountName: kubevirt-controller - containers: - - name: virt-controller - image: {{ docker_prefix }}/virt-controller:{{ docker_tag }} - imagePullPolicy: IfNotPresent - command: - - "virt-controller" - - "--launcher-image" - - "{{ docker_prefix }}/virt-launcher:{{ docker_tag }}" - - "--port" - - "8182" - ports: - - containerPort: 8182 - name: "virt-controller" - protocol: "TCP" - livenessProbe: - failureThreshold: 8 - httpGet: - port: 8182 - path: /healthz - initialDelaySeconds: 15 - timeoutSeconds: 10 - readinessProbe: - httpGet: - port: 8182 - path: /leader - initialDelaySeconds: 15 - timeoutSeconds: 10 - securityContext: - runAsNonRoot: true ---- -# virt-handler daemon set -apiVersion: extensions/v1beta1 -kind: DaemonSet -metadata: - name: virt-handler - namespace: {{ namespace }} - labels: - kubevirt.io: "virt-handler" -spec: - updateStrategy: - type: RollingUpdate - template: - metadata: - name: virt-handler - annotations: - scheduler.alpha.kubernetes.io/critical-pod: "" - scheduler.alpha.kubernetes.io/tolerations: | - [ - { - "key": "CriticalAddonsOnly", - "operator": "Exists" - } - ] - labels: - kubevirt.io: virt-handler - spec: - serviceAccountName: kubevirt-privileged - hostPID: true - containers: - - name: virt-handler - ports: - - containerPort: 8185 - hostPort: 8185 - image: {{ docker_prefix }}/virt-handler:{{ docker_tag }} - imagePullPolicy: IfNotPresent - command: - - "virt-handler" - - "-v" - - "3" - - "--hostname-override" - - "$(NODE_NAME)" - securityContext: - privileged: true - volumeMounts: - - name: libvirt-runtime - mountPath: /var/run/libvirt - - name: virt-share-dir - mountPath: /var/run/kubevirt - - name: virt-private-dir - mountPath: /var/run/kubevirt-private - - name: device-plugin - mountPath: /var/lib/kubelet/device-plugins - env: - - name: NODE_NAME - valueFrom: - fieldRef: - fieldPath: spec.nodeName - volumes: - - name: libvirt-runtime - hostPath: - path: /var/run/libvirt - - name: virt-share-dir - hostPath: - path: /var/run/kubevirt - - name: virt-private-dir - hostPath: - path: /var/run/kubevirt-private - - name: device-plugin - hostPath: - path: /var/lib/kubelet/device-plugins ---- -apiVersion: apiextensions.k8s.io/v1beta1 -kind: CustomResourceDefinition -metadata: - creationTimestamp: null - labels: - kubevirt.io: "" - name: virtualmachineinstances.kubevirt.io -spec: - group: kubevirt.io - names: - kind: VirtualMachineInstance - plural: virtualmachineinstances - shortNames: - - vmi - - vmis - singular: virtualmachineinstance - scope: Namespaced - validation: - openAPIV3Schema: - properties: - apiVersion: - type: string - kind: - type: string - metadata: {} - spec: - properties: - affinity: - properties: - nodeAffinity: {} - podAffinity: {} - podAntiAffinity: {} - domain: - properties: - clock: - properties: - timezone: - type: string - utc: - properties: - offsetSeconds: - format: int32 - type: integer - cpu: - properties: - cores: - format: int64 - type: integer - model: - type: string - devices: - properties: - disks: - items: - properties: - bootOrder: - format: int32 - type: integer - cdrom: - properties: - bus: - type: string - readonly: - type: boolean - tray: - type: string - disk: - properties: - bus: - type: string - readonly: - type: boolean - floppy: - properties: - readonly: - type: boolean - tray: - type: string - lun: - properties: - bus: - type: string - readonly: - type: boolean - name: - type: string - serial: - type: string - volumeName: - type: string - required: - - name - - volumeName - type: array - interfaces: - items: - properties: - bridge: {} - macAddress: - type: string - model: - type: string - name: - type: string - ports: - items: - properties: - name: - type: string - port: - format: int32 - type: integer - protocol: - type: string - required: - - port - type: array - slirp: {} - required: - - name - type: array - watchdog: - properties: - i6300esb: - properties: - action: - type: string - name: - type: string - required: - - name - features: - properties: - acpi: - properties: - enabled: - type: boolean - apic: - properties: - enabled: - type: boolean - endOfInterrupt: - type: boolean - hyperv: - properties: - relaxed: - properties: - enabled: - type: boolean - reset: - properties: - enabled: - type: boolean - runtime: - properties: - enabled: - type: boolean - spinlocks: - properties: - enabled: - type: boolean - spinlocks: - format: int64 - type: integer - synic: - properties: - enabled: - type: boolean - synictimer: - properties: - enabled: - type: boolean - vapic: - properties: - enabled: - type: boolean - vendorid: - properties: - enabled: - type: boolean - vendorid: - type: string - vpindex: - properties: - enabled: - type: boolean - firmware: - properties: - uuid: - type: string - machine: - properties: - type: - type: string - required: - - type - memory: - properties: - hugepages: - properties: - pageSize: - type: string - resources: - properties: - limits: - type: object - requests: - type: object - required: - - devices - hostname: - type: string - networks: - items: - properties: - name: - type: string - pod: - properties: - vmNetworkCIDR: - type: string - required: - - name - type: array - nodeSelector: - type: object - subdomain: - type: string - terminationGracePeriodSeconds: - format: int64 - type: integer - volumes: - items: - properties: - cloudInitNoCloud: - properties: - secretRef: {} - userData: - type: string - userDataBase64: - type: string - emptyDisk: - properties: - capacity: {} - required: - - capacity - ephemeral: - properties: - persistentVolumeClaim: {} - name: - type: string - persistentVolumeClaim: {} - registryDisk: - properties: - image: - type: string - imagePullSecret: - type: string - required: - - image - required: - - name - type: array - required: - - domain - status: - properties: - conditions: - items: - properties: - lastProbeTime: {} - lastTransitionTime: {} - message: - type: string - reason: - type: string - status: - type: string - type: - type: string - required: - - type - - status - type: array - interfaces: - items: - properties: - ipAddress: - type: string - mac: - type: string - type: array - nodeName: - type: string - phase: - type: string - version: v1alpha2 -status: - acceptedNames: - kind: "" - plural: "" - conditions: null - ---- -apiVersion: apiextensions.k8s.io/v1beta1 -kind: CustomResourceDefinition -metadata: - creationTimestamp: null - labels: - kubevirt.io: "" - name: virtualmachineinstancereplicasets.kubevirt.io -spec: - group: kubevirt.io - names: - kind: VirtualMachineInstanceReplicaSet - plural: virtualmachineinstancereplicasets - shortNames: - - vmirs - - vmirss - singular: virtualmachineinstancereplicaset - scope: Namespaced - validation: - openAPIV3Schema: - properties: - apiVersion: - type: string - kind: - type: string - metadata: {} - spec: - properties: - paused: - type: boolean - replicas: - format: int32 - type: integer - selector: {} - template: - properties: - metadata: {} - spec: - properties: - affinity: - properties: - nodeAffinity: {} - podAffinity: {} - podAntiAffinity: {} - domain: - properties: - clock: - properties: - timezone: - type: string - utc: - properties: - offsetSeconds: - format: int32 - type: integer - cpu: - properties: - cores: - format: int64 - type: integer - model: - type: string - devices: - properties: - disks: - items: - properties: - bootOrder: - format: int32 - type: integer - cdrom: - properties: - bus: - type: string - readonly: - type: boolean - tray: - type: string - disk: - properties: - bus: - type: string - readonly: - type: boolean - floppy: - properties: - readonly: - type: boolean - tray: - type: string - lun: - properties: - bus: - type: string - readonly: - type: boolean - name: - type: string - serial: - type: string - volumeName: - type: string - required: - - name - - volumeName - type: array - interfaces: - items: - properties: - bridge: {} - macAddress: - type: string - model: - type: string - name: - type: string - ports: - items: - properties: - name: - type: string - port: - format: int32 - type: integer - protocol: - type: string - required: - - port - type: array - slirp: {} - required: - - name - type: array - watchdog: - properties: - i6300esb: - properties: - action: - type: string - name: - type: string - required: - - name - features: - properties: - acpi: - properties: - enabled: - type: boolean - apic: - properties: - enabled: - type: boolean - endOfInterrupt: - type: boolean - hyperv: - properties: - relaxed: - properties: - enabled: - type: boolean - reset: - properties: - enabled: - type: boolean - runtime: - properties: - enabled: - type: boolean - spinlocks: - properties: - enabled: - type: boolean - spinlocks: - format: int64 - type: integer - synic: - properties: - enabled: - type: boolean - synictimer: - properties: - enabled: - type: boolean - vapic: - properties: - enabled: - type: boolean - vendorid: - properties: - enabled: - type: boolean - vendorid: - type: string - vpindex: - properties: - enabled: - type: boolean - firmware: - properties: - uuid: - type: string - machine: - properties: - type: - type: string - required: - - type - memory: - properties: - hugepages: - properties: - pageSize: - type: string - resources: - properties: - limits: - type: object - requests: - type: object - required: - - devices - hostname: - type: string - networks: - items: - properties: - name: - type: string - pod: - properties: - vmNetworkCIDR: - type: string - required: - - name - type: array - nodeSelector: - type: object - subdomain: - type: string - terminationGracePeriodSeconds: - format: int64 - type: integer - volumes: - items: - properties: - cloudInitNoCloud: - properties: - secretRef: {} - userData: - type: string - userDataBase64: - type: string - emptyDisk: - properties: - capacity: {} - required: - - capacity - ephemeral: - properties: - persistentVolumeClaim: {} - name: - type: string - persistentVolumeClaim: {} - registryDisk: - properties: - image: - type: string - imagePullSecret: - type: string - required: - - image - required: - - name - type: array - required: - - domain - required: - - selector - - template - status: - properties: - conditions: - items: - properties: - lastProbeTime: {} - lastTransitionTime: {} - message: - type: string - reason: - type: string - status: - type: string - type: - type: string - required: - - type - - status - type: array - readyReplicas: - format: int32 - type: integer - replicas: - format: int32 - type: integer - version: v1alpha2 -status: - acceptedNames: - kind: "" - plural: "" - conditions: null - ---- -apiVersion: apiextensions.k8s.io/v1beta1 -kind: CustomResourceDefinition -metadata: - creationTimestamp: null - labels: - kubevirt.io: "" - name: virtualmachineinstancepresets.kubevirt.io -spec: - group: kubevirt.io - names: - kind: VirtualMachineInstancePreset - plural: virtualmachineinstancepresets - shortNames: - - vmipreset - - vmipresets - singular: virtualmachineinstancepreset - scope: Namespaced - validation: - openAPIV3Schema: - properties: - apiVersion: - type: string - kind: - type: string - metadata: {} - spec: - properties: - domain: - properties: - clock: - properties: - timezone: - type: string - utc: - properties: - offsetSeconds: - format: int32 - type: integer - cpu: - properties: - cores: - format: int64 - type: integer - model: - type: string - devices: - properties: - disks: - items: - properties: - bootOrder: - format: int32 - type: integer - cdrom: - properties: - bus: - type: string - readonly: - type: boolean - tray: - type: string - disk: - properties: - bus: - type: string - readonly: - type: boolean - floppy: - properties: - readonly: - type: boolean - tray: - type: string - lun: - properties: - bus: - type: string - readonly: - type: boolean - name: - type: string - serial: - type: string - volumeName: - type: string - required: - - name - - volumeName - type: array - interfaces: - items: - properties: - bridge: {} - macAddress: - type: string - model: - type: string - name: - type: string - ports: - items: - properties: - name: - type: string - port: - format: int32 - type: integer - protocol: - type: string - required: - - port - type: array - slirp: {} - required: - - name - type: array - watchdog: - properties: - i6300esb: - properties: - action: - type: string - name: - type: string - required: - - name - features: - properties: - acpi: - properties: - enabled: - type: boolean - apic: - properties: - enabled: - type: boolean - endOfInterrupt: - type: boolean - hyperv: - properties: - relaxed: - properties: - enabled: - type: boolean - reset: - properties: - enabled: - type: boolean - runtime: - properties: - enabled: - type: boolean - spinlocks: - properties: - enabled: - type: boolean - spinlocks: - format: int64 - type: integer - synic: - properties: - enabled: - type: boolean - synictimer: - properties: - enabled: - type: boolean - vapic: - properties: - enabled: - type: boolean - vendorid: - properties: - enabled: - type: boolean - vendorid: - type: string - vpindex: - properties: - enabled: - type: boolean - firmware: - properties: - uuid: - type: string - machine: - properties: - type: - type: string - required: - - type - memory: - properties: - hugepages: - properties: - pageSize: - type: string - resources: - properties: - limits: - type: object - requests: - type: object - selector: {} - required: - - selector - version: v1alpha2 -status: - acceptedNames: - kind: "" - plural: "" - conditions: null - ---- -apiVersion: apiextensions.k8s.io/v1beta1 -kind: CustomResourceDefinition -metadata: - creationTimestamp: null - labels: - kubevirt.io: "" - name: virtualmachines.kubevirt.io -spec: - group: kubevirt.io - names: - kind: VirtualMachine - plural: virtualmachines - shortNames: - - vm - - vms - singular: virtualmachine - scope: Namespaced - validation: - openAPIV3Schema: - properties: - apiVersion: - type: string - kind: - type: string - metadata: {} - spec: - properties: - running: - type: boolean - template: - properties: - metadata: {} - spec: - properties: - affinity: - properties: - nodeAffinity: {} - podAffinity: {} - podAntiAffinity: {} - domain: - properties: - clock: - properties: - timezone: - type: string - utc: - properties: - offsetSeconds: - format: int32 - type: integer - cpu: - properties: - cores: - format: int64 - type: integer - model: - type: string - devices: - properties: - disks: - items: - properties: - bootOrder: - format: int32 - type: integer - cdrom: - properties: - bus: - type: string - readonly: - type: boolean - tray: - type: string - disk: - properties: - bus: - type: string - readonly: - type: boolean - floppy: - properties: - readonly: - type: boolean - tray: - type: string - lun: - properties: - bus: - type: string - readonly: - type: boolean - name: - type: string - serial: - type: string - volumeName: - type: string - required: - - name - - volumeName - type: array - interfaces: - items: - properties: - bridge: {} - macAddress: - type: string - model: - type: string - name: - type: string - ports: - items: - properties: - name: - type: string - port: - format: int32 - type: integer - protocol: - type: string - required: - - port - type: array - slirp: {} - required: - - name - type: array - watchdog: - properties: - i6300esb: - properties: - action: - type: string - name: - type: string - required: - - name - features: - properties: - acpi: - properties: - enabled: - type: boolean - apic: - properties: - enabled: - type: boolean - endOfInterrupt: - type: boolean - hyperv: - properties: - relaxed: - properties: - enabled: - type: boolean - reset: - properties: - enabled: - type: boolean - runtime: - properties: - enabled: - type: boolean - spinlocks: - properties: - enabled: - type: boolean - spinlocks: - format: int64 - type: integer - synic: - properties: - enabled: - type: boolean - synictimer: - properties: - enabled: - type: boolean - vapic: - properties: - enabled: - type: boolean - vendorid: - properties: - enabled: - type: boolean - vendorid: - type: string - vpindex: - properties: - enabled: - type: boolean - firmware: - properties: - uuid: - type: string - machine: - properties: - type: - type: string - required: - - type - memory: - properties: - hugepages: - properties: - pageSize: - type: string - resources: - properties: - limits: - type: object - requests: - type: object - required: - - devices - hostname: - type: string - networks: - items: - properties: - name: - type: string - pod: - properties: - vmNetworkCIDR: - type: string - required: - - name - type: array - nodeSelector: - type: object - subdomain: - type: string - terminationGracePeriodSeconds: - format: int64 - type: integer - volumes: - items: - properties: - cloudInitNoCloud: - properties: - secretRef: {} - userData: - type: string - userDataBase64: - type: string - emptyDisk: - properties: - capacity: {} - required: - - capacity - ephemeral: - properties: - persistentVolumeClaim: {} - name: - type: string - persistentVolumeClaim: {} - registryDisk: - properties: - image: - type: string - imagePullSecret: - type: string - required: - - image - required: - - name - type: array - required: - - domain - required: - - running - - template - status: - properties: - conditions: - items: - properties: - lastProbeTime: {} - lastTransitionTime: {} - message: - type: string - reason: - type: string - status: - type: string - type: - type: string - required: - - type - - status - type: array - created: - type: boolean - ready: - type: boolean - version: v1alpha2 -status: - acceptedNames: - kind: "" - plural: "" - conditions: null