From 16b68e3006e36fa8b364790bb5b70f73a2be6637 Mon Sep 17 00:00:00 2001 From: Travis CI User Date: Wed, 10 Jun 2020 13:30:39 +0000 Subject: [PATCH] updated common templates to version v0.11.1 --- _defaults.yml | 2 +- .../files/common-templates-v0.11.1.yaml | 10333 ++++++++++++++++ 2 files changed, 10334 insertions(+), 1 deletion(-) create mode 100644 roles/KubevirtCommonTemplatesBundle/files/common-templates-v0.11.1.yaml diff --git a/_defaults.yml b/_defaults.yml index 00b88835..13bc1f4b 100644 --- a/_defaults.yml +++ b/_defaults.yml @@ -26,4 +26,4 @@ kubevirt_cpu_nfd_plugin_tag: "{{ lookup('env','CPU_PLUGIN_TAG')| default('v0.1.1 virt_launcher_tag: "{{ lookup('env','VIRT_LAUNCHER_TAG')| default('v0.21.0', true) }}" validator_tag: "{{ lookup('env','VALIDATOR_TAG')| default('v0.6.6', true) }}" image_name_prefix: "{{ lookup('env','IMAGE_NAME_PREFIX')| default('', true) }}" -templates_version: v0.11.0 +templates_version: v0.11.1 diff --git a/roles/KubevirtCommonTemplatesBundle/files/common-templates-v0.11.1.yaml b/roles/KubevirtCommonTemplatesBundle/files/common-templates-v0.11.1.yaml new file mode 100644 index 00000000..485afc3b --- /dev/null +++ b/roles/KubevirtCommonTemplatesBundle/files/common-templates-v0.11.1.yaml @@ -0,0 +1,10333 @@ +# Version v0.11.1 +--- +# Source: dist/templates/centos6-server-large.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: centos6-server-large-v0.7.0 + annotations: + openshift.io/display-name: "CentOS 6.0+ VM" + description: >- + This template can be used to create a VM suitable for + CentOS 6 and newer. + The template assumes that a PVC is available which is providing the + necessary CentOS disk image. + tags: "hidden,kubevirt,virtualmachine,linux,centos" + + + iconClass: "icon-centos" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.sockets + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.cpu.threads + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/centos6.0: CentOS 6.0 or higher + name.os.template.kubevirt.io/centos6.1: CentOS 6.0 or higher + name.os.template.kubevirt.io/centos6.10: CentOS 6.0 or higher + name.os.template.kubevirt.io/centos6.2: CentOS 6.0 or higher + name.os.template.kubevirt.io/centos6.3: CentOS 6.0 or higher + name.os.template.kubevirt.io/centos6.4: CentOS 6.0 or higher + name.os.template.kubevirt.io/centos6.5: CentOS 6.0 or higher + name.os.template.kubevirt.io/centos6.6: CentOS 6.0 or higher + name.os.template.kubevirt.io/centos6.7: CentOS 6.0 or higher + name.os.template.kubevirt.io/centos6.8: CentOS 6.0 or higher + name.os.template.kubevirt.io/centos6.9: CentOS 6.0 or higher + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 536870912 + } + ] + + labels: + os.template.kubevirt.io/centos6.0: "true" + os.template.kubevirt.io/centos6.1: "true" + os.template.kubevirt.io/centos6.10: "true" + os.template.kubevirt.io/centos6.2: "true" + os.template.kubevirt.io/centos6.3: "true" + os.template.kubevirt.io/centos6.4: "true" + os.template.kubevirt.io/centos6.5: "true" + os.template.kubevirt.io/centos6.6: "true" + os.template.kubevirt.io/centos6.7: "true" + os.template.kubevirt.io/centos6.8: "true" + os.template.kubevirt.io/centos6.9: "true" + workload.template.kubevirt.io/server: "true" + flavor.template.kubevirt.io/large: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: centos6-server-large-v0.7.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: large + spec: + domain: + + cpu: + sockets: 2 + cores: 1 + threads: 1 + resources: + requests: + memory: 8Gi + devices: + rng: {} + networkInterfaceMultiqueue: true + disks: + - disk: + bus: sata + name: rootdisk + - disk: + bus: sata + name: cloudinitdisk + interfaces: + - masquerade: {} + name: default + terminationGracePeriodSeconds: 0 + networks: + - name: default + pod: {} + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + - cloudInitNoCloud: + userData: |- + #cloud-config + password: centos + chpasswd: { expire: False } + name: cloudinitdisk + +parameters: +- description: VM name + from: 'centos6-[a-z0-9]{16}' + generate: expression + name: NAME +- name: PVCNAME + description: Name of the PVC with the disk image + required: true + +--- +# Source: dist/templates/centos6-server-medium.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: centos6-server-medium-v0.7.0 + annotations: + openshift.io/display-name: "CentOS 6.0+ VM" + description: >- + This template can be used to create a VM suitable for + CentOS 6 and newer. + The template assumes that a PVC is available which is providing the + necessary CentOS disk image. + tags: "hidden,kubevirt,virtualmachine,linux,centos" + + + iconClass: "icon-centos" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.sockets + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.cpu.threads + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/centos6.0: CentOS 6.0 or higher + name.os.template.kubevirt.io/centos6.1: CentOS 6.0 or higher + name.os.template.kubevirt.io/centos6.10: CentOS 6.0 or higher + name.os.template.kubevirt.io/centos6.2: CentOS 6.0 or higher + name.os.template.kubevirt.io/centos6.3: CentOS 6.0 or higher + name.os.template.kubevirt.io/centos6.4: CentOS 6.0 or higher + name.os.template.kubevirt.io/centos6.5: CentOS 6.0 or higher + name.os.template.kubevirt.io/centos6.6: CentOS 6.0 or higher + name.os.template.kubevirt.io/centos6.7: CentOS 6.0 or higher + name.os.template.kubevirt.io/centos6.8: CentOS 6.0 or higher + name.os.template.kubevirt.io/centos6.9: CentOS 6.0 or higher + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 536870912 + } + ] + + labels: + os.template.kubevirt.io/centos6.0: "true" + os.template.kubevirt.io/centos6.1: "true" + os.template.kubevirt.io/centos6.10: "true" + os.template.kubevirt.io/centos6.2: "true" + os.template.kubevirt.io/centos6.3: "true" + os.template.kubevirt.io/centos6.4: "true" + os.template.kubevirt.io/centos6.5: "true" + os.template.kubevirt.io/centos6.6: "true" + os.template.kubevirt.io/centos6.7: "true" + os.template.kubevirt.io/centos6.8: "true" + os.template.kubevirt.io/centos6.9: "true" + workload.template.kubevirt.io/server: "true" + flavor.template.kubevirt.io/medium: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: centos6-server-medium-v0.7.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: medium + spec: + domain: + + cpu: + sockets: 1 + cores: 1 + threads: 1 + resources: + requests: + memory: 4Gi + devices: + rng: {} + networkInterfaceMultiqueue: true + disks: + - disk: + bus: sata + name: rootdisk + - disk: + bus: sata + name: cloudinitdisk + interfaces: + - masquerade: {} + name: default + terminationGracePeriodSeconds: 0 + networks: + - name: default + pod: {} + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + - cloudInitNoCloud: + userData: |- + #cloud-config + password: centos + chpasswd: { expire: False } + name: cloudinitdisk + +parameters: +- description: VM name + from: 'centos6-[a-z0-9]{16}' + generate: expression + name: NAME +- name: PVCNAME + description: Name of the PVC with the disk image + required: true + +--- +# Source: dist/templates/centos6-server-small.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: centos6-server-small-v0.7.0 + annotations: + openshift.io/display-name: "CentOS 6.0+ VM" + description: >- + This template can be used to create a VM suitable for + CentOS 6 and newer. + The template assumes that a PVC is available which is providing the + necessary CentOS disk image. + tags: "hidden,kubevirt,virtualmachine,linux,centos" + + + iconClass: "icon-centos" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.sockets + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.cpu.threads + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/centos6.0: CentOS 6.0 or higher + name.os.template.kubevirt.io/centos6.1: CentOS 6.0 or higher + name.os.template.kubevirt.io/centos6.10: CentOS 6.0 or higher + name.os.template.kubevirt.io/centos6.2: CentOS 6.0 or higher + name.os.template.kubevirt.io/centos6.3: CentOS 6.0 or higher + name.os.template.kubevirt.io/centos6.4: CentOS 6.0 or higher + name.os.template.kubevirt.io/centos6.5: CentOS 6.0 or higher + name.os.template.kubevirt.io/centos6.6: CentOS 6.0 or higher + name.os.template.kubevirt.io/centos6.7: CentOS 6.0 or higher + name.os.template.kubevirt.io/centos6.8: CentOS 6.0 or higher + name.os.template.kubevirt.io/centos6.9: CentOS 6.0 or higher + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 536870912 + } + ] + + labels: + os.template.kubevirt.io/centos6.0: "true" + os.template.kubevirt.io/centos6.1: "true" + os.template.kubevirt.io/centos6.10: "true" + os.template.kubevirt.io/centos6.2: "true" + os.template.kubevirt.io/centos6.3: "true" + os.template.kubevirt.io/centos6.4: "true" + os.template.kubevirt.io/centos6.5: "true" + os.template.kubevirt.io/centos6.6: "true" + os.template.kubevirt.io/centos6.7: "true" + os.template.kubevirt.io/centos6.8: "true" + os.template.kubevirt.io/centos6.9: "true" + workload.template.kubevirt.io/server: "true" + flavor.template.kubevirt.io/small: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: centos6-server-small-v0.7.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: small + spec: + domain: + + cpu: + sockets: 1 + cores: 1 + threads: 1 + resources: + requests: + memory: 2Gi + devices: + rng: {} + networkInterfaceMultiqueue: true + disks: + - disk: + bus: sata + name: rootdisk + - disk: + bus: sata + name: cloudinitdisk + interfaces: + - masquerade: {} + name: default + terminationGracePeriodSeconds: 0 + networks: + - name: default + pod: {} + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + - cloudInitNoCloud: + userData: |- + #cloud-config + password: centos + chpasswd: { expire: False } + name: cloudinitdisk + +parameters: +- description: VM name + from: 'centos6-[a-z0-9]{16}' + generate: expression + name: NAME +- name: PVCNAME + description: Name of the PVC with the disk image + required: true + +--- +# Source: dist/templates/centos6-server-tiny.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: centos6-server-tiny-v0.7.0 + annotations: + openshift.io/display-name: "CentOS 6.0+ VM" + description: >- + This template can be used to create a VM suitable for + CentOS 6 and newer. + The template assumes that a PVC is available which is providing the + necessary CentOS disk image. + tags: "hidden,kubevirt,virtualmachine,linux,centos" + + + iconClass: "icon-centos" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.sockets + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.cpu.threads + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/centos6.0: CentOS 6.0 or higher + name.os.template.kubevirt.io/centos6.1: CentOS 6.0 or higher + name.os.template.kubevirt.io/centos6.10: CentOS 6.0 or higher + name.os.template.kubevirt.io/centos6.2: CentOS 6.0 or higher + name.os.template.kubevirt.io/centos6.3: CentOS 6.0 or higher + name.os.template.kubevirt.io/centos6.4: CentOS 6.0 or higher + name.os.template.kubevirt.io/centos6.5: CentOS 6.0 or higher + name.os.template.kubevirt.io/centos6.6: CentOS 6.0 or higher + name.os.template.kubevirt.io/centos6.7: CentOS 6.0 or higher + name.os.template.kubevirt.io/centos6.8: CentOS 6.0 or higher + name.os.template.kubevirt.io/centos6.9: CentOS 6.0 or higher + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 536870912 + } + ] + + labels: + os.template.kubevirt.io/centos6.0: "true" + os.template.kubevirt.io/centos6.1: "true" + os.template.kubevirt.io/centos6.10: "true" + os.template.kubevirt.io/centos6.2: "true" + os.template.kubevirt.io/centos6.3: "true" + os.template.kubevirt.io/centos6.4: "true" + os.template.kubevirt.io/centos6.5: "true" + os.template.kubevirt.io/centos6.6: "true" + os.template.kubevirt.io/centos6.7: "true" + os.template.kubevirt.io/centos6.8: "true" + os.template.kubevirt.io/centos6.9: "true" + workload.template.kubevirt.io/server: "true" + flavor.template.kubevirt.io/tiny: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: centos6-server-tiny-v0.7.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: tiny + spec: + domain: + + cpu: + sockets: 1 + cores: 1 + threads: 1 + resources: + requests: + memory: 1Gi + devices: + rng: {} + networkInterfaceMultiqueue: true + disks: + - disk: + bus: sata + name: rootdisk + - disk: + bus: sata + name: cloudinitdisk + interfaces: + - masquerade: {} + name: default + terminationGracePeriodSeconds: 0 + networks: + - name: default + pod: {} + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + - cloudInitNoCloud: + userData: |- + #cloud-config + password: centos + chpasswd: { expire: False } + name: cloudinitdisk + +parameters: +- description: VM name + from: 'centos6-[a-z0-9]{16}' + generate: expression + name: NAME +- name: PVCNAME + description: Name of the PVC with the disk image + required: true + +--- +# Source: dist/templates/centos7-desktop-large.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: centos7-desktop-large-v0.7.0 + annotations: + openshift.io/display-name: "CentOS 7.0+ VM" + description: >- + This template can be used to create a VM suitable for + CentOS 7 and newer. + The template assumes that a PVC is available which is providing the + necessary CentOS disk image. + tags: "hidden,kubevirt,virtualmachine,linux,centos" + + iconClass: "icon-centos" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.sockets + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.cpu.threads + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/centos7.0: CentOS 7 or higher + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 1073741824 + } + ] + + labels: + os.template.kubevirt.io/centos7.0: "true" + workload.template.kubevirt.io/desktop: "true" + flavor.template.kubevirt.io/large: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: centos7-desktop-large-v0.7.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: large + spec: + domain: + + cpu: + sockets: 2 + cores: 1 + threads: 1 + resources: + requests: + memory: 8Gi + devices: + rng: {} + networkInterfaceMultiqueue: true + inputs: + - type: tablet + bus: virtio + name: tablet + disks: + - disk: + bus: virtio + name: rootdisk + - disk: + bus: virtio + name: cloudinitdisk + interfaces: + - masquerade: {} + name: default + terminationGracePeriodSeconds: 0 + networks: + - name: default + pod: {} + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + - cloudInitNoCloud: + userData: |- + #cloud-config + password: centos + chpasswd: { expire: False } + name: cloudinitdisk + +parameters: +- description: VM name + from: 'centos7-[a-z0-9]{16}' + generate: expression + name: NAME +- name: PVCNAME + description: Name of the PVC with the disk image + required: true + +--- +# Source: dist/templates/centos7-desktop-medium.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: centos7-desktop-medium-v0.7.0 + annotations: + openshift.io/display-name: "CentOS 7.0+ VM" + description: >- + This template can be used to create a VM suitable for + CentOS 7 and newer. + The template assumes that a PVC is available which is providing the + necessary CentOS disk image. + tags: "hidden,kubevirt,virtualmachine,linux,centos" + + iconClass: "icon-centos" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.sockets + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.cpu.threads + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/centos7.0: CentOS 7 or higher + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 1073741824 + } + ] + + labels: + os.template.kubevirt.io/centos7.0: "true" + workload.template.kubevirt.io/desktop: "true" + flavor.template.kubevirt.io/medium: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: centos7-desktop-medium-v0.7.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: medium + spec: + domain: + + cpu: + sockets: 1 + cores: 1 + threads: 1 + resources: + requests: + memory: 4Gi + devices: + rng: {} + networkInterfaceMultiqueue: true + inputs: + - type: tablet + bus: virtio + name: tablet + disks: + - disk: + bus: virtio + name: rootdisk + - disk: + bus: virtio + name: cloudinitdisk + interfaces: + - masquerade: {} + name: default + terminationGracePeriodSeconds: 0 + networks: + - name: default + pod: {} + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + - cloudInitNoCloud: + userData: |- + #cloud-config + password: centos + chpasswd: { expire: False } + name: cloudinitdisk + +parameters: +- description: VM name + from: 'centos7-[a-z0-9]{16}' + generate: expression + name: NAME +- name: PVCNAME + description: Name of the PVC with the disk image + required: true + +--- +# Source: dist/templates/centos7-desktop-small.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: centos7-desktop-small-v0.7.0 + annotations: + openshift.io/display-name: "CentOS 7.0+ VM" + description: >- + This template can be used to create a VM suitable for + CentOS 7 and newer. + The template assumes that a PVC is available which is providing the + necessary CentOS disk image. + tags: "hidden,kubevirt,virtualmachine,linux,centos" + + iconClass: "icon-centos" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.sockets + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.cpu.threads + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/centos7.0: CentOS 7 or higher + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 1073741824 + } + ] + + labels: + os.template.kubevirt.io/centos7.0: "true" + workload.template.kubevirt.io/desktop: "true" + flavor.template.kubevirt.io/small: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: centos7-desktop-small-v0.7.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: small + spec: + domain: + + cpu: + sockets: 1 + cores: 1 + threads: 1 + resources: + requests: + memory: 2Gi + devices: + rng: {} + networkInterfaceMultiqueue: true + inputs: + - type: tablet + bus: virtio + name: tablet + disks: + - disk: + bus: virtio + name: rootdisk + - disk: + bus: virtio + name: cloudinitdisk + interfaces: + - masquerade: {} + name: default + terminationGracePeriodSeconds: 0 + networks: + - name: default + pod: {} + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + - cloudInitNoCloud: + userData: |- + #cloud-config + password: centos + chpasswd: { expire: False } + name: cloudinitdisk + +parameters: +- description: VM name + from: 'centos7-[a-z0-9]{16}' + generate: expression + name: NAME +- name: PVCNAME + description: Name of the PVC with the disk image + required: true + +--- +# Source: dist/templates/centos7-desktop-tiny.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: centos7-desktop-tiny-v0.7.0 + annotations: + openshift.io/display-name: "CentOS 7.0+ VM" + description: >- + This template can be used to create a VM suitable for + CentOS 7 and newer. + The template assumes that a PVC is available which is providing the + necessary CentOS disk image. + tags: "hidden,kubevirt,virtualmachine,linux,centos" + + iconClass: "icon-centos" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.sockets + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.cpu.threads + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/centos7.0: CentOS 7 or higher + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 1073741824 + } + ] + + labels: + os.template.kubevirt.io/centos7.0: "true" + workload.template.kubevirt.io/desktop: "true" + flavor.template.kubevirt.io/tiny: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: centos7-desktop-tiny-v0.7.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: tiny + spec: + domain: + + cpu: + sockets: 1 + cores: 1 + threads: 1 + resources: + requests: + memory: 1Gi + devices: + rng: {} + networkInterfaceMultiqueue: true + inputs: + - type: tablet + bus: virtio + name: tablet + disks: + - disk: + bus: virtio + name: rootdisk + - disk: + bus: virtio + name: cloudinitdisk + interfaces: + - masquerade: {} + name: default + terminationGracePeriodSeconds: 0 + networks: + - name: default + pod: {} + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + - cloudInitNoCloud: + userData: |- + #cloud-config + password: centos + chpasswd: { expire: False } + name: cloudinitdisk + +parameters: +- description: VM name + from: 'centos7-[a-z0-9]{16}' + generate: expression + name: NAME +- name: PVCNAME + description: Name of the PVC with the disk image + required: true + +--- +# Source: dist/templates/centos7-server-large.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: centos7-server-large-v0.7.0 + annotations: + openshift.io/display-name: "CentOS 7.0+ VM" + description: >- + This template can be used to create a VM suitable for + CentOS 7 and newer. + The template assumes that a PVC is available which is providing the + necessary CentOS disk image. + tags: "hidden,kubevirt,virtualmachine,linux,centos" + + iconClass: "icon-centos" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.sockets + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.cpu.threads + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/centos7.0: CentOS 7 or higher + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 1073741824 + } + ] + + labels: + os.template.kubevirt.io/centos7.0: "true" + workload.template.kubevirt.io/server: "true" + flavor.template.kubevirt.io/large: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: centos7-server-large-v0.7.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: large + spec: + domain: + + cpu: + sockets: 2 + cores: 1 + threads: 1 + resources: + requests: + memory: 8Gi + devices: + rng: {} + networkInterfaceMultiqueue: true + disks: + - disk: + bus: virtio + name: rootdisk + - disk: + bus: virtio + name: cloudinitdisk + interfaces: + - masquerade: {} + name: default + terminationGracePeriodSeconds: 0 + networks: + - name: default + pod: {} + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + - cloudInitNoCloud: + userData: |- + #cloud-config + password: centos + chpasswd: { expire: False } + name: cloudinitdisk + +parameters: +- description: VM name + from: 'centos7-[a-z0-9]{16}' + generate: expression + name: NAME +- name: PVCNAME + description: Name of the PVC with the disk image + required: true + +--- +# Source: dist/templates/centos7-server-medium.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: centos7-server-medium-v0.7.0 + annotations: + openshift.io/display-name: "CentOS 7.0+ VM" + description: >- + This template can be used to create a VM suitable for + CentOS 7 and newer. + The template assumes that a PVC is available which is providing the + necessary CentOS disk image. + tags: "hidden,kubevirt,virtualmachine,linux,centos" + + iconClass: "icon-centos" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.sockets + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.cpu.threads + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/centos7.0: CentOS 7 or higher + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 1073741824 + } + ] + + labels: + os.template.kubevirt.io/centos7.0: "true" + workload.template.kubevirt.io/server: "true" + flavor.template.kubevirt.io/medium: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: centos7-server-medium-v0.7.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: medium + spec: + domain: + + cpu: + sockets: 1 + cores: 1 + threads: 1 + resources: + requests: + memory: 4Gi + devices: + rng: {} + networkInterfaceMultiqueue: true + disks: + - disk: + bus: virtio + name: rootdisk + - disk: + bus: virtio + name: cloudinitdisk + interfaces: + - masquerade: {} + name: default + terminationGracePeriodSeconds: 0 + networks: + - name: default + pod: {} + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + - cloudInitNoCloud: + userData: |- + #cloud-config + password: centos + chpasswd: { expire: False } + name: cloudinitdisk + +parameters: +- description: VM name + from: 'centos7-[a-z0-9]{16}' + generate: expression + name: NAME +- name: PVCNAME + description: Name of the PVC with the disk image + required: true + +--- +# Source: dist/templates/centos7-server-small.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: centos7-server-small-v0.7.0 + annotations: + openshift.io/display-name: "CentOS 7.0+ VM" + description: >- + This template can be used to create a VM suitable for + CentOS 7 and newer. + The template assumes that a PVC is available which is providing the + necessary CentOS disk image. + tags: "hidden,kubevirt,virtualmachine,linux,centos" + + iconClass: "icon-centos" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.sockets + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.cpu.threads + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/centos7.0: CentOS 7 or higher + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 1073741824 + } + ] + + labels: + os.template.kubevirt.io/centos7.0: "true" + workload.template.kubevirt.io/server: "true" + flavor.template.kubevirt.io/small: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: centos7-server-small-v0.7.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: small + spec: + domain: + + cpu: + sockets: 1 + cores: 1 + threads: 1 + resources: + requests: + memory: 2Gi + devices: + rng: {} + networkInterfaceMultiqueue: true + disks: + - disk: + bus: virtio + name: rootdisk + - disk: + bus: virtio + name: cloudinitdisk + interfaces: + - masquerade: {} + name: default + terminationGracePeriodSeconds: 0 + networks: + - name: default + pod: {} + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + - cloudInitNoCloud: + userData: |- + #cloud-config + password: centos + chpasswd: { expire: False } + name: cloudinitdisk + +parameters: +- description: VM name + from: 'centos7-[a-z0-9]{16}' + generate: expression + name: NAME +- name: PVCNAME + description: Name of the PVC with the disk image + required: true + +--- +# Source: dist/templates/centos7-server-tiny.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: centos7-server-tiny-v0.7.0 + annotations: + openshift.io/display-name: "CentOS 7.0+ VM" + description: >- + This template can be used to create a VM suitable for + CentOS 7 and newer. + The template assumes that a PVC is available which is providing the + necessary CentOS disk image. + tags: "hidden,kubevirt,virtualmachine,linux,centos" + + iconClass: "icon-centos" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.sockets + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.cpu.threads + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/centos7.0: CentOS 7 or higher + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 1073741824 + } + ] + + labels: + os.template.kubevirt.io/centos7.0: "true" + workload.template.kubevirt.io/server: "true" + flavor.template.kubevirt.io/tiny: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: centos7-server-tiny-v0.7.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: tiny + spec: + domain: + + cpu: + sockets: 1 + cores: 1 + threads: 1 + resources: + requests: + memory: 1Gi + devices: + rng: {} + networkInterfaceMultiqueue: true + disks: + - disk: + bus: virtio + name: rootdisk + - disk: + bus: virtio + name: cloudinitdisk + interfaces: + - masquerade: {} + name: default + terminationGracePeriodSeconds: 0 + networks: + - name: default + pod: {} + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + - cloudInitNoCloud: + userData: |- + #cloud-config + password: centos + chpasswd: { expire: False } + name: cloudinitdisk + +parameters: +- description: VM name + from: 'centos7-[a-z0-9]{16}' + generate: expression + name: NAME +- name: PVCNAME + description: Name of the PVC with the disk image + required: true + +--- +# Source: dist/templates/centos8-desktop-large.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: centos8-desktop-large-v0.11.0 + annotations: + openshift.io/display-name: "CentOS 8.0+ VM" + description: >- + This template can be used to create a VM suitable for + CentOS 8 and newer. + The template assumes that a PVC is available which is providing the + necessary CentOS disk image. + tags: "hidden,kubevirt,virtualmachine,linux,centos" + + iconClass: "icon-centos" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.sockets + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.cpu.threads + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/centos8: CentOS 8 or higher + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 1610612736 + } + ] + + labels: + os.template.kubevirt.io/centos8: "true" + workload.template.kubevirt.io/desktop: "true" + flavor.template.kubevirt.io/large: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: centos8-desktop-large-v0.11.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: large + spec: + domain: + + cpu: + sockets: 2 + cores: 1 + threads: 1 + resources: + requests: + memory: 8Gi + devices: + rng: {} + networkInterfaceMultiqueue: true + inputs: + - type: tablet + bus: virtio + name: tablet + disks: + - disk: + bus: virtio + name: rootdisk + - disk: + bus: virtio + name: cloudinitdisk + interfaces: + - masquerade: {} + name: default + terminationGracePeriodSeconds: 0 + networks: + - name: default + pod: {} + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + - cloudInitNoCloud: + userData: |- + #cloud-config + password: centos + chpasswd: { expire: False } + name: cloudinitdisk + +parameters: +- description: VM name + from: 'centos8-[a-z0-9]{16}' + generate: expression + name: NAME +- name: PVCNAME + description: Name of the PVC with the disk image + required: true + +--- +# Source: dist/templates/centos8-desktop-medium.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: centos8-desktop-medium-v0.11.0 + annotations: + openshift.io/display-name: "CentOS 8.0+ VM" + description: >- + This template can be used to create a VM suitable for + CentOS 8 and newer. + The template assumes that a PVC is available which is providing the + necessary CentOS disk image. + tags: "hidden,kubevirt,virtualmachine,linux,centos" + + iconClass: "icon-centos" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.sockets + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.cpu.threads + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/centos8: CentOS 8 or higher + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 1610612736 + } + ] + + labels: + os.template.kubevirt.io/centos8: "true" + workload.template.kubevirt.io/desktop: "true" + flavor.template.kubevirt.io/medium: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: centos8-desktop-medium-v0.11.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: medium + spec: + domain: + + cpu: + sockets: 1 + cores: 1 + threads: 1 + resources: + requests: + memory: 4Gi + devices: + rng: {} + networkInterfaceMultiqueue: true + inputs: + - type: tablet + bus: virtio + name: tablet + disks: + - disk: + bus: virtio + name: rootdisk + - disk: + bus: virtio + name: cloudinitdisk + interfaces: + - masquerade: {} + name: default + terminationGracePeriodSeconds: 0 + networks: + - name: default + pod: {} + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + - cloudInitNoCloud: + userData: |- + #cloud-config + password: centos + chpasswd: { expire: False } + name: cloudinitdisk + +parameters: +- description: VM name + from: 'centos8-[a-z0-9]{16}' + generate: expression + name: NAME +- name: PVCNAME + description: Name of the PVC with the disk image + required: true + +--- +# Source: dist/templates/centos8-desktop-small.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: centos8-desktop-small-v0.11.0 + annotations: + openshift.io/display-name: "CentOS 8.0+ VM" + description: >- + This template can be used to create a VM suitable for + CentOS 8 and newer. + The template assumes that a PVC is available which is providing the + necessary CentOS disk image. + tags: "hidden,kubevirt,virtualmachine,linux,centos" + + iconClass: "icon-centos" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.sockets + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.cpu.threads + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/centos8: CentOS 8 or higher + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 1610612736 + } + ] + + labels: + os.template.kubevirt.io/centos8: "true" + workload.template.kubevirt.io/desktop: "true" + flavor.template.kubevirt.io/small: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: centos8-desktop-small-v0.11.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: small + spec: + domain: + + cpu: + sockets: 1 + cores: 1 + threads: 1 + resources: + requests: + memory: 2Gi + devices: + rng: {} + networkInterfaceMultiqueue: true + inputs: + - type: tablet + bus: virtio + name: tablet + disks: + - disk: + bus: virtio + name: rootdisk + - disk: + bus: virtio + name: cloudinitdisk + interfaces: + - masquerade: {} + name: default + terminationGracePeriodSeconds: 0 + networks: + - name: default + pod: {} + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + - cloudInitNoCloud: + userData: |- + #cloud-config + password: centos + chpasswd: { expire: False } + name: cloudinitdisk + +parameters: +- description: VM name + from: 'centos8-[a-z0-9]{16}' + generate: expression + name: NAME +- name: PVCNAME + description: Name of the PVC with the disk image + required: true + +--- +# Source: dist/templates/centos8-desktop-tiny.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: centos8-desktop-tiny-v0.11.0 + annotations: + openshift.io/display-name: "CentOS 8.0+ VM" + description: >- + This template can be used to create a VM suitable for + CentOS 8 and newer. + The template assumes that a PVC is available which is providing the + necessary CentOS disk image. + tags: "hidden,kubevirt,virtualmachine,linux,centos" + + iconClass: "icon-centos" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.sockets + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.cpu.threads + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/centos8: CentOS 8 or higher + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 1610612736 + } + ] + + labels: + os.template.kubevirt.io/centos8: "true" + workload.template.kubevirt.io/desktop: "true" + flavor.template.kubevirt.io/tiny: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: centos8-desktop-tiny-v0.11.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: tiny + spec: + domain: + + cpu: + sockets: 1 + cores: 1 + threads: 1 + resources: + requests: + memory: 1.5Gi + devices: + rng: {} + networkInterfaceMultiqueue: true + inputs: + - type: tablet + bus: virtio + name: tablet + disks: + - disk: + bus: virtio + name: rootdisk + - disk: + bus: virtio + name: cloudinitdisk + interfaces: + - masquerade: {} + name: default + terminationGracePeriodSeconds: 0 + networks: + - name: default + pod: {} + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + - cloudInitNoCloud: + userData: |- + #cloud-config + password: centos + chpasswd: { expire: False } + name: cloudinitdisk + +parameters: +- description: VM name + from: 'centos8-[a-z0-9]{16}' + generate: expression + name: NAME +- name: PVCNAME + description: Name of the PVC with the disk image + required: true + +--- +# Source: dist/templates/centos8-server-large.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: centos8-server-large-v0.11.0 + annotations: + openshift.io/display-name: "CentOS 8.0+ VM" + description: >- + This template can be used to create a VM suitable for + CentOS 8 and newer. + The template assumes that a PVC is available which is providing the + necessary CentOS disk image. + tags: "hidden,kubevirt,virtualmachine,linux,centos" + + iconClass: "icon-centos" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.sockets + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.cpu.threads + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/centos8: CentOS 8 or higher + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 1610612736 + } + ] + + labels: + os.template.kubevirt.io/centos8: "true" + workload.template.kubevirt.io/server: "true" + flavor.template.kubevirt.io/large: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: centos8-server-large-v0.11.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: large + spec: + domain: + + cpu: + sockets: 2 + cores: 1 + threads: 1 + resources: + requests: + memory: 8Gi + devices: + rng: {} + networkInterfaceMultiqueue: true + disks: + - disk: + bus: virtio + name: rootdisk + - disk: + bus: virtio + name: cloudinitdisk + interfaces: + - masquerade: {} + name: default + terminationGracePeriodSeconds: 0 + networks: + - name: default + pod: {} + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + - cloudInitNoCloud: + userData: |- + #cloud-config + password: centos + chpasswd: { expire: False } + name: cloudinitdisk + +parameters: +- description: VM name + from: 'centos8-[a-z0-9]{16}' + generate: expression + name: NAME +- name: PVCNAME + description: Name of the PVC with the disk image + required: true + +--- +# Source: dist/templates/centos8-server-medium.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: centos8-server-medium-v0.11.0 + annotations: + openshift.io/display-name: "CentOS 8.0+ VM" + description: >- + This template can be used to create a VM suitable for + CentOS 8 and newer. + The template assumes that a PVC is available which is providing the + necessary CentOS disk image. + tags: "hidden,kubevirt,virtualmachine,linux,centos" + + iconClass: "icon-centos" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.sockets + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.cpu.threads + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/centos8: CentOS 8 or higher + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 1610612736 + } + ] + + labels: + os.template.kubevirt.io/centos8: "true" + workload.template.kubevirt.io/server: "true" + flavor.template.kubevirt.io/medium: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: centos8-server-medium-v0.11.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: medium + spec: + domain: + + cpu: + sockets: 1 + cores: 1 + threads: 1 + resources: + requests: + memory: 4Gi + devices: + rng: {} + networkInterfaceMultiqueue: true + disks: + - disk: + bus: virtio + name: rootdisk + - disk: + bus: virtio + name: cloudinitdisk + interfaces: + - masquerade: {} + name: default + terminationGracePeriodSeconds: 0 + networks: + - name: default + pod: {} + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + - cloudInitNoCloud: + userData: |- + #cloud-config + password: centos + chpasswd: { expire: False } + name: cloudinitdisk + +parameters: +- description: VM name + from: 'centos8-[a-z0-9]{16}' + generate: expression + name: NAME +- name: PVCNAME + description: Name of the PVC with the disk image + required: true + +--- +# Source: dist/templates/centos8-server-small.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: centos8-server-small-v0.11.0 + annotations: + openshift.io/display-name: "CentOS 8.0+ VM" + description: >- + This template can be used to create a VM suitable for + CentOS 8 and newer. + The template assumes that a PVC is available which is providing the + necessary CentOS disk image. + tags: "hidden,kubevirt,virtualmachine,linux,centos" + + iconClass: "icon-centos" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.sockets + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.cpu.threads + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/centos8: CentOS 8 or higher + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 1610612736 + } + ] + + labels: + os.template.kubevirt.io/centos8: "true" + workload.template.kubevirt.io/server: "true" + flavor.template.kubevirt.io/small: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: centos8-server-small-v0.11.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: small + spec: + domain: + + cpu: + sockets: 1 + cores: 1 + threads: 1 + resources: + requests: + memory: 2Gi + devices: + rng: {} + networkInterfaceMultiqueue: true + disks: + - disk: + bus: virtio + name: rootdisk + - disk: + bus: virtio + name: cloudinitdisk + interfaces: + - masquerade: {} + name: default + terminationGracePeriodSeconds: 0 + networks: + - name: default + pod: {} + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + - cloudInitNoCloud: + userData: |- + #cloud-config + password: centos + chpasswd: { expire: False } + name: cloudinitdisk + +parameters: +- description: VM name + from: 'centos8-[a-z0-9]{16}' + generate: expression + name: NAME +- name: PVCNAME + description: Name of the PVC with the disk image + required: true + +--- +# Source: dist/templates/centos8-server-tiny.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: centos8-server-tiny-v0.11.0 + annotations: + openshift.io/display-name: "CentOS 8.0+ VM" + description: >- + This template can be used to create a VM suitable for + CentOS 8 and newer. + The template assumes that a PVC is available which is providing the + necessary CentOS disk image. + tags: "hidden,kubevirt,virtualmachine,linux,centos" + + iconClass: "icon-centos" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.sockets + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.cpu.threads + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/centos8: CentOS 8 or higher + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 1610612736 + } + ] + + labels: + os.template.kubevirt.io/centos8: "true" + workload.template.kubevirt.io/server: "true" + flavor.template.kubevirt.io/tiny: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: centos8-server-tiny-v0.11.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: tiny + spec: + domain: + + cpu: + sockets: 1 + cores: 1 + threads: 1 + resources: + requests: + memory: 1.5Gi + devices: + rng: {} + networkInterfaceMultiqueue: true + disks: + - disk: + bus: virtio + name: rootdisk + - disk: + bus: virtio + name: cloudinitdisk + interfaces: + - masquerade: {} + name: default + terminationGracePeriodSeconds: 0 + networks: + - name: default + pod: {} + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + - cloudInitNoCloud: + userData: |- + #cloud-config + password: centos + chpasswd: { expire: False } + name: cloudinitdisk + +parameters: +- description: VM name + from: 'centos8-[a-z0-9]{16}' + generate: expression + name: NAME +- name: PVCNAME + description: Name of the PVC with the disk image + required: true + +--- +# Source: dist/templates/fedora-desktop-large.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: fedora-desktop-large-v0.7.0 + annotations: + openshift.io/display-name: "Fedora 23+ VM" + description: >- + This template can be used to create a VM suitable for + Fedora 23 and newer. + The template assumes that a PVC is available which is providing the + necessary Fedora disk image. + + Recommended disk image (needs to be converted to raw) + https://download.fedoraproject.org/pub/fedora/linux/releases/30/Cloud/x86_64/images/Fedora-Cloud-Base-30-1.2.x86_64.qcow2 + tags: "hidden,kubevirt,virtualmachine,fedora,rhel" + + iconClass: "icon-fedora" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.sockets + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.cpu.threads + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/fedora31: Fedora 31 or higher + name.os.template.kubevirt.io/fedora32: Fedora 31 or higher + name.os.template.kubevirt.io/silverblue30: Fedora 31 or higher + name.os.template.kubevirt.io/silverblue31: Fedora 31 or higher + name.os.template.kubevirt.io/silverblue32: Fedora 31 or higher + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 1073741824 + } + ] + + labels: + os.template.kubevirt.io/fedora31: "true" + os.template.kubevirt.io/fedora32: "true" + os.template.kubevirt.io/silverblue30: "true" + os.template.kubevirt.io/silverblue31: "true" + os.template.kubevirt.io/silverblue32: "true" + workload.template.kubevirt.io/desktop: "true" + flavor.template.kubevirt.io/large: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: fedora-desktop-large-v0.7.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: large + spec: + domain: + + cpu: + sockets: 2 + cores: 1 + threads: 1 + resources: + requests: + memory: 8Gi + devices: + rng: {} + networkInterfaceMultiqueue: true + inputs: + - type: tablet + bus: virtio + name: tablet + disks: + - disk: + bus: virtio + name: rootdisk + - disk: + bus: virtio + name: cloudinitdisk + interfaces: + - masquerade: {} + name: default + terminationGracePeriodSeconds: 0 + networks: + - name: default + pod: {} + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + - cloudInitNoCloud: + userData: |- + #cloud-config + password: fedora + chpasswd: { expire: False } + name: cloudinitdisk + +parameters: +- description: VM name + from: 'fedora-[a-z0-9]{16}' + generate: expression + name: NAME +- name: PVCNAME + description: Name of the PVC with the disk image + required: true + +--- +# Source: dist/templates/fedora-desktop-medium.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: fedora-desktop-medium-v0.7.0 + annotations: + openshift.io/display-name: "Fedora 23+ VM" + description: >- + This template can be used to create a VM suitable for + Fedora 23 and newer. + The template assumes that a PVC is available which is providing the + necessary Fedora disk image. + + Recommended disk image (needs to be converted to raw) + https://download.fedoraproject.org/pub/fedora/linux/releases/30/Cloud/x86_64/images/Fedora-Cloud-Base-30-1.2.x86_64.qcow2 + tags: "hidden,kubevirt,virtualmachine,fedora,rhel" + + iconClass: "icon-fedora" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.sockets + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.cpu.threads + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/fedora31: Fedora 31 or higher + name.os.template.kubevirt.io/fedora32: Fedora 31 or higher + name.os.template.kubevirt.io/silverblue30: Fedora 31 or higher + name.os.template.kubevirt.io/silverblue31: Fedora 31 or higher + name.os.template.kubevirt.io/silverblue32: Fedora 31 or higher + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 1073741824 + } + ] + + labels: + os.template.kubevirt.io/fedora31: "true" + os.template.kubevirt.io/fedora32: "true" + os.template.kubevirt.io/silverblue30: "true" + os.template.kubevirt.io/silverblue31: "true" + os.template.kubevirt.io/silverblue32: "true" + workload.template.kubevirt.io/desktop: "true" + flavor.template.kubevirt.io/medium: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: fedora-desktop-medium-v0.7.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: medium + spec: + domain: + + cpu: + sockets: 1 + cores: 1 + threads: 1 + resources: + requests: + memory: 4Gi + devices: + rng: {} + networkInterfaceMultiqueue: true + inputs: + - type: tablet + bus: virtio + name: tablet + disks: + - disk: + bus: virtio + name: rootdisk + - disk: + bus: virtio + name: cloudinitdisk + interfaces: + - masquerade: {} + name: default + terminationGracePeriodSeconds: 0 + networks: + - name: default + pod: {} + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + - cloudInitNoCloud: + userData: |- + #cloud-config + password: fedora + chpasswd: { expire: False } + name: cloudinitdisk + +parameters: +- description: VM name + from: 'fedora-[a-z0-9]{16}' + generate: expression + name: NAME +- name: PVCNAME + description: Name of the PVC with the disk image + required: true + +--- +# Source: dist/templates/fedora-desktop-small.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: fedora-desktop-small-v0.7.0 + annotations: + openshift.io/display-name: "Fedora 23+ VM" + description: >- + This template can be used to create a VM suitable for + Fedora 23 and newer. + The template assumes that a PVC is available which is providing the + necessary Fedora disk image. + + Recommended disk image (needs to be converted to raw) + https://download.fedoraproject.org/pub/fedora/linux/releases/30/Cloud/x86_64/images/Fedora-Cloud-Base-30-1.2.x86_64.qcow2 + tags: "hidden,kubevirt,virtualmachine,fedora,rhel" + + iconClass: "icon-fedora" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.sockets + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.cpu.threads + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/fedora31: Fedora 31 or higher + name.os.template.kubevirt.io/fedora32: Fedora 31 or higher + name.os.template.kubevirt.io/silverblue30: Fedora 31 or higher + name.os.template.kubevirt.io/silverblue31: Fedora 31 or higher + name.os.template.kubevirt.io/silverblue32: Fedora 31 or higher + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 1073741824 + } + ] + + labels: + os.template.kubevirt.io/fedora31: "true" + os.template.kubevirt.io/fedora32: "true" + os.template.kubevirt.io/silverblue30: "true" + os.template.kubevirt.io/silverblue31: "true" + os.template.kubevirt.io/silverblue32: "true" + workload.template.kubevirt.io/desktop: "true" + flavor.template.kubevirt.io/small: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: fedora-desktop-small-v0.7.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: small + spec: + domain: + + cpu: + sockets: 1 + cores: 1 + threads: 1 + resources: + requests: + memory: 2Gi + devices: + rng: {} + networkInterfaceMultiqueue: true + inputs: + - type: tablet + bus: virtio + name: tablet + disks: + - disk: + bus: virtio + name: rootdisk + - disk: + bus: virtio + name: cloudinitdisk + interfaces: + - masquerade: {} + name: default + terminationGracePeriodSeconds: 0 + networks: + - name: default + pod: {} + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + - cloudInitNoCloud: + userData: |- + #cloud-config + password: fedora + chpasswd: { expire: False } + name: cloudinitdisk + +parameters: +- description: VM name + from: 'fedora-[a-z0-9]{16}' + generate: expression + name: NAME +- name: PVCNAME + description: Name of the PVC with the disk image + required: true + +--- +# Source: dist/templates/fedora-desktop-tiny.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: fedora-desktop-tiny-v0.7.0 + annotations: + openshift.io/display-name: "Fedora 23+ VM" + description: >- + This template can be used to create a VM suitable for + Fedora 23 and newer. + The template assumes that a PVC is available which is providing the + necessary Fedora disk image. + + Recommended disk image (needs to be converted to raw) + https://download.fedoraproject.org/pub/fedora/linux/releases/30/Cloud/x86_64/images/Fedora-Cloud-Base-30-1.2.x86_64.qcow2 + tags: "hidden,kubevirt,virtualmachine,fedora,rhel" + + iconClass: "icon-fedora" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.sockets + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.cpu.threads + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/fedora31: Fedora 31 or higher + name.os.template.kubevirt.io/fedora32: Fedora 31 or higher + name.os.template.kubevirt.io/silverblue30: Fedora 31 or higher + name.os.template.kubevirt.io/silverblue31: Fedora 31 or higher + name.os.template.kubevirt.io/silverblue32: Fedora 31 or higher + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 1073741824 + } + ] + + labels: + os.template.kubevirt.io/fedora31: "true" + os.template.kubevirt.io/fedora32: "true" + os.template.kubevirt.io/silverblue30: "true" + os.template.kubevirt.io/silverblue31: "true" + os.template.kubevirt.io/silverblue32: "true" + workload.template.kubevirt.io/desktop: "true" + flavor.template.kubevirt.io/tiny: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: fedora-desktop-tiny-v0.7.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: tiny + spec: + domain: + + cpu: + sockets: 1 + cores: 1 + threads: 1 + resources: + requests: + memory: 1Gi + devices: + rng: {} + networkInterfaceMultiqueue: true + inputs: + - type: tablet + bus: virtio + name: tablet + disks: + - disk: + bus: virtio + name: rootdisk + - disk: + bus: virtio + name: cloudinitdisk + interfaces: + - masquerade: {} + name: default + terminationGracePeriodSeconds: 0 + networks: + - name: default + pod: {} + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + - cloudInitNoCloud: + userData: |- + #cloud-config + password: fedora + chpasswd: { expire: False } + name: cloudinitdisk + +parameters: +- description: VM name + from: 'fedora-[a-z0-9]{16}' + generate: expression + name: NAME +- name: PVCNAME + description: Name of the PVC with the disk image + required: true + +--- +# Source: dist/templates/fedora-highperformance-large.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: fedora-highperformance-large-v0.7.0 + annotations: + openshift.io/display-name: "Fedora 23+ VM" + description: >- + This template can be used to create a VM suitable for + Fedora 23 and newer. + The template assumes that a PVC is available which is providing the + necessary Fedora disk image. + + Recommended disk image (needs to be converted to raw) + https://download.fedoraproject.org/pub/fedora/linux/releases/30/Cloud/x86_64/images/Fedora-Cloud-Base-30-1.2.x86_64.qcow2 + tags: "hidden,kubevirt,virtualmachine,fedora,rhel" + + iconClass: "icon-fedora" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.sockets + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.cpu.threads + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/fedora31: Fedora 31 or higher + name.os.template.kubevirt.io/fedora32: Fedora 31 or higher + name.os.template.kubevirt.io/silverblue30: Fedora 31 or higher + name.os.template.kubevirt.io/silverblue31: Fedora 31 or higher + name.os.template.kubevirt.io/silverblue32: Fedora 31 or higher + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 1073741824 + } + ] + + labels: + os.template.kubevirt.io/fedora31: "true" + os.template.kubevirt.io/fedora32: "true" + os.template.kubevirt.io/silverblue30: "true" + os.template.kubevirt.io/silverblue31: "true" + os.template.kubevirt.io/silverblue32: "true" + workload.template.kubevirt.io/highperformance: "true" + flavor.template.kubevirt.io/large: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: fedora-highperformance-large-v0.7.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: large + spec: + domain: + ioThreadsPolicy: shared + + cpu: + sockets: 2 + cores: 1 + threads: 1 + resources: + requests: + memory: 8Gi + devices: + rng: {} + networkInterfaceMultiqueue: true + disks: + - disk: + bus: virtio + name: rootdisk + - disk: + bus: virtio + name: cloudinitdisk + interfaces: + - masquerade: {} + name: default + terminationGracePeriodSeconds: 0 + networks: + - name: default + pod: {} + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + - cloudInitNoCloud: + userData: |- + #cloud-config + password: fedora + chpasswd: { expire: False } + name: cloudinitdisk + +parameters: +- description: VM name + from: 'fedora-[a-z0-9]{16}' + generate: expression + name: NAME +- name: PVCNAME + description: Name of the PVC with the disk image + required: true + +--- +# Source: dist/templates/fedora-highperformance-medium.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: fedora-highperformance-medium-v0.7.0 + annotations: + openshift.io/display-name: "Fedora 23+ VM" + description: >- + This template can be used to create a VM suitable for + Fedora 23 and newer. + The template assumes that a PVC is available which is providing the + necessary Fedora disk image. + + Recommended disk image (needs to be converted to raw) + https://download.fedoraproject.org/pub/fedora/linux/releases/30/Cloud/x86_64/images/Fedora-Cloud-Base-30-1.2.x86_64.qcow2 + tags: "hidden,kubevirt,virtualmachine,fedora,rhel" + + iconClass: "icon-fedora" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.sockets + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.cpu.threads + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/fedora31: Fedora 31 or higher + name.os.template.kubevirt.io/fedora32: Fedora 31 or higher + name.os.template.kubevirt.io/silverblue30: Fedora 31 or higher + name.os.template.kubevirt.io/silverblue31: Fedora 31 or higher + name.os.template.kubevirt.io/silverblue32: Fedora 31 or higher + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 1073741824 + } + ] + + labels: + os.template.kubevirt.io/fedora31: "true" + os.template.kubevirt.io/fedora32: "true" + os.template.kubevirt.io/silverblue30: "true" + os.template.kubevirt.io/silverblue31: "true" + os.template.kubevirt.io/silverblue32: "true" + workload.template.kubevirt.io/highperformance: "true" + flavor.template.kubevirt.io/medium: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: fedora-highperformance-medium-v0.7.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: medium + spec: + domain: + ioThreadsPolicy: shared + + cpu: + sockets: 1 + cores: 1 + threads: 1 + resources: + requests: + memory: 4Gi + devices: + rng: {} + networkInterfaceMultiqueue: true + disks: + - disk: + bus: virtio + name: rootdisk + - disk: + bus: virtio + name: cloudinitdisk + interfaces: + - masquerade: {} + name: default + terminationGracePeriodSeconds: 0 + networks: + - name: default + pod: {} + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + - cloudInitNoCloud: + userData: |- + #cloud-config + password: fedora + chpasswd: { expire: False } + name: cloudinitdisk + +parameters: +- description: VM name + from: 'fedora-[a-z0-9]{16}' + generate: expression + name: NAME +- name: PVCNAME + description: Name of the PVC with the disk image + required: true + +--- +# Source: dist/templates/fedora-highperformance-small.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: fedora-highperformance-small-v0.7.0 + annotations: + openshift.io/display-name: "Fedora 23+ VM" + description: >- + This template can be used to create a VM suitable for + Fedora 23 and newer. + The template assumes that a PVC is available which is providing the + necessary Fedora disk image. + + Recommended disk image (needs to be converted to raw) + https://download.fedoraproject.org/pub/fedora/linux/releases/30/Cloud/x86_64/images/Fedora-Cloud-Base-30-1.2.x86_64.qcow2 + tags: "hidden,kubevirt,virtualmachine,fedora,rhel" + + iconClass: "icon-fedora" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.sockets + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.cpu.threads + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/fedora31: Fedora 31 or higher + name.os.template.kubevirt.io/fedora32: Fedora 31 or higher + name.os.template.kubevirt.io/silverblue30: Fedora 31 or higher + name.os.template.kubevirt.io/silverblue31: Fedora 31 or higher + name.os.template.kubevirt.io/silverblue32: Fedora 31 or higher + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 1073741824 + } + ] + + labels: + os.template.kubevirt.io/fedora31: "true" + os.template.kubevirt.io/fedora32: "true" + os.template.kubevirt.io/silverblue30: "true" + os.template.kubevirt.io/silverblue31: "true" + os.template.kubevirt.io/silverblue32: "true" + workload.template.kubevirt.io/highperformance: "true" + flavor.template.kubevirt.io/small: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: fedora-highperformance-small-v0.7.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: small + spec: + domain: + ioThreadsPolicy: shared + + cpu: + sockets: 1 + cores: 1 + threads: 1 + resources: + requests: + memory: 2Gi + devices: + rng: {} + networkInterfaceMultiqueue: true + disks: + - disk: + bus: virtio + name: rootdisk + - disk: + bus: virtio + name: cloudinitdisk + interfaces: + - masquerade: {} + name: default + terminationGracePeriodSeconds: 0 + networks: + - name: default + pod: {} + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + - cloudInitNoCloud: + userData: |- + #cloud-config + password: fedora + chpasswd: { expire: False } + name: cloudinitdisk + +parameters: +- description: VM name + from: 'fedora-[a-z0-9]{16}' + generate: expression + name: NAME +- name: PVCNAME + description: Name of the PVC with the disk image + required: true + +--- +# Source: dist/templates/fedora-highperformance-tiny.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: fedora-highperformance-tiny-v0.7.0 + annotations: + openshift.io/display-name: "Fedora 23+ VM" + description: >- + This template can be used to create a VM suitable for + Fedora 23 and newer. + The template assumes that a PVC is available which is providing the + necessary Fedora disk image. + + Recommended disk image (needs to be converted to raw) + https://download.fedoraproject.org/pub/fedora/linux/releases/30/Cloud/x86_64/images/Fedora-Cloud-Base-30-1.2.x86_64.qcow2 + tags: "hidden,kubevirt,virtualmachine,fedora,rhel" + + iconClass: "icon-fedora" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.sockets + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.cpu.threads + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/fedora31: Fedora 31 or higher + name.os.template.kubevirt.io/fedora32: Fedora 31 or higher + name.os.template.kubevirt.io/silverblue30: Fedora 31 or higher + name.os.template.kubevirt.io/silverblue31: Fedora 31 or higher + name.os.template.kubevirt.io/silverblue32: Fedora 31 or higher + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 1073741824 + } + ] + + labels: + os.template.kubevirt.io/fedora31: "true" + os.template.kubevirt.io/fedora32: "true" + os.template.kubevirt.io/silverblue30: "true" + os.template.kubevirt.io/silverblue31: "true" + os.template.kubevirt.io/silverblue32: "true" + workload.template.kubevirt.io/highperformance: "true" + flavor.template.kubevirt.io/tiny: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: fedora-highperformance-tiny-v0.7.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: tiny + spec: + domain: + ioThreadsPolicy: shared + + cpu: + sockets: 1 + cores: 1 + threads: 1 + resources: + requests: + memory: 1Gi + devices: + rng: {} + networkInterfaceMultiqueue: true + disks: + - disk: + bus: virtio + name: rootdisk + - disk: + bus: virtio + name: cloudinitdisk + interfaces: + - masquerade: {} + name: default + terminationGracePeriodSeconds: 0 + networks: + - name: default + pod: {} + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + - cloudInitNoCloud: + userData: |- + #cloud-config + password: fedora + chpasswd: { expire: False } + name: cloudinitdisk + +parameters: +- description: VM name + from: 'fedora-[a-z0-9]{16}' + generate: expression + name: NAME +- name: PVCNAME + description: Name of the PVC with the disk image + required: true + +--- +# Source: dist/templates/fedora-server-large.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: fedora-server-large-v0.7.0 + annotations: + openshift.io/display-name: "Fedora 23+ VM" + description: >- + This template can be used to create a VM suitable for + Fedora 23 and newer. + The template assumes that a PVC is available which is providing the + necessary Fedora disk image. + + Recommended disk image (needs to be converted to raw) + https://download.fedoraproject.org/pub/fedora/linux/releases/30/Cloud/x86_64/images/Fedora-Cloud-Base-30-1.2.x86_64.qcow2 + tags: "hidden,kubevirt,virtualmachine,fedora,rhel" + + iconClass: "icon-fedora" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.sockets + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.cpu.threads + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/fedora31: Fedora 31 or higher + name.os.template.kubevirt.io/fedora32: Fedora 31 or higher + name.os.template.kubevirt.io/silverblue30: Fedora 31 or higher + name.os.template.kubevirt.io/silverblue31: Fedora 31 or higher + name.os.template.kubevirt.io/silverblue32: Fedora 31 or higher + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 1073741824 + } + ] + + labels: + os.template.kubevirt.io/fedora31: "true" + os.template.kubevirt.io/fedora32: "true" + os.template.kubevirt.io/silverblue30: "true" + os.template.kubevirt.io/silverblue31: "true" + os.template.kubevirt.io/silverblue32: "true" + workload.template.kubevirt.io/server: "true" + flavor.template.kubevirt.io/large: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: fedora-server-large-v0.7.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: large + spec: + domain: + + cpu: + sockets: 2 + cores: 1 + threads: 1 + resources: + requests: + memory: 8Gi + devices: + rng: {} + networkInterfaceMultiqueue: true + disks: + - disk: + bus: virtio + name: rootdisk + - disk: + bus: virtio + name: cloudinitdisk + interfaces: + - masquerade: {} + name: default + terminationGracePeriodSeconds: 0 + networks: + - name: default + pod: {} + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + - cloudInitNoCloud: + userData: |- + #cloud-config + password: fedora + chpasswd: { expire: False } + name: cloudinitdisk + +parameters: +- description: VM name + from: 'fedora-[a-z0-9]{16}' + generate: expression + name: NAME +- name: PVCNAME + description: Name of the PVC with the disk image + required: true + +--- +# Source: dist/templates/fedora-server-medium.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: fedora-server-medium-v0.7.0 + annotations: + openshift.io/display-name: "Fedora 23+ VM" + description: >- + This template can be used to create a VM suitable for + Fedora 23 and newer. + The template assumes that a PVC is available which is providing the + necessary Fedora disk image. + + Recommended disk image (needs to be converted to raw) + https://download.fedoraproject.org/pub/fedora/linux/releases/30/Cloud/x86_64/images/Fedora-Cloud-Base-30-1.2.x86_64.qcow2 + tags: "hidden,kubevirt,virtualmachine,fedora,rhel" + + iconClass: "icon-fedora" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.sockets + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.cpu.threads + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/fedora31: Fedora 31 or higher + name.os.template.kubevirt.io/fedora32: Fedora 31 or higher + name.os.template.kubevirt.io/silverblue30: Fedora 31 or higher + name.os.template.kubevirt.io/silverblue31: Fedora 31 or higher + name.os.template.kubevirt.io/silverblue32: Fedora 31 or higher + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 1073741824 + } + ] + + labels: + os.template.kubevirt.io/fedora31: "true" + os.template.kubevirt.io/fedora32: "true" + os.template.kubevirt.io/silverblue30: "true" + os.template.kubevirt.io/silverblue31: "true" + os.template.kubevirt.io/silverblue32: "true" + workload.template.kubevirt.io/server: "true" + flavor.template.kubevirt.io/medium: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: fedora-server-medium-v0.7.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: medium + spec: + domain: + + cpu: + sockets: 1 + cores: 1 + threads: 1 + resources: + requests: + memory: 4Gi + devices: + rng: {} + networkInterfaceMultiqueue: true + disks: + - disk: + bus: virtio + name: rootdisk + - disk: + bus: virtio + name: cloudinitdisk + interfaces: + - masquerade: {} + name: default + terminationGracePeriodSeconds: 0 + networks: + - name: default + pod: {} + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + - cloudInitNoCloud: + userData: |- + #cloud-config + password: fedora + chpasswd: { expire: False } + name: cloudinitdisk + +parameters: +- description: VM name + from: 'fedora-[a-z0-9]{16}' + generate: expression + name: NAME +- name: PVCNAME + description: Name of the PVC with the disk image + required: true + +--- +# Source: dist/templates/fedora-server-small.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: fedora-server-small-v0.7.0 + annotations: + openshift.io/display-name: "Fedora 23+ VM" + description: >- + This template can be used to create a VM suitable for + Fedora 23 and newer. + The template assumes that a PVC is available which is providing the + necessary Fedora disk image. + + Recommended disk image (needs to be converted to raw) + https://download.fedoraproject.org/pub/fedora/linux/releases/30/Cloud/x86_64/images/Fedora-Cloud-Base-30-1.2.x86_64.qcow2 + tags: "hidden,kubevirt,virtualmachine,fedora,rhel" + + iconClass: "icon-fedora" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.sockets + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.cpu.threads + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/fedora31: Fedora 31 or higher + name.os.template.kubevirt.io/fedora32: Fedora 31 or higher + name.os.template.kubevirt.io/silverblue30: Fedora 31 or higher + name.os.template.kubevirt.io/silverblue31: Fedora 31 or higher + name.os.template.kubevirt.io/silverblue32: Fedora 31 or higher + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 1073741824 + } + ] + + labels: + os.template.kubevirt.io/fedora31: "true" + os.template.kubevirt.io/fedora32: "true" + os.template.kubevirt.io/silverblue30: "true" + os.template.kubevirt.io/silverblue31: "true" + os.template.kubevirt.io/silverblue32: "true" + workload.template.kubevirt.io/server: "true" + flavor.template.kubevirt.io/small: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: fedora-server-small-v0.7.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: small + spec: + domain: + + cpu: + sockets: 1 + cores: 1 + threads: 1 + resources: + requests: + memory: 2Gi + devices: + rng: {} + networkInterfaceMultiqueue: true + disks: + - disk: + bus: virtio + name: rootdisk + - disk: + bus: virtio + name: cloudinitdisk + interfaces: + - masquerade: {} + name: default + terminationGracePeriodSeconds: 0 + networks: + - name: default + pod: {} + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + - cloudInitNoCloud: + userData: |- + #cloud-config + password: fedora + chpasswd: { expire: False } + name: cloudinitdisk + +parameters: +- description: VM name + from: 'fedora-[a-z0-9]{16}' + generate: expression + name: NAME +- name: PVCNAME + description: Name of the PVC with the disk image + required: true + +--- +# Source: dist/templates/fedora-server-tiny.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: fedora-server-tiny-v0.7.0 + annotations: + openshift.io/display-name: "Fedora 23+ VM" + description: >- + This template can be used to create a VM suitable for + Fedora 23 and newer. + The template assumes that a PVC is available which is providing the + necessary Fedora disk image. + + Recommended disk image (needs to be converted to raw) + https://download.fedoraproject.org/pub/fedora/linux/releases/30/Cloud/x86_64/images/Fedora-Cloud-Base-30-1.2.x86_64.qcow2 + tags: "hidden,kubevirt,virtualmachine,fedora,rhel" + + iconClass: "icon-fedora" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.sockets + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.cpu.threads + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/fedora31: Fedora 31 or higher + name.os.template.kubevirt.io/fedora32: Fedora 31 or higher + name.os.template.kubevirt.io/silverblue30: Fedora 31 or higher + name.os.template.kubevirt.io/silverblue31: Fedora 31 or higher + name.os.template.kubevirt.io/silverblue32: Fedora 31 or higher + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 1073741824 + } + ] + + labels: + os.template.kubevirt.io/fedora31: "true" + os.template.kubevirt.io/fedora32: "true" + os.template.kubevirt.io/silverblue30: "true" + os.template.kubevirt.io/silverblue31: "true" + os.template.kubevirt.io/silverblue32: "true" + workload.template.kubevirt.io/server: "true" + flavor.template.kubevirt.io/tiny: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: fedora-server-tiny-v0.7.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: tiny + spec: + domain: + + cpu: + sockets: 1 + cores: 1 + threads: 1 + resources: + requests: + memory: 1Gi + devices: + rng: {} + networkInterfaceMultiqueue: true + disks: + - disk: + bus: virtio + name: rootdisk + - disk: + bus: virtio + name: cloudinitdisk + interfaces: + - masquerade: {} + name: default + terminationGracePeriodSeconds: 0 + networks: + - name: default + pod: {} + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + - cloudInitNoCloud: + userData: |- + #cloud-config + password: fedora + chpasswd: { expire: False } + name: cloudinitdisk + +parameters: +- description: VM name + from: 'fedora-[a-z0-9]{16}' + generate: expression + name: NAME +- name: PVCNAME + description: Name of the PVC with the disk image + required: true + +--- +# Source: dist/templates/opensuse-server-large.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: opensuse-server-large-v0.7.0 + annotations: + openshift.io/display-name: "OpenSUSE Leap 15.0 VM" + description: >- + This template can be used to create a VM suitable for + OpenSUSE Leap 15.0. + The template assumes that a PVC is available which is providing the + necessary OpenSUSE disk image. + + Recommended disk image (needs to be converted to raw) + https://download.opensuse.org/repositories/Cloud:/Images:/Leap_15.0/images/ + tags: "hidden,kubevirt,virtualmachine,linux,opensuse" + + iconClass: "icon-opensuse" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.sockets + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.cpu.threads + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/opensuse15.0: openSUSE Leap 15.0 or higher + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 1073741824 + } + ] + + labels: + os.template.kubevirt.io/opensuse15.0: "true" + workload.template.kubevirt.io/server: "true" + flavor.template.kubevirt.io/large: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: opensuse-server-large-v0.7.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: large + spec: + domain: + + cpu: + sockets: 2 + cores: 1 + threads: 1 + resources: + requests: + memory: 8Gi + devices: + rng: {} + networkInterfaceMultiqueue: true + disks: + - disk: + bus: virtio + name: rootdisk + - disk: + bus: virtio + name: cloudinitdisk + interfaces: + - masquerade: {} + name: default + terminationGracePeriodSeconds: 0 + networks: + - name: default + pod: {} + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + - cloudInitNoCloud: + userData: |- + #cloud-config + password: opensuse + chpasswd: { expire: False } + name: cloudinitdisk + +parameters: +- description: VM name + from: 'opensuse-[a-z0-9]{16}' + generate: expression + name: NAME +- name: PVCNAME + description: Name of the PVC with the disk image + required: true +--- +# Source: dist/templates/opensuse-server-medium.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: opensuse-server-medium-v0.7.0 + annotations: + openshift.io/display-name: "OpenSUSE Leap 15.0 VM" + description: >- + This template can be used to create a VM suitable for + OpenSUSE Leap 15.0. + The template assumes that a PVC is available which is providing the + necessary OpenSUSE disk image. + + Recommended disk image (needs to be converted to raw) + https://download.opensuse.org/repositories/Cloud:/Images:/Leap_15.0/images/ + tags: "hidden,kubevirt,virtualmachine,linux,opensuse" + + iconClass: "icon-opensuse" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.sockets + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.cpu.threads + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/opensuse15.0: openSUSE Leap 15.0 or higher + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 1073741824 + } + ] + + labels: + os.template.kubevirt.io/opensuse15.0: "true" + workload.template.kubevirt.io/server: "true" + flavor.template.kubevirt.io/medium: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: opensuse-server-medium-v0.7.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: medium + spec: + domain: + + cpu: + sockets: 1 + cores: 1 + threads: 1 + resources: + requests: + memory: 4Gi + devices: + rng: {} + networkInterfaceMultiqueue: true + disks: + - disk: + bus: virtio + name: rootdisk + - disk: + bus: virtio + name: cloudinitdisk + interfaces: + - masquerade: {} + name: default + terminationGracePeriodSeconds: 0 + networks: + - name: default + pod: {} + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + - cloudInitNoCloud: + userData: |- + #cloud-config + password: opensuse + chpasswd: { expire: False } + name: cloudinitdisk + +parameters: +- description: VM name + from: 'opensuse-[a-z0-9]{16}' + generate: expression + name: NAME +- name: PVCNAME + description: Name of the PVC with the disk image + required: true +--- +# Source: dist/templates/opensuse-server-small.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: opensuse-server-small-v0.7.0 + annotations: + openshift.io/display-name: "OpenSUSE Leap 15.0 VM" + description: >- + This template can be used to create a VM suitable for + OpenSUSE Leap 15.0. + The template assumes that a PVC is available which is providing the + necessary OpenSUSE disk image. + + Recommended disk image (needs to be converted to raw) + https://download.opensuse.org/repositories/Cloud:/Images:/Leap_15.0/images/ + tags: "hidden,kubevirt,virtualmachine,linux,opensuse" + + iconClass: "icon-opensuse" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.sockets + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.cpu.threads + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/opensuse15.0: openSUSE Leap 15.0 or higher + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 1073741824 + } + ] + + labels: + os.template.kubevirt.io/opensuse15.0: "true" + workload.template.kubevirt.io/server: "true" + flavor.template.kubevirt.io/small: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: opensuse-server-small-v0.7.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: small + spec: + domain: + + cpu: + sockets: 1 + cores: 1 + threads: 1 + resources: + requests: + memory: 2Gi + devices: + rng: {} + networkInterfaceMultiqueue: true + disks: + - disk: + bus: virtio + name: rootdisk + - disk: + bus: virtio + name: cloudinitdisk + interfaces: + - masquerade: {} + name: default + terminationGracePeriodSeconds: 0 + networks: + - name: default + pod: {} + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + - cloudInitNoCloud: + userData: |- + #cloud-config + password: opensuse + chpasswd: { expire: False } + name: cloudinitdisk + +parameters: +- description: VM name + from: 'opensuse-[a-z0-9]{16}' + generate: expression + name: NAME +- name: PVCNAME + description: Name of the PVC with the disk image + required: true +--- +# Source: dist/templates/opensuse-server-tiny.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: opensuse-server-tiny-v0.7.0 + annotations: + openshift.io/display-name: "OpenSUSE Leap 15.0 VM" + description: >- + This template can be used to create a VM suitable for + OpenSUSE Leap 15.0. + The template assumes that a PVC is available which is providing the + necessary OpenSUSE disk image. + + Recommended disk image (needs to be converted to raw) + https://download.opensuse.org/repositories/Cloud:/Images:/Leap_15.0/images/ + tags: "hidden,kubevirt,virtualmachine,linux,opensuse" + + iconClass: "icon-opensuse" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.sockets + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.cpu.threads + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/opensuse15.0: openSUSE Leap 15.0 or higher + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 1073741824 + } + ] + + labels: + os.template.kubevirt.io/opensuse15.0: "true" + workload.template.kubevirt.io/server: "true" + flavor.template.kubevirt.io/tiny: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: opensuse-server-tiny-v0.7.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: tiny + spec: + domain: + + cpu: + sockets: 1 + cores: 1 + threads: 1 + resources: + requests: + memory: 1Gi + devices: + rng: {} + networkInterfaceMultiqueue: true + disks: + - disk: + bus: virtio + name: rootdisk + - disk: + bus: virtio + name: cloudinitdisk + interfaces: + - masquerade: {} + name: default + terminationGracePeriodSeconds: 0 + networks: + - name: default + pod: {} + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + - cloudInitNoCloud: + userData: |- + #cloud-config + password: opensuse + chpasswd: { expire: False } + name: cloudinitdisk + +parameters: +- description: VM name + from: 'opensuse-[a-z0-9]{16}' + generate: expression + name: NAME +- name: PVCNAME + description: Name of the PVC with the disk image + required: true +--- +# Source: dist/templates/rhel6-desktop-large.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: rhel6-desktop-large-v0.7.0 + annotations: + openshift.io/display-name: "Red Hat Enterprise Linux 6.0+ VM" + description: >- + This template can be used to create a VM suitable for + Red Hat Enterprise Linux 6 and newer. + The template assumes that a PVC is available which is providing the + necessary RHEL disk image. + tags: "hidden,kubevirt,virtualmachine,linux,rhel" + + + iconClass: "icon-rhel" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.sockets + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.cpu.threads + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/rhel6.0: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.1: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.10: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.2: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.3: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.4: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.5: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.6: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.7: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.8: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.9: Red Hat Enterprise Linux 6.0 or higher + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 536870912 + } + ] + + labels: + os.template.kubevirt.io/rhel6.0: "true" + os.template.kubevirt.io/rhel6.1: "true" + os.template.kubevirt.io/rhel6.10: "true" + os.template.kubevirt.io/rhel6.2: "true" + os.template.kubevirt.io/rhel6.3: "true" + os.template.kubevirt.io/rhel6.4: "true" + os.template.kubevirt.io/rhel6.5: "true" + os.template.kubevirt.io/rhel6.6: "true" + os.template.kubevirt.io/rhel6.7: "true" + os.template.kubevirt.io/rhel6.8: "true" + os.template.kubevirt.io/rhel6.9: "true" + workload.template.kubevirt.io/desktop: "true" + flavor.template.kubevirt.io/large: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: rhel6-desktop-large-v0.7.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: large + spec: + domain: + + cpu: + sockets: 2 + cores: 1 + threads: 1 + resources: + requests: + memory: 8Gi + devices: + rng: {} + networkInterfaceMultiqueue: true + inputs: + - type: tablet + bus: virtio + name: tablet + disks: + - disk: + bus: sata + name: rootdisk + - disk: + bus: sata + name: cloudinitdisk + interfaces: + - masquerade: {} + name: default + terminationGracePeriodSeconds: 0 + networks: + - name: default + pod: {} + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + - cloudInitNoCloud: + userData: |- + #cloud-config + password: redhat + chpasswd: { expire: False } + name: cloudinitdisk + +parameters: +- description: VM name + from: 'rhel6-[a-z0-9]{16}' + generate: expression + name: NAME +- name: PVCNAME + description: Name of the PVC with the disk image + required: true + +--- +# Source: dist/templates/rhel6-desktop-medium.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: rhel6-desktop-medium-v0.7.0 + annotations: + openshift.io/display-name: "Red Hat Enterprise Linux 6.0+ VM" + description: >- + This template can be used to create a VM suitable for + Red Hat Enterprise Linux 6 and newer. + The template assumes that a PVC is available which is providing the + necessary RHEL disk image. + tags: "hidden,kubevirt,virtualmachine,linux,rhel" + + + iconClass: "icon-rhel" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.sockets + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.cpu.threads + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/rhel6.0: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.1: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.10: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.2: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.3: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.4: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.5: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.6: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.7: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.8: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.9: Red Hat Enterprise Linux 6.0 or higher + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 536870912 + } + ] + + labels: + os.template.kubevirt.io/rhel6.0: "true" + os.template.kubevirt.io/rhel6.1: "true" + os.template.kubevirt.io/rhel6.10: "true" + os.template.kubevirt.io/rhel6.2: "true" + os.template.kubevirt.io/rhel6.3: "true" + os.template.kubevirt.io/rhel6.4: "true" + os.template.kubevirt.io/rhel6.5: "true" + os.template.kubevirt.io/rhel6.6: "true" + os.template.kubevirt.io/rhel6.7: "true" + os.template.kubevirt.io/rhel6.8: "true" + os.template.kubevirt.io/rhel6.9: "true" + workload.template.kubevirt.io/desktop: "true" + flavor.template.kubevirt.io/medium: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: rhel6-desktop-medium-v0.7.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: medium + spec: + domain: + + cpu: + sockets: 1 + cores: 1 + threads: 1 + resources: + requests: + memory: 4Gi + devices: + rng: {} + networkInterfaceMultiqueue: true + inputs: + - type: tablet + bus: virtio + name: tablet + disks: + - disk: + bus: sata + name: rootdisk + - disk: + bus: sata + name: cloudinitdisk + interfaces: + - masquerade: {} + name: default + terminationGracePeriodSeconds: 0 + networks: + - name: default + pod: {} + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + - cloudInitNoCloud: + userData: |- + #cloud-config + password: redhat + chpasswd: { expire: False } + name: cloudinitdisk + +parameters: +- description: VM name + from: 'rhel6-[a-z0-9]{16}' + generate: expression + name: NAME +- name: PVCNAME + description: Name of the PVC with the disk image + required: true + +--- +# Source: dist/templates/rhel6-desktop-small.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: rhel6-desktop-small-v0.7.0 + annotations: + openshift.io/display-name: "Red Hat Enterprise Linux 6.0+ VM" + description: >- + This template can be used to create a VM suitable for + Red Hat Enterprise Linux 6 and newer. + The template assumes that a PVC is available which is providing the + necessary RHEL disk image. + tags: "hidden,kubevirt,virtualmachine,linux,rhel" + + + iconClass: "icon-rhel" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.sockets + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.cpu.threads + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/rhel6.0: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.1: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.10: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.2: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.3: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.4: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.5: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.6: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.7: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.8: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.9: Red Hat Enterprise Linux 6.0 or higher + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 536870912 + } + ] + + labels: + os.template.kubevirt.io/rhel6.0: "true" + os.template.kubevirt.io/rhel6.1: "true" + os.template.kubevirt.io/rhel6.10: "true" + os.template.kubevirt.io/rhel6.2: "true" + os.template.kubevirt.io/rhel6.3: "true" + os.template.kubevirt.io/rhel6.4: "true" + os.template.kubevirt.io/rhel6.5: "true" + os.template.kubevirt.io/rhel6.6: "true" + os.template.kubevirt.io/rhel6.7: "true" + os.template.kubevirt.io/rhel6.8: "true" + os.template.kubevirt.io/rhel6.9: "true" + workload.template.kubevirt.io/desktop: "true" + flavor.template.kubevirt.io/small: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: rhel6-desktop-small-v0.7.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: small + spec: + domain: + + cpu: + sockets: 1 + cores: 1 + threads: 1 + resources: + requests: + memory: 2Gi + devices: + rng: {} + networkInterfaceMultiqueue: true + inputs: + - type: tablet + bus: virtio + name: tablet + disks: + - disk: + bus: sata + name: rootdisk + - disk: + bus: sata + name: cloudinitdisk + interfaces: + - masquerade: {} + name: default + terminationGracePeriodSeconds: 0 + networks: + - name: default + pod: {} + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + - cloudInitNoCloud: + userData: |- + #cloud-config + password: redhat + chpasswd: { expire: False } + name: cloudinitdisk + +parameters: +- description: VM name + from: 'rhel6-[a-z0-9]{16}' + generate: expression + name: NAME +- name: PVCNAME + description: Name of the PVC with the disk image + required: true + +--- +# Source: dist/templates/rhel6-desktop-tiny.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: rhel6-desktop-tiny-v0.7.0 + annotations: + openshift.io/display-name: "Red Hat Enterprise Linux 6.0+ VM" + description: >- + This template can be used to create a VM suitable for + Red Hat Enterprise Linux 6 and newer. + The template assumes that a PVC is available which is providing the + necessary RHEL disk image. + tags: "hidden,kubevirt,virtualmachine,linux,rhel" + + + iconClass: "icon-rhel" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.sockets + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.cpu.threads + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/rhel6.0: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.1: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.10: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.2: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.3: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.4: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.5: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.6: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.7: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.8: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.9: Red Hat Enterprise Linux 6.0 or higher + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 536870912 + } + ] + + labels: + os.template.kubevirt.io/rhel6.0: "true" + os.template.kubevirt.io/rhel6.1: "true" + os.template.kubevirt.io/rhel6.10: "true" + os.template.kubevirt.io/rhel6.2: "true" + os.template.kubevirt.io/rhel6.3: "true" + os.template.kubevirt.io/rhel6.4: "true" + os.template.kubevirt.io/rhel6.5: "true" + os.template.kubevirt.io/rhel6.6: "true" + os.template.kubevirt.io/rhel6.7: "true" + os.template.kubevirt.io/rhel6.8: "true" + os.template.kubevirt.io/rhel6.9: "true" + workload.template.kubevirt.io/desktop: "true" + flavor.template.kubevirt.io/tiny: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: rhel6-desktop-tiny-v0.7.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: tiny + spec: + domain: + + cpu: + sockets: 1 + cores: 1 + threads: 1 + resources: + requests: + memory: 1Gi + devices: + rng: {} + networkInterfaceMultiqueue: true + inputs: + - type: tablet + bus: virtio + name: tablet + disks: + - disk: + bus: sata + name: rootdisk + - disk: + bus: sata + name: cloudinitdisk + interfaces: + - masquerade: {} + name: default + terminationGracePeriodSeconds: 0 + networks: + - name: default + pod: {} + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + - cloudInitNoCloud: + userData: |- + #cloud-config + password: redhat + chpasswd: { expire: False } + name: cloudinitdisk + +parameters: +- description: VM name + from: 'rhel6-[a-z0-9]{16}' + generate: expression + name: NAME +- name: PVCNAME + description: Name of the PVC with the disk image + required: true + +--- +# Source: dist/templates/rhel6-server-large.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: rhel6-server-large-v0.7.0 + annotations: + openshift.io/display-name: "Red Hat Enterprise Linux 6.0+ VM" + description: >- + This template can be used to create a VM suitable for + Red Hat Enterprise Linux 6 and newer. + The template assumes that a PVC is available which is providing the + necessary RHEL disk image. + tags: "hidden,kubevirt,virtualmachine,linux,rhel" + + + iconClass: "icon-rhel" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.sockets + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.cpu.threads + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/rhel6.0: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.1: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.10: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.2: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.3: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.4: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.5: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.6: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.7: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.8: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.9: Red Hat Enterprise Linux 6.0 or higher + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 536870912 + } + ] + + labels: + os.template.kubevirt.io/rhel6.0: "true" + os.template.kubevirt.io/rhel6.1: "true" + os.template.kubevirt.io/rhel6.10: "true" + os.template.kubevirt.io/rhel6.2: "true" + os.template.kubevirt.io/rhel6.3: "true" + os.template.kubevirt.io/rhel6.4: "true" + os.template.kubevirt.io/rhel6.5: "true" + os.template.kubevirt.io/rhel6.6: "true" + os.template.kubevirt.io/rhel6.7: "true" + os.template.kubevirt.io/rhel6.8: "true" + os.template.kubevirt.io/rhel6.9: "true" + workload.template.kubevirt.io/server: "true" + flavor.template.kubevirt.io/large: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: rhel6-server-large-v0.7.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: large + spec: + domain: + + cpu: + sockets: 2 + cores: 1 + threads: 1 + resources: + requests: + memory: 8Gi + devices: + rng: {} + networkInterfaceMultiqueue: true + disks: + - disk: + bus: sata + name: rootdisk + - disk: + bus: sata + name: cloudinitdisk + interfaces: + - masquerade: {} + name: default + terminationGracePeriodSeconds: 0 + networks: + - name: default + pod: {} + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + - cloudInitNoCloud: + userData: |- + #cloud-config + password: redhat + chpasswd: { expire: False } + name: cloudinitdisk + +parameters: +- description: VM name + from: 'rhel6-[a-z0-9]{16}' + generate: expression + name: NAME +- name: PVCNAME + description: Name of the PVC with the disk image + required: true + +--- +# Source: dist/templates/rhel6-server-medium.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: rhel6-server-medium-v0.7.0 + annotations: + openshift.io/display-name: "Red Hat Enterprise Linux 6.0+ VM" + description: >- + This template can be used to create a VM suitable for + Red Hat Enterprise Linux 6 and newer. + The template assumes that a PVC is available which is providing the + necessary RHEL disk image. + tags: "hidden,kubevirt,virtualmachine,linux,rhel" + + + iconClass: "icon-rhel" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.sockets + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.cpu.threads + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/rhel6.0: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.1: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.10: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.2: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.3: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.4: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.5: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.6: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.7: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.8: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.9: Red Hat Enterprise Linux 6.0 or higher + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 536870912 + } + ] + + labels: + os.template.kubevirt.io/rhel6.0: "true" + os.template.kubevirt.io/rhel6.1: "true" + os.template.kubevirt.io/rhel6.10: "true" + os.template.kubevirt.io/rhel6.2: "true" + os.template.kubevirt.io/rhel6.3: "true" + os.template.kubevirt.io/rhel6.4: "true" + os.template.kubevirt.io/rhel6.5: "true" + os.template.kubevirt.io/rhel6.6: "true" + os.template.kubevirt.io/rhel6.7: "true" + os.template.kubevirt.io/rhel6.8: "true" + os.template.kubevirt.io/rhel6.9: "true" + workload.template.kubevirt.io/server: "true" + flavor.template.kubevirt.io/medium: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: rhel6-server-medium-v0.7.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: medium + spec: + domain: + + cpu: + sockets: 1 + cores: 1 + threads: 1 + resources: + requests: + memory: 4Gi + devices: + rng: {} + networkInterfaceMultiqueue: true + disks: + - disk: + bus: sata + name: rootdisk + - disk: + bus: sata + name: cloudinitdisk + interfaces: + - masquerade: {} + name: default + terminationGracePeriodSeconds: 0 + networks: + - name: default + pod: {} + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + - cloudInitNoCloud: + userData: |- + #cloud-config + password: redhat + chpasswd: { expire: False } + name: cloudinitdisk + +parameters: +- description: VM name + from: 'rhel6-[a-z0-9]{16}' + generate: expression + name: NAME +- name: PVCNAME + description: Name of the PVC with the disk image + required: true + +--- +# Source: dist/templates/rhel6-server-small.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: rhel6-server-small-v0.7.0 + annotations: + openshift.io/display-name: "Red Hat Enterprise Linux 6.0+ VM" + description: >- + This template can be used to create a VM suitable for + Red Hat Enterprise Linux 6 and newer. + The template assumes that a PVC is available which is providing the + necessary RHEL disk image. + tags: "hidden,kubevirt,virtualmachine,linux,rhel" + + + iconClass: "icon-rhel" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.sockets + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.cpu.threads + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/rhel6.0: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.1: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.10: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.2: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.3: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.4: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.5: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.6: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.7: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.8: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.9: Red Hat Enterprise Linux 6.0 or higher + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 536870912 + } + ] + + labels: + os.template.kubevirt.io/rhel6.0: "true" + os.template.kubevirt.io/rhel6.1: "true" + os.template.kubevirt.io/rhel6.10: "true" + os.template.kubevirt.io/rhel6.2: "true" + os.template.kubevirt.io/rhel6.3: "true" + os.template.kubevirt.io/rhel6.4: "true" + os.template.kubevirt.io/rhel6.5: "true" + os.template.kubevirt.io/rhel6.6: "true" + os.template.kubevirt.io/rhel6.7: "true" + os.template.kubevirt.io/rhel6.8: "true" + os.template.kubevirt.io/rhel6.9: "true" + workload.template.kubevirt.io/server: "true" + flavor.template.kubevirt.io/small: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: rhel6-server-small-v0.7.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: small + spec: + domain: + + cpu: + sockets: 1 + cores: 1 + threads: 1 + resources: + requests: + memory: 2Gi + devices: + rng: {} + networkInterfaceMultiqueue: true + disks: + - disk: + bus: sata + name: rootdisk + - disk: + bus: sata + name: cloudinitdisk + interfaces: + - masquerade: {} + name: default + terminationGracePeriodSeconds: 0 + networks: + - name: default + pod: {} + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + - cloudInitNoCloud: + userData: |- + #cloud-config + password: redhat + chpasswd: { expire: False } + name: cloudinitdisk + +parameters: +- description: VM name + from: 'rhel6-[a-z0-9]{16}' + generate: expression + name: NAME +- name: PVCNAME + description: Name of the PVC with the disk image + required: true + +--- +# Source: dist/templates/rhel6-server-tiny.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: rhel6-server-tiny-v0.7.0 + annotations: + openshift.io/display-name: "Red Hat Enterprise Linux 6.0+ VM" + description: >- + This template can be used to create a VM suitable for + Red Hat Enterprise Linux 6 and newer. + The template assumes that a PVC is available which is providing the + necessary RHEL disk image. + tags: "hidden,kubevirt,virtualmachine,linux,rhel" + + + iconClass: "icon-rhel" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.sockets + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.cpu.threads + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/rhel6.0: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.1: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.10: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.2: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.3: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.4: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.5: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.6: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.7: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.8: Red Hat Enterprise Linux 6.0 or higher + name.os.template.kubevirt.io/rhel6.9: Red Hat Enterprise Linux 6.0 or higher + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 536870912 + } + ] + + labels: + os.template.kubevirt.io/rhel6.0: "true" + os.template.kubevirt.io/rhel6.1: "true" + os.template.kubevirt.io/rhel6.10: "true" + os.template.kubevirt.io/rhel6.2: "true" + os.template.kubevirt.io/rhel6.3: "true" + os.template.kubevirt.io/rhel6.4: "true" + os.template.kubevirt.io/rhel6.5: "true" + os.template.kubevirt.io/rhel6.6: "true" + os.template.kubevirt.io/rhel6.7: "true" + os.template.kubevirt.io/rhel6.8: "true" + os.template.kubevirt.io/rhel6.9: "true" + workload.template.kubevirt.io/server: "true" + flavor.template.kubevirt.io/tiny: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: rhel6-server-tiny-v0.7.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: tiny + spec: + domain: + + cpu: + sockets: 1 + cores: 1 + threads: 1 + resources: + requests: + memory: 1Gi + devices: + rng: {} + networkInterfaceMultiqueue: true + disks: + - disk: + bus: sata + name: rootdisk + - disk: + bus: sata + name: cloudinitdisk + interfaces: + - masquerade: {} + name: default + terminationGracePeriodSeconds: 0 + networks: + - name: default + pod: {} + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + - cloudInitNoCloud: + userData: |- + #cloud-config + password: redhat + chpasswd: { expire: False } + name: cloudinitdisk + +parameters: +- description: VM name + from: 'rhel6-[a-z0-9]{16}' + generate: expression + name: NAME +- name: PVCNAME + description: Name of the PVC with the disk image + required: true + +--- +# Source: dist/templates/rhel7-desktop-large.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: rhel7-desktop-large-v0.7.0 + annotations: + openshift.io/display-name: "Red Hat Enterprise Linux 7.0+ VM" + description: >- + This template can be used to create a VM suitable for + Red Hat Enterprise Linux 7 and newer. + The template assumes that a PVC is available which is providing the + necessary RHEL disk image. + tags: "hidden,kubevirt,virtualmachine,linux,rhel" + + iconClass: "icon-rhel" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.sockets + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.cpu.threads + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/rhel7.0: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.1: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.2: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.3: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.4: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.5: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.6: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.7: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.8: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.9: Red Hat Enterprise Linux 7.0 or higher + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 1073741824 + } + ] + + labels: + os.template.kubevirt.io/rhel7.0: "true" + os.template.kubevirt.io/rhel7.1: "true" + os.template.kubevirt.io/rhel7.2: "true" + os.template.kubevirt.io/rhel7.3: "true" + os.template.kubevirt.io/rhel7.4: "true" + os.template.kubevirt.io/rhel7.5: "true" + os.template.kubevirt.io/rhel7.6: "true" + os.template.kubevirt.io/rhel7.7: "true" + os.template.kubevirt.io/rhel7.8: "true" + os.template.kubevirt.io/rhel7.9: "true" + workload.template.kubevirt.io/desktop: "true" + flavor.template.kubevirt.io/large: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: rhel7-desktop-large-v0.7.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: large + spec: + domain: + + cpu: + sockets: 2 + cores: 1 + threads: 1 + resources: + requests: + memory: 8Gi + devices: + rng: {} + networkInterfaceMultiqueue: true + inputs: + - type: tablet + bus: virtio + name: tablet + disks: + - disk: + bus: virtio + name: rootdisk + - disk: + bus: virtio + name: cloudinitdisk + interfaces: + - masquerade: {} + name: default + terminationGracePeriodSeconds: 0 + networks: + - name: default + pod: {} + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + - cloudInitNoCloud: + userData: |- + #cloud-config + password: redhat + chpasswd: { expire: False } + name: cloudinitdisk + +parameters: +- description: VM name + from: 'rhel7-[a-z0-9]{16}' + generate: expression + name: NAME +- name: PVCNAME + description: Name of the PVC with the disk image + required: true + +--- +# Source: dist/templates/rhel7-desktop-medium.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: rhel7-desktop-medium-v0.7.0 + annotations: + openshift.io/display-name: "Red Hat Enterprise Linux 7.0+ VM" + description: >- + This template can be used to create a VM suitable for + Red Hat Enterprise Linux 7 and newer. + The template assumes that a PVC is available which is providing the + necessary RHEL disk image. + tags: "hidden,kubevirt,virtualmachine,linux,rhel" + + iconClass: "icon-rhel" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.sockets + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.cpu.threads + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/rhel7.0: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.1: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.2: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.3: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.4: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.5: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.6: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.7: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.8: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.9: Red Hat Enterprise Linux 7.0 or higher + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 1073741824 + } + ] + + labels: + os.template.kubevirt.io/rhel7.0: "true" + os.template.kubevirt.io/rhel7.1: "true" + os.template.kubevirt.io/rhel7.2: "true" + os.template.kubevirt.io/rhel7.3: "true" + os.template.kubevirt.io/rhel7.4: "true" + os.template.kubevirt.io/rhel7.5: "true" + os.template.kubevirt.io/rhel7.6: "true" + os.template.kubevirt.io/rhel7.7: "true" + os.template.kubevirt.io/rhel7.8: "true" + os.template.kubevirt.io/rhel7.9: "true" + workload.template.kubevirt.io/desktop: "true" + flavor.template.kubevirt.io/medium: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: rhel7-desktop-medium-v0.7.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: medium + spec: + domain: + + cpu: + sockets: 1 + cores: 1 + threads: 1 + resources: + requests: + memory: 4Gi + devices: + rng: {} + networkInterfaceMultiqueue: true + inputs: + - type: tablet + bus: virtio + name: tablet + disks: + - disk: + bus: virtio + name: rootdisk + - disk: + bus: virtio + name: cloudinitdisk + interfaces: + - masquerade: {} + name: default + terminationGracePeriodSeconds: 0 + networks: + - name: default + pod: {} + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + - cloudInitNoCloud: + userData: |- + #cloud-config + password: redhat + chpasswd: { expire: False } + name: cloudinitdisk + +parameters: +- description: VM name + from: 'rhel7-[a-z0-9]{16}' + generate: expression + name: NAME +- name: PVCNAME + description: Name of the PVC with the disk image + required: true + +--- +# Source: dist/templates/rhel7-desktop-small.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: rhel7-desktop-small-v0.7.0 + annotations: + openshift.io/display-name: "Red Hat Enterprise Linux 7.0+ VM" + description: >- + This template can be used to create a VM suitable for + Red Hat Enterprise Linux 7 and newer. + The template assumes that a PVC is available which is providing the + necessary RHEL disk image. + tags: "hidden,kubevirt,virtualmachine,linux,rhel" + + iconClass: "icon-rhel" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.sockets + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.cpu.threads + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/rhel7.0: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.1: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.2: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.3: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.4: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.5: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.6: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.7: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.8: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.9: Red Hat Enterprise Linux 7.0 or higher + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 1073741824 + } + ] + + labels: + os.template.kubevirt.io/rhel7.0: "true" + os.template.kubevirt.io/rhel7.1: "true" + os.template.kubevirt.io/rhel7.2: "true" + os.template.kubevirt.io/rhel7.3: "true" + os.template.kubevirt.io/rhel7.4: "true" + os.template.kubevirt.io/rhel7.5: "true" + os.template.kubevirt.io/rhel7.6: "true" + os.template.kubevirt.io/rhel7.7: "true" + os.template.kubevirt.io/rhel7.8: "true" + os.template.kubevirt.io/rhel7.9: "true" + workload.template.kubevirt.io/desktop: "true" + flavor.template.kubevirt.io/small: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: rhel7-desktop-small-v0.7.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: small + spec: + domain: + + cpu: + sockets: 1 + cores: 1 + threads: 1 + resources: + requests: + memory: 2Gi + devices: + rng: {} + networkInterfaceMultiqueue: true + inputs: + - type: tablet + bus: virtio + name: tablet + disks: + - disk: + bus: virtio + name: rootdisk + - disk: + bus: virtio + name: cloudinitdisk + interfaces: + - masquerade: {} + name: default + terminationGracePeriodSeconds: 0 + networks: + - name: default + pod: {} + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + - cloudInitNoCloud: + userData: |- + #cloud-config + password: redhat + chpasswd: { expire: False } + name: cloudinitdisk + +parameters: +- description: VM name + from: 'rhel7-[a-z0-9]{16}' + generate: expression + name: NAME +- name: PVCNAME + description: Name of the PVC with the disk image + required: true + +--- +# Source: dist/templates/rhel7-desktop-tiny.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: rhel7-desktop-tiny-v0.7.0 + annotations: + openshift.io/display-name: "Red Hat Enterprise Linux 7.0+ VM" + description: >- + This template can be used to create a VM suitable for + Red Hat Enterprise Linux 7 and newer. + The template assumes that a PVC is available which is providing the + necessary RHEL disk image. + tags: "hidden,kubevirt,virtualmachine,linux,rhel" + + iconClass: "icon-rhel" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.sockets + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.cpu.threads + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/rhel7.0: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.1: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.2: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.3: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.4: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.5: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.6: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.7: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.8: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.9: Red Hat Enterprise Linux 7.0 or higher + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 1073741824 + } + ] + + labels: + os.template.kubevirt.io/rhel7.0: "true" + os.template.kubevirt.io/rhel7.1: "true" + os.template.kubevirt.io/rhel7.2: "true" + os.template.kubevirt.io/rhel7.3: "true" + os.template.kubevirt.io/rhel7.4: "true" + os.template.kubevirt.io/rhel7.5: "true" + os.template.kubevirt.io/rhel7.6: "true" + os.template.kubevirt.io/rhel7.7: "true" + os.template.kubevirt.io/rhel7.8: "true" + os.template.kubevirt.io/rhel7.9: "true" + workload.template.kubevirt.io/desktop: "true" + flavor.template.kubevirt.io/tiny: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: rhel7-desktop-tiny-v0.7.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: tiny + spec: + domain: + + cpu: + sockets: 1 + cores: 1 + threads: 1 + resources: + requests: + memory: 1Gi + devices: + rng: {} + networkInterfaceMultiqueue: true + inputs: + - type: tablet + bus: virtio + name: tablet + disks: + - disk: + bus: virtio + name: rootdisk + - disk: + bus: virtio + name: cloudinitdisk + interfaces: + - masquerade: {} + name: default + terminationGracePeriodSeconds: 0 + networks: + - name: default + pod: {} + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + - cloudInitNoCloud: + userData: |- + #cloud-config + password: redhat + chpasswd: { expire: False } + name: cloudinitdisk + +parameters: +- description: VM name + from: 'rhel7-[a-z0-9]{16}' + generate: expression + name: NAME +- name: PVCNAME + description: Name of the PVC with the disk image + required: true + +--- +# Source: dist/templates/rhel7-highperformance-large.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: rhel7-highperformance-large-v0.7.0 + annotations: + openshift.io/display-name: "Red Hat Enterprise Linux 7.0+ VM" + description: >- + This template can be used to create a VM suitable for + Red Hat Enterprise Linux 7 and newer. + The template assumes that a PVC is available which is providing the + necessary RHEL disk image. + tags: "hidden,kubevirt,virtualmachine,linux,rhel" + + iconClass: "icon-rhel" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.sockets + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.cpu.threads + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/rhel7.0: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.1: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.2: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.3: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.4: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.5: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.6: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.7: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.8: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.9: Red Hat Enterprise Linux 7.0 or higher + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 1073741824 + } + ] + + labels: + os.template.kubevirt.io/rhel7.0: "true" + os.template.kubevirt.io/rhel7.1: "true" + os.template.kubevirt.io/rhel7.2: "true" + os.template.kubevirt.io/rhel7.3: "true" + os.template.kubevirt.io/rhel7.4: "true" + os.template.kubevirt.io/rhel7.5: "true" + os.template.kubevirt.io/rhel7.6: "true" + os.template.kubevirt.io/rhel7.7: "true" + os.template.kubevirt.io/rhel7.8: "true" + os.template.kubevirt.io/rhel7.9: "true" + workload.template.kubevirt.io/highperformance: "true" + flavor.template.kubevirt.io/large: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: rhel7-highperformance-large-v0.7.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: large + spec: + domain: + ioThreadsPolicy: shared + + cpu: + sockets: 2 + cores: 1 + threads: 1 + resources: + requests: + memory: 8Gi + devices: + rng: {} + networkInterfaceMultiqueue: true + disks: + - disk: + bus: virtio + name: rootdisk + - disk: + bus: virtio + name: cloudinitdisk + interfaces: + - masquerade: {} + name: default + terminationGracePeriodSeconds: 0 + networks: + - name: default + pod: {} + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + - cloudInitNoCloud: + userData: |- + #cloud-config + password: redhat + chpasswd: { expire: False } + name: cloudinitdisk + +parameters: +- description: VM name + from: 'rhel7-[a-z0-9]{16}' + generate: expression + name: NAME +- name: PVCNAME + description: Name of the PVC with the disk image + required: true + +--- +# Source: dist/templates/rhel7-highperformance-medium.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: rhel7-highperformance-medium-v0.7.0 + annotations: + openshift.io/display-name: "Red Hat Enterprise Linux 7.0+ VM" + description: >- + This template can be used to create a VM suitable for + Red Hat Enterprise Linux 7 and newer. + The template assumes that a PVC is available which is providing the + necessary RHEL disk image. + tags: "hidden,kubevirt,virtualmachine,linux,rhel" + + iconClass: "icon-rhel" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.sockets + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.cpu.threads + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/rhel7.0: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.1: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.2: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.3: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.4: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.5: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.6: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.7: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.8: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.9: Red Hat Enterprise Linux 7.0 or higher + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 1073741824 + } + ] + + labels: + os.template.kubevirt.io/rhel7.0: "true" + os.template.kubevirt.io/rhel7.1: "true" + os.template.kubevirt.io/rhel7.2: "true" + os.template.kubevirt.io/rhel7.3: "true" + os.template.kubevirt.io/rhel7.4: "true" + os.template.kubevirt.io/rhel7.5: "true" + os.template.kubevirt.io/rhel7.6: "true" + os.template.kubevirt.io/rhel7.7: "true" + os.template.kubevirt.io/rhel7.8: "true" + os.template.kubevirt.io/rhel7.9: "true" + workload.template.kubevirt.io/highperformance: "true" + flavor.template.kubevirt.io/medium: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: rhel7-highperformance-medium-v0.7.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: medium + spec: + domain: + ioThreadsPolicy: shared + + cpu: + sockets: 1 + cores: 1 + threads: 1 + resources: + requests: + memory: 4Gi + devices: + rng: {} + networkInterfaceMultiqueue: true + disks: + - disk: + bus: virtio + name: rootdisk + - disk: + bus: virtio + name: cloudinitdisk + interfaces: + - masquerade: {} + name: default + terminationGracePeriodSeconds: 0 + networks: + - name: default + pod: {} + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + - cloudInitNoCloud: + userData: |- + #cloud-config + password: redhat + chpasswd: { expire: False } + name: cloudinitdisk + +parameters: +- description: VM name + from: 'rhel7-[a-z0-9]{16}' + generate: expression + name: NAME +- name: PVCNAME + description: Name of the PVC with the disk image + required: true + +--- +# Source: dist/templates/rhel7-highperformance-small.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: rhel7-highperformance-small-v0.7.0 + annotations: + openshift.io/display-name: "Red Hat Enterprise Linux 7.0+ VM" + description: >- + This template can be used to create a VM suitable for + Red Hat Enterprise Linux 7 and newer. + The template assumes that a PVC is available which is providing the + necessary RHEL disk image. + tags: "hidden,kubevirt,virtualmachine,linux,rhel" + + iconClass: "icon-rhel" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.sockets + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.cpu.threads + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/rhel7.0: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.1: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.2: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.3: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.4: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.5: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.6: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.7: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.8: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.9: Red Hat Enterprise Linux 7.0 or higher + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 1073741824 + } + ] + + labels: + os.template.kubevirt.io/rhel7.0: "true" + os.template.kubevirt.io/rhel7.1: "true" + os.template.kubevirt.io/rhel7.2: "true" + os.template.kubevirt.io/rhel7.3: "true" + os.template.kubevirt.io/rhel7.4: "true" + os.template.kubevirt.io/rhel7.5: "true" + os.template.kubevirt.io/rhel7.6: "true" + os.template.kubevirt.io/rhel7.7: "true" + os.template.kubevirt.io/rhel7.8: "true" + os.template.kubevirt.io/rhel7.9: "true" + workload.template.kubevirt.io/highperformance: "true" + flavor.template.kubevirt.io/small: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: rhel7-highperformance-small-v0.7.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: small + spec: + domain: + ioThreadsPolicy: shared + + cpu: + sockets: 1 + cores: 1 + threads: 1 + resources: + requests: + memory: 2Gi + devices: + rng: {} + networkInterfaceMultiqueue: true + disks: + - disk: + bus: virtio + name: rootdisk + - disk: + bus: virtio + name: cloudinitdisk + interfaces: + - masquerade: {} + name: default + terminationGracePeriodSeconds: 0 + networks: + - name: default + pod: {} + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + - cloudInitNoCloud: + userData: |- + #cloud-config + password: redhat + chpasswd: { expire: False } + name: cloudinitdisk + +parameters: +- description: VM name + from: 'rhel7-[a-z0-9]{16}' + generate: expression + name: NAME +- name: PVCNAME + description: Name of the PVC with the disk image + required: true + +--- +# Source: dist/templates/rhel7-highperformance-tiny.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: rhel7-highperformance-tiny-v0.7.0 + annotations: + openshift.io/display-name: "Red Hat Enterprise Linux 7.0+ VM" + description: >- + This template can be used to create a VM suitable for + Red Hat Enterprise Linux 7 and newer. + The template assumes that a PVC is available which is providing the + necessary RHEL disk image. + tags: "hidden,kubevirt,virtualmachine,linux,rhel" + + iconClass: "icon-rhel" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.sockets + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.cpu.threads + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/rhel7.0: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.1: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.2: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.3: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.4: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.5: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.6: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.7: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.8: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.9: Red Hat Enterprise Linux 7.0 or higher + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 1073741824 + } + ] + + labels: + os.template.kubevirt.io/rhel7.0: "true" + os.template.kubevirt.io/rhel7.1: "true" + os.template.kubevirt.io/rhel7.2: "true" + os.template.kubevirt.io/rhel7.3: "true" + os.template.kubevirt.io/rhel7.4: "true" + os.template.kubevirt.io/rhel7.5: "true" + os.template.kubevirt.io/rhel7.6: "true" + os.template.kubevirt.io/rhel7.7: "true" + os.template.kubevirt.io/rhel7.8: "true" + os.template.kubevirt.io/rhel7.9: "true" + workload.template.kubevirt.io/highperformance: "true" + flavor.template.kubevirt.io/tiny: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: rhel7-highperformance-tiny-v0.7.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: tiny + spec: + domain: + ioThreadsPolicy: shared + + cpu: + sockets: 1 + cores: 1 + threads: 1 + resources: + requests: + memory: 1Gi + devices: + rng: {} + networkInterfaceMultiqueue: true + disks: + - disk: + bus: virtio + name: rootdisk + - disk: + bus: virtio + name: cloudinitdisk + interfaces: + - masquerade: {} + name: default + terminationGracePeriodSeconds: 0 + networks: + - name: default + pod: {} + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + - cloudInitNoCloud: + userData: |- + #cloud-config + password: redhat + chpasswd: { expire: False } + name: cloudinitdisk + +parameters: +- description: VM name + from: 'rhel7-[a-z0-9]{16}' + generate: expression + name: NAME +- name: PVCNAME + description: Name of the PVC with the disk image + required: true + +--- +# Source: dist/templates/rhel7-server-large.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: rhel7-server-large-v0.7.0 + annotations: + openshift.io/display-name: "Red Hat Enterprise Linux 7.0+ VM" + description: >- + This template can be used to create a VM suitable for + Red Hat Enterprise Linux 7 and newer. + The template assumes that a PVC is available which is providing the + necessary RHEL disk image. + tags: "hidden,kubevirt,virtualmachine,linux,rhel" + + iconClass: "icon-rhel" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.sockets + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.cpu.threads + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/rhel7.0: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.1: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.2: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.3: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.4: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.5: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.6: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.7: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.8: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.9: Red Hat Enterprise Linux 7.0 or higher + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 1073741824 + } + ] + + labels: + os.template.kubevirt.io/rhel7.0: "true" + os.template.kubevirt.io/rhel7.1: "true" + os.template.kubevirt.io/rhel7.2: "true" + os.template.kubevirt.io/rhel7.3: "true" + os.template.kubevirt.io/rhel7.4: "true" + os.template.kubevirt.io/rhel7.5: "true" + os.template.kubevirt.io/rhel7.6: "true" + os.template.kubevirt.io/rhel7.7: "true" + os.template.kubevirt.io/rhel7.8: "true" + os.template.kubevirt.io/rhel7.9: "true" + workload.template.kubevirt.io/server: "true" + flavor.template.kubevirt.io/large: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: rhel7-server-large-v0.7.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: large + spec: + domain: + + cpu: + sockets: 2 + cores: 1 + threads: 1 + resources: + requests: + memory: 8Gi + devices: + rng: {} + networkInterfaceMultiqueue: true + disks: + - disk: + bus: virtio + name: rootdisk + - disk: + bus: virtio + name: cloudinitdisk + interfaces: + - masquerade: {} + name: default + terminationGracePeriodSeconds: 0 + networks: + - name: default + pod: {} + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + - cloudInitNoCloud: + userData: |- + #cloud-config + password: redhat + chpasswd: { expire: False } + name: cloudinitdisk + +parameters: +- description: VM name + from: 'rhel7-[a-z0-9]{16}' + generate: expression + name: NAME +- name: PVCNAME + description: Name of the PVC with the disk image + required: true + +--- +# Source: dist/templates/rhel7-server-medium.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: rhel7-server-medium-v0.7.0 + annotations: + openshift.io/display-name: "Red Hat Enterprise Linux 7.0+ VM" + description: >- + This template can be used to create a VM suitable for + Red Hat Enterprise Linux 7 and newer. + The template assumes that a PVC is available which is providing the + necessary RHEL disk image. + tags: "hidden,kubevirt,virtualmachine,linux,rhel" + + iconClass: "icon-rhel" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.sockets + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.cpu.threads + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/rhel7.0: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.1: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.2: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.3: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.4: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.5: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.6: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.7: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.8: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.9: Red Hat Enterprise Linux 7.0 or higher + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 1073741824 + } + ] + + labels: + os.template.kubevirt.io/rhel7.0: "true" + os.template.kubevirt.io/rhel7.1: "true" + os.template.kubevirt.io/rhel7.2: "true" + os.template.kubevirt.io/rhel7.3: "true" + os.template.kubevirt.io/rhel7.4: "true" + os.template.kubevirt.io/rhel7.5: "true" + os.template.kubevirt.io/rhel7.6: "true" + os.template.kubevirt.io/rhel7.7: "true" + os.template.kubevirt.io/rhel7.8: "true" + os.template.kubevirt.io/rhel7.9: "true" + workload.template.kubevirt.io/server: "true" + flavor.template.kubevirt.io/medium: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: rhel7-server-medium-v0.7.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: medium + spec: + domain: + + cpu: + sockets: 1 + cores: 1 + threads: 1 + resources: + requests: + memory: 4Gi + devices: + rng: {} + networkInterfaceMultiqueue: true + disks: + - disk: + bus: virtio + name: rootdisk + - disk: + bus: virtio + name: cloudinitdisk + interfaces: + - masquerade: {} + name: default + terminationGracePeriodSeconds: 0 + networks: + - name: default + pod: {} + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + - cloudInitNoCloud: + userData: |- + #cloud-config + password: redhat + chpasswd: { expire: False } + name: cloudinitdisk + +parameters: +- description: VM name + from: 'rhel7-[a-z0-9]{16}' + generate: expression + name: NAME +- name: PVCNAME + description: Name of the PVC with the disk image + required: true + +--- +# Source: dist/templates/rhel7-server-small.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: rhel7-server-small-v0.7.0 + annotations: + openshift.io/display-name: "Red Hat Enterprise Linux 7.0+ VM" + description: >- + This template can be used to create a VM suitable for + Red Hat Enterprise Linux 7 and newer. + The template assumes that a PVC is available which is providing the + necessary RHEL disk image. + tags: "hidden,kubevirt,virtualmachine,linux,rhel" + + iconClass: "icon-rhel" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.sockets + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.cpu.threads + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/rhel7.0: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.1: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.2: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.3: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.4: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.5: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.6: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.7: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.8: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.9: Red Hat Enterprise Linux 7.0 or higher + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 1073741824 + } + ] + + labels: + os.template.kubevirt.io/rhel7.0: "true" + os.template.kubevirt.io/rhel7.1: "true" + os.template.kubevirt.io/rhel7.2: "true" + os.template.kubevirt.io/rhel7.3: "true" + os.template.kubevirt.io/rhel7.4: "true" + os.template.kubevirt.io/rhel7.5: "true" + os.template.kubevirt.io/rhel7.6: "true" + os.template.kubevirt.io/rhel7.7: "true" + os.template.kubevirt.io/rhel7.8: "true" + os.template.kubevirt.io/rhel7.9: "true" + workload.template.kubevirt.io/server: "true" + flavor.template.kubevirt.io/small: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: rhel7-server-small-v0.7.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: small + spec: + domain: + + cpu: + sockets: 1 + cores: 1 + threads: 1 + resources: + requests: + memory: 2Gi + devices: + rng: {} + networkInterfaceMultiqueue: true + disks: + - disk: + bus: virtio + name: rootdisk + - disk: + bus: virtio + name: cloudinitdisk + interfaces: + - masquerade: {} + name: default + terminationGracePeriodSeconds: 0 + networks: + - name: default + pod: {} + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + - cloudInitNoCloud: + userData: |- + #cloud-config + password: redhat + chpasswd: { expire: False } + name: cloudinitdisk + +parameters: +- description: VM name + from: 'rhel7-[a-z0-9]{16}' + generate: expression + name: NAME +- name: PVCNAME + description: Name of the PVC with the disk image + required: true + +--- +# Source: dist/templates/rhel7-server-tiny.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: rhel7-server-tiny-v0.7.0 + annotations: + openshift.io/display-name: "Red Hat Enterprise Linux 7.0+ VM" + description: >- + This template can be used to create a VM suitable for + Red Hat Enterprise Linux 7 and newer. + The template assumes that a PVC is available which is providing the + necessary RHEL disk image. + tags: "hidden,kubevirt,virtualmachine,linux,rhel" + + iconClass: "icon-rhel" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.sockets + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.cpu.threads + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/rhel7.0: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.1: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.2: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.3: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.4: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.5: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.6: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.7: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.8: Red Hat Enterprise Linux 7.0 or higher + name.os.template.kubevirt.io/rhel7.9: Red Hat Enterprise Linux 7.0 or higher + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 1073741824 + } + ] + + labels: + os.template.kubevirt.io/rhel7.0: "true" + os.template.kubevirt.io/rhel7.1: "true" + os.template.kubevirt.io/rhel7.2: "true" + os.template.kubevirt.io/rhel7.3: "true" + os.template.kubevirt.io/rhel7.4: "true" + os.template.kubevirt.io/rhel7.5: "true" + os.template.kubevirt.io/rhel7.6: "true" + os.template.kubevirt.io/rhel7.7: "true" + os.template.kubevirt.io/rhel7.8: "true" + os.template.kubevirt.io/rhel7.9: "true" + workload.template.kubevirt.io/server: "true" + flavor.template.kubevirt.io/tiny: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: rhel7-server-tiny-v0.7.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: tiny + spec: + domain: + + cpu: + sockets: 1 + cores: 1 + threads: 1 + resources: + requests: + memory: 1Gi + devices: + rng: {} + networkInterfaceMultiqueue: true + disks: + - disk: + bus: virtio + name: rootdisk + - disk: + bus: virtio + name: cloudinitdisk + interfaces: + - masquerade: {} + name: default + terminationGracePeriodSeconds: 0 + networks: + - name: default + pod: {} + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + - cloudInitNoCloud: + userData: |- + #cloud-config + password: redhat + chpasswd: { expire: False } + name: cloudinitdisk + +parameters: +- description: VM name + from: 'rhel7-[a-z0-9]{16}' + generate: expression + name: NAME +- name: PVCNAME + description: Name of the PVC with the disk image + required: true + +--- +# Source: dist/templates/rhel8-desktop-large.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: rhel8-desktop-large-v0.10.0 + annotations: + openshift.io/display-name: "Red Hat Enterprise Linux 8.0+ VM" + description: >- + This template can be used to create a VM suitable for + Red Hat Enterprise Linux 8 and newer. + The template assumes that a PVC is available which is providing the + necessary RHEL disk image. + tags: "hidden,kubevirt,virtualmachine,linux,rhel" + + iconClass: "icon-rhel" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.sockets + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.cpu.threads + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/rhel8.0: Red Hat Enterprise Linux 8.0 or higher + name.os.template.kubevirt.io/rhel8.1: Red Hat Enterprise Linux 8.0 or higher + name.os.template.kubevirt.io/rhel8.2: Red Hat Enterprise Linux 8.0 or higher + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 1610612736 + } + ] + + labels: + os.template.kubevirt.io/rhel8.0: "true" + os.template.kubevirt.io/rhel8.1: "true" + os.template.kubevirt.io/rhel8.2: "true" + workload.template.kubevirt.io/desktop: "true" + flavor.template.kubevirt.io/large: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: rhel8-desktop-large-v0.10.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: large + spec: + domain: + + cpu: + sockets: 2 + cores: 1 + threads: 1 + resources: + requests: + memory: 8Gi + devices: + rng: {} + networkInterfaceMultiqueue: true + inputs: + - type: tablet + bus: virtio + name: tablet + disks: + - disk: + bus: virtio + name: rootdisk + - disk: + bus: virtio + name: cloudinitdisk + interfaces: + - masquerade: {} + name: default + terminationGracePeriodSeconds: 0 + networks: + - name: default + pod: {} + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + - cloudInitNoCloud: + userData: |- + #cloud-config + password: redhat + chpasswd: { expire: False } + name: cloudinitdisk + +parameters: +- description: VM name + from: 'rhel8-[a-z0-9]{16}' + generate: expression + name: NAME +- name: PVCNAME + description: Name of the PVC with the disk image + required: true + +--- +# Source: dist/templates/rhel8-desktop-medium.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: rhel8-desktop-medium-v0.10.0 + annotations: + openshift.io/display-name: "Red Hat Enterprise Linux 8.0+ VM" + description: >- + This template can be used to create a VM suitable for + Red Hat Enterprise Linux 8 and newer. + The template assumes that a PVC is available which is providing the + necessary RHEL disk image. + tags: "hidden,kubevirt,virtualmachine,linux,rhel" + + iconClass: "icon-rhel" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.sockets + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.cpu.threads + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/rhel8.0: Red Hat Enterprise Linux 8.0 or higher + name.os.template.kubevirt.io/rhel8.1: Red Hat Enterprise Linux 8.0 or higher + name.os.template.kubevirt.io/rhel8.2: Red Hat Enterprise Linux 8.0 or higher + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 1610612736 + } + ] + + labels: + os.template.kubevirt.io/rhel8.0: "true" + os.template.kubevirt.io/rhel8.1: "true" + os.template.kubevirt.io/rhel8.2: "true" + workload.template.kubevirt.io/desktop: "true" + flavor.template.kubevirt.io/medium: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: rhel8-desktop-medium-v0.10.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: medium + spec: + domain: + + cpu: + sockets: 1 + cores: 1 + threads: 1 + resources: + requests: + memory: 4Gi + devices: + rng: {} + networkInterfaceMultiqueue: true + inputs: + - type: tablet + bus: virtio + name: tablet + disks: + - disk: + bus: virtio + name: rootdisk + - disk: + bus: virtio + name: cloudinitdisk + interfaces: + - masquerade: {} + name: default + terminationGracePeriodSeconds: 0 + networks: + - name: default + pod: {} + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + - cloudInitNoCloud: + userData: |- + #cloud-config + password: redhat + chpasswd: { expire: False } + name: cloudinitdisk + +parameters: +- description: VM name + from: 'rhel8-[a-z0-9]{16}' + generate: expression + name: NAME +- name: PVCNAME + description: Name of the PVC with the disk image + required: true + +--- +# Source: dist/templates/rhel8-desktop-small.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: rhel8-desktop-small-v0.10.0 + annotations: + openshift.io/display-name: "Red Hat Enterprise Linux 8.0+ VM" + description: >- + This template can be used to create a VM suitable for + Red Hat Enterprise Linux 8 and newer. + The template assumes that a PVC is available which is providing the + necessary RHEL disk image. + tags: "hidden,kubevirt,virtualmachine,linux,rhel" + + iconClass: "icon-rhel" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.sockets + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.cpu.threads + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/rhel8.0: Red Hat Enterprise Linux 8.0 or higher + name.os.template.kubevirt.io/rhel8.1: Red Hat Enterprise Linux 8.0 or higher + name.os.template.kubevirt.io/rhel8.2: Red Hat Enterprise Linux 8.0 or higher + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 1610612736 + } + ] + + labels: + os.template.kubevirt.io/rhel8.0: "true" + os.template.kubevirt.io/rhel8.1: "true" + os.template.kubevirt.io/rhel8.2: "true" + workload.template.kubevirt.io/desktop: "true" + flavor.template.kubevirt.io/small: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: rhel8-desktop-small-v0.10.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: small + spec: + domain: + + cpu: + sockets: 1 + cores: 1 + threads: 1 + resources: + requests: + memory: 2Gi + devices: + rng: {} + networkInterfaceMultiqueue: true + inputs: + - type: tablet + bus: virtio + name: tablet + disks: + - disk: + bus: virtio + name: rootdisk + - disk: + bus: virtio + name: cloudinitdisk + interfaces: + - masquerade: {} + name: default + terminationGracePeriodSeconds: 0 + networks: + - name: default + pod: {} + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + - cloudInitNoCloud: + userData: |- + #cloud-config + password: redhat + chpasswd: { expire: False } + name: cloudinitdisk + +parameters: +- description: VM name + from: 'rhel8-[a-z0-9]{16}' + generate: expression + name: NAME +- name: PVCNAME + description: Name of the PVC with the disk image + required: true + +--- +# Source: dist/templates/rhel8-desktop-tiny.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: rhel8-desktop-tiny-v0.10.0 + annotations: + openshift.io/display-name: "Red Hat Enterprise Linux 8.0+ VM" + description: >- + This template can be used to create a VM suitable for + Red Hat Enterprise Linux 8 and newer. + The template assumes that a PVC is available which is providing the + necessary RHEL disk image. + tags: "hidden,kubevirt,virtualmachine,linux,rhel" + + iconClass: "icon-rhel" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.sockets + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.cpu.threads + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/rhel8.0: Red Hat Enterprise Linux 8.0 or higher + name.os.template.kubevirt.io/rhel8.1: Red Hat Enterprise Linux 8.0 or higher + name.os.template.kubevirt.io/rhel8.2: Red Hat Enterprise Linux 8.0 or higher + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 1610612736 + } + ] + + labels: + os.template.kubevirt.io/rhel8.0: "true" + os.template.kubevirt.io/rhel8.1: "true" + os.template.kubevirt.io/rhel8.2: "true" + workload.template.kubevirt.io/desktop: "true" + flavor.template.kubevirt.io/tiny: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: rhel8-desktop-tiny-v0.10.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: tiny + spec: + domain: + + cpu: + sockets: 1 + cores: 1 + threads: 1 + resources: + requests: + memory: 1.5Gi + devices: + rng: {} + networkInterfaceMultiqueue: true + inputs: + - type: tablet + bus: virtio + name: tablet + disks: + - disk: + bus: virtio + name: rootdisk + - disk: + bus: virtio + name: cloudinitdisk + interfaces: + - masquerade: {} + name: default + terminationGracePeriodSeconds: 0 + networks: + - name: default + pod: {} + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + - cloudInitNoCloud: + userData: |- + #cloud-config + password: redhat + chpasswd: { expire: False } + name: cloudinitdisk + +parameters: +- description: VM name + from: 'rhel8-[a-z0-9]{16}' + generate: expression + name: NAME +- name: PVCNAME + description: Name of the PVC with the disk image + required: true + +--- +# Source: dist/templates/rhel8-highperformance-large.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: rhel8-highperformance-large-v0.10.0 + annotations: + openshift.io/display-name: "Red Hat Enterprise Linux 8.0+ VM" + description: >- + This template can be used to create a VM suitable for + Red Hat Enterprise Linux 8 and newer. + The template assumes that a PVC is available which is providing the + necessary RHEL disk image. + tags: "hidden,kubevirt,virtualmachine,linux,rhel" + + iconClass: "icon-rhel" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.sockets + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.cpu.threads + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/rhel8.0: Red Hat Enterprise Linux 8.0 or higher + name.os.template.kubevirt.io/rhel8.1: Red Hat Enterprise Linux 8.0 or higher + name.os.template.kubevirt.io/rhel8.2: Red Hat Enterprise Linux 8.0 or higher + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 1610612736 + } + ] + + labels: + os.template.kubevirt.io/rhel8.0: "true" + os.template.kubevirt.io/rhel8.1: "true" + os.template.kubevirt.io/rhel8.2: "true" + workload.template.kubevirt.io/highperformance: "true" + flavor.template.kubevirt.io/large: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: rhel8-highperformance-large-v0.10.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: large + spec: + domain: + ioThreadsPolicy: shared + + cpu: + sockets: 2 + cores: 1 + threads: 1 + resources: + requests: + memory: 8Gi + devices: + rng: {} + networkInterfaceMultiqueue: true + disks: + - disk: + bus: virtio + name: rootdisk + - disk: + bus: virtio + name: cloudinitdisk + interfaces: + - masquerade: {} + name: default + terminationGracePeriodSeconds: 0 + networks: + - name: default + pod: {} + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + - cloudInitNoCloud: + userData: |- + #cloud-config + password: redhat + chpasswd: { expire: False } + name: cloudinitdisk + +parameters: +- description: VM name + from: 'rhel8-[a-z0-9]{16}' + generate: expression + name: NAME +- name: PVCNAME + description: Name of the PVC with the disk image + required: true + +--- +# Source: dist/templates/rhel8-highperformance-medium.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: rhel8-highperformance-medium-v0.10.0 + annotations: + openshift.io/display-name: "Red Hat Enterprise Linux 8.0+ VM" + description: >- + This template can be used to create a VM suitable for + Red Hat Enterprise Linux 8 and newer. + The template assumes that a PVC is available which is providing the + necessary RHEL disk image. + tags: "hidden,kubevirt,virtualmachine,linux,rhel" + + iconClass: "icon-rhel" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.sockets + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.cpu.threads + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/rhel8.0: Red Hat Enterprise Linux 8.0 or higher + name.os.template.kubevirt.io/rhel8.1: Red Hat Enterprise Linux 8.0 or higher + name.os.template.kubevirt.io/rhel8.2: Red Hat Enterprise Linux 8.0 or higher + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 1610612736 + } + ] + + labels: + os.template.kubevirt.io/rhel8.0: "true" + os.template.kubevirt.io/rhel8.1: "true" + os.template.kubevirt.io/rhel8.2: "true" + workload.template.kubevirt.io/highperformance: "true" + flavor.template.kubevirt.io/medium: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: rhel8-highperformance-medium-v0.10.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: medium + spec: + domain: + ioThreadsPolicy: shared + + cpu: + sockets: 1 + cores: 1 + threads: 1 + resources: + requests: + memory: 4Gi + devices: + rng: {} + networkInterfaceMultiqueue: true + disks: + - disk: + bus: virtio + name: rootdisk + - disk: + bus: virtio + name: cloudinitdisk + interfaces: + - masquerade: {} + name: default + terminationGracePeriodSeconds: 0 + networks: + - name: default + pod: {} + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + - cloudInitNoCloud: + userData: |- + #cloud-config + password: redhat + chpasswd: { expire: False } + name: cloudinitdisk + +parameters: +- description: VM name + from: 'rhel8-[a-z0-9]{16}' + generate: expression + name: NAME +- name: PVCNAME + description: Name of the PVC with the disk image + required: true + +--- +# Source: dist/templates/rhel8-highperformance-small.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: rhel8-highperformance-small-v0.10.0 + annotations: + openshift.io/display-name: "Red Hat Enterprise Linux 8.0+ VM" + description: >- + This template can be used to create a VM suitable for + Red Hat Enterprise Linux 8 and newer. + The template assumes that a PVC is available which is providing the + necessary RHEL disk image. + tags: "hidden,kubevirt,virtualmachine,linux,rhel" + + iconClass: "icon-rhel" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.sockets + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.cpu.threads + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/rhel8.0: Red Hat Enterprise Linux 8.0 or higher + name.os.template.kubevirt.io/rhel8.1: Red Hat Enterprise Linux 8.0 or higher + name.os.template.kubevirt.io/rhel8.2: Red Hat Enterprise Linux 8.0 or higher + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 1610612736 + } + ] + + labels: + os.template.kubevirt.io/rhel8.0: "true" + os.template.kubevirt.io/rhel8.1: "true" + os.template.kubevirt.io/rhel8.2: "true" + workload.template.kubevirt.io/highperformance: "true" + flavor.template.kubevirt.io/small: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: rhel8-highperformance-small-v0.10.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: small + spec: + domain: + ioThreadsPolicy: shared + + cpu: + sockets: 1 + cores: 1 + threads: 1 + resources: + requests: + memory: 2Gi + devices: + rng: {} + networkInterfaceMultiqueue: true + disks: + - disk: + bus: virtio + name: rootdisk + - disk: + bus: virtio + name: cloudinitdisk + interfaces: + - masquerade: {} + name: default + terminationGracePeriodSeconds: 0 + networks: + - name: default + pod: {} + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + - cloudInitNoCloud: + userData: |- + #cloud-config + password: redhat + chpasswd: { expire: False } + name: cloudinitdisk + +parameters: +- description: VM name + from: 'rhel8-[a-z0-9]{16}' + generate: expression + name: NAME +- name: PVCNAME + description: Name of the PVC with the disk image + required: true + +--- +# Source: dist/templates/rhel8-highperformance-tiny.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: rhel8-highperformance-tiny-v0.10.0 + annotations: + openshift.io/display-name: "Red Hat Enterprise Linux 8.0+ VM" + description: >- + This template can be used to create a VM suitable for + Red Hat Enterprise Linux 8 and newer. + The template assumes that a PVC is available which is providing the + necessary RHEL disk image. + tags: "hidden,kubevirt,virtualmachine,linux,rhel" + + iconClass: "icon-rhel" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.sockets + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.cpu.threads + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/rhel8.0: Red Hat Enterprise Linux 8.0 or higher + name.os.template.kubevirt.io/rhel8.1: Red Hat Enterprise Linux 8.0 or higher + name.os.template.kubevirt.io/rhel8.2: Red Hat Enterprise Linux 8.0 or higher + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 1610612736 + } + ] + + labels: + os.template.kubevirt.io/rhel8.0: "true" + os.template.kubevirt.io/rhel8.1: "true" + os.template.kubevirt.io/rhel8.2: "true" + workload.template.kubevirt.io/highperformance: "true" + flavor.template.kubevirt.io/tiny: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: rhel8-highperformance-tiny-v0.10.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: tiny + spec: + domain: + ioThreadsPolicy: shared + + cpu: + sockets: 1 + cores: 1 + threads: 1 + resources: + requests: + memory: 1.5Gi + devices: + rng: {} + networkInterfaceMultiqueue: true + disks: + - disk: + bus: virtio + name: rootdisk + - disk: + bus: virtio + name: cloudinitdisk + interfaces: + - masquerade: {} + name: default + terminationGracePeriodSeconds: 0 + networks: + - name: default + pod: {} + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + - cloudInitNoCloud: + userData: |- + #cloud-config + password: redhat + chpasswd: { expire: False } + name: cloudinitdisk + +parameters: +- description: VM name + from: 'rhel8-[a-z0-9]{16}' + generate: expression + name: NAME +- name: PVCNAME + description: Name of the PVC with the disk image + required: true + +--- +# Source: dist/templates/rhel8-server-large.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: rhel8-server-large-v0.10.0 + annotations: + openshift.io/display-name: "Red Hat Enterprise Linux 8.0+ VM" + description: >- + This template can be used to create a VM suitable for + Red Hat Enterprise Linux 8 and newer. + The template assumes that a PVC is available which is providing the + necessary RHEL disk image. + tags: "hidden,kubevirt,virtualmachine,linux,rhel" + + iconClass: "icon-rhel" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.sockets + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.cpu.threads + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/rhel8.0: Red Hat Enterprise Linux 8.0 or higher + name.os.template.kubevirt.io/rhel8.1: Red Hat Enterprise Linux 8.0 or higher + name.os.template.kubevirt.io/rhel8.2: Red Hat Enterprise Linux 8.0 or higher + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 1610612736 + } + ] + + labels: + os.template.kubevirt.io/rhel8.0: "true" + os.template.kubevirt.io/rhel8.1: "true" + os.template.kubevirt.io/rhel8.2: "true" + workload.template.kubevirt.io/server: "true" + flavor.template.kubevirt.io/large: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: rhel8-server-large-v0.10.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: large + spec: + domain: + + cpu: + sockets: 2 + cores: 1 + threads: 1 + resources: + requests: + memory: 8Gi + devices: + rng: {} + networkInterfaceMultiqueue: true + disks: + - disk: + bus: virtio + name: rootdisk + - disk: + bus: virtio + name: cloudinitdisk + interfaces: + - masquerade: {} + name: default + terminationGracePeriodSeconds: 0 + networks: + - name: default + pod: {} + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + - cloudInitNoCloud: + userData: |- + #cloud-config + password: redhat + chpasswd: { expire: False } + name: cloudinitdisk + +parameters: +- description: VM name + from: 'rhel8-[a-z0-9]{16}' + generate: expression + name: NAME +- name: PVCNAME + description: Name of the PVC with the disk image + required: true + +--- +# Source: dist/templates/rhel8-server-medium.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: rhel8-server-medium-v0.10.0 + annotations: + openshift.io/display-name: "Red Hat Enterprise Linux 8.0+ VM" + description: >- + This template can be used to create a VM suitable for + Red Hat Enterprise Linux 8 and newer. + The template assumes that a PVC is available which is providing the + necessary RHEL disk image. + tags: "hidden,kubevirt,virtualmachine,linux,rhel" + + iconClass: "icon-rhel" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.sockets + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.cpu.threads + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/rhel8.0: Red Hat Enterprise Linux 8.0 or higher + name.os.template.kubevirt.io/rhel8.1: Red Hat Enterprise Linux 8.0 or higher + name.os.template.kubevirt.io/rhel8.2: Red Hat Enterprise Linux 8.0 or higher + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 1610612736 + } + ] + + labels: + os.template.kubevirt.io/rhel8.0: "true" + os.template.kubevirt.io/rhel8.1: "true" + os.template.kubevirt.io/rhel8.2: "true" + workload.template.kubevirt.io/server: "true" + flavor.template.kubevirt.io/medium: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: rhel8-server-medium-v0.10.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: medium + spec: + domain: + + cpu: + sockets: 1 + cores: 1 + threads: 1 + resources: + requests: + memory: 4Gi + devices: + rng: {} + networkInterfaceMultiqueue: true + disks: + - disk: + bus: virtio + name: rootdisk + - disk: + bus: virtio + name: cloudinitdisk + interfaces: + - masquerade: {} + name: default + terminationGracePeriodSeconds: 0 + networks: + - name: default + pod: {} + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + - cloudInitNoCloud: + userData: |- + #cloud-config + password: redhat + chpasswd: { expire: False } + name: cloudinitdisk + +parameters: +- description: VM name + from: 'rhel8-[a-z0-9]{16}' + generate: expression + name: NAME +- name: PVCNAME + description: Name of the PVC with the disk image + required: true + +--- +# Source: dist/templates/rhel8-server-small.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: rhel8-server-small-v0.10.0 + annotations: + openshift.io/display-name: "Red Hat Enterprise Linux 8.0+ VM" + description: >- + This template can be used to create a VM suitable for + Red Hat Enterprise Linux 8 and newer. + The template assumes that a PVC is available which is providing the + necessary RHEL disk image. + tags: "hidden,kubevirt,virtualmachine,linux,rhel" + + iconClass: "icon-rhel" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.sockets + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.cpu.threads + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/rhel8.0: Red Hat Enterprise Linux 8.0 or higher + name.os.template.kubevirt.io/rhel8.1: Red Hat Enterprise Linux 8.0 or higher + name.os.template.kubevirt.io/rhel8.2: Red Hat Enterprise Linux 8.0 or higher + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 1610612736 + } + ] + + labels: + os.template.kubevirt.io/rhel8.0: "true" + os.template.kubevirt.io/rhel8.1: "true" + os.template.kubevirt.io/rhel8.2: "true" + workload.template.kubevirt.io/server: "true" + flavor.template.kubevirt.io/small: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: rhel8-server-small-v0.10.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: small + spec: + domain: + + cpu: + sockets: 1 + cores: 1 + threads: 1 + resources: + requests: + memory: 2Gi + devices: + rng: {} + networkInterfaceMultiqueue: true + disks: + - disk: + bus: virtio + name: rootdisk + - disk: + bus: virtio + name: cloudinitdisk + interfaces: + - masquerade: {} + name: default + terminationGracePeriodSeconds: 0 + networks: + - name: default + pod: {} + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + - cloudInitNoCloud: + userData: |- + #cloud-config + password: redhat + chpasswd: { expire: False } + name: cloudinitdisk + +parameters: +- description: VM name + from: 'rhel8-[a-z0-9]{16}' + generate: expression + name: NAME +- name: PVCNAME + description: Name of the PVC with the disk image + required: true + +--- +# Source: dist/templates/rhel8-server-tiny.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: rhel8-server-tiny-v0.10.0 + annotations: + openshift.io/display-name: "Red Hat Enterprise Linux 8.0+ VM" + description: >- + This template can be used to create a VM suitable for + Red Hat Enterprise Linux 8 and newer. + The template assumes that a PVC is available which is providing the + necessary RHEL disk image. + tags: "hidden,kubevirt,virtualmachine,linux,rhel" + + iconClass: "icon-rhel" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.sockets + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.cpu.threads + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/rhel8.0: Red Hat Enterprise Linux 8.0 or higher + name.os.template.kubevirt.io/rhel8.1: Red Hat Enterprise Linux 8.0 or higher + name.os.template.kubevirt.io/rhel8.2: Red Hat Enterprise Linux 8.0 or higher + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 1610612736 + } + ] + + labels: + os.template.kubevirt.io/rhel8.0: "true" + os.template.kubevirt.io/rhel8.1: "true" + os.template.kubevirt.io/rhel8.2: "true" + workload.template.kubevirt.io/server: "true" + flavor.template.kubevirt.io/tiny: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: rhel8-server-tiny-v0.10.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: tiny + spec: + domain: + + cpu: + sockets: 1 + cores: 1 + threads: 1 + resources: + requests: + memory: 1.5Gi + devices: + rng: {} + networkInterfaceMultiqueue: true + disks: + - disk: + bus: virtio + name: rootdisk + - disk: + bus: virtio + name: cloudinitdisk + interfaces: + - masquerade: {} + name: default + terminationGracePeriodSeconds: 0 + networks: + - name: default + pod: {} + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + - cloudInitNoCloud: + userData: |- + #cloud-config + password: redhat + chpasswd: { expire: False } + name: cloudinitdisk + +parameters: +- description: VM name + from: 'rhel8-[a-z0-9]{16}' + generate: expression + name: NAME +- name: PVCNAME + description: Name of the PVC with the disk image + required: true + +--- +# Source: dist/templates/ubuntu-desktop-large.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: ubuntu-desktop-large-v0.11.0 + annotations: + openshift.io/display-name: "Ubuntu 18.04 (Xenial Xerus) VM" + description: >- + This template can be used to create a VM suitable for + Ubuntu 18.04 (Xenial Xerus). + The template assumes that a PVC is available which is providing the + necessary Ubuntu disk image. + + Recommended disk image (needs to be converted to raw) + http://cloud-images.ubuntu.com/xenial/current/xenial-server-cloudimg-amd64-disk1.img + tags: "hidden,kubevirt,virtualmachine,ubuntu" + + iconClass: "icon-ubuntu" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.sockets + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.cpu.threads + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/ubuntu18.04: Ubuntu 18.04 LTS or higher + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 2147483648 + } + ] + + labels: + os.template.kubevirt.io/ubuntu18.04: "true" + workload.template.kubevirt.io/desktop: "true" + flavor.template.kubevirt.io/large: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: ubuntu-desktop-large-v0.11.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: large + spec: + domain: + + cpu: + sockets: 2 + cores: 1 + threads: 1 + resources: + requests: + memory: 8Gi + devices: + rng: {} + networkInterfaceMultiqueue: true + inputs: + - type: tablet + bus: virtio + name: tablet + disks: + - disk: + bus: virtio + name: rootdisk + - disk: + bus: virtio + name: cloudinitdisk + interfaces: + - masquerade: {} + name: default + terminationGracePeriodSeconds: 0 + networks: + - name: default + pod: {} + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + - cloudInitNoCloud: + userData: |- + #cloud-config + password: ubuntu + chpasswd: { expire: False } + name: cloudinitdisk + +parameters: +- description: VM name + from: 'ubuntu-[a-z0-9]{16}' + generate: expression + name: NAME +- name: PVCNAME + description: Name of the PVC with the disk image + required: true +--- +# Source: dist/templates/ubuntu-desktop-medium.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: ubuntu-desktop-medium-v0.11.0 + annotations: + openshift.io/display-name: "Ubuntu 18.04 (Xenial Xerus) VM" + description: >- + This template can be used to create a VM suitable for + Ubuntu 18.04 (Xenial Xerus). + The template assumes that a PVC is available which is providing the + necessary Ubuntu disk image. + + Recommended disk image (needs to be converted to raw) + http://cloud-images.ubuntu.com/xenial/current/xenial-server-cloudimg-amd64-disk1.img + tags: "hidden,kubevirt,virtualmachine,ubuntu" + + iconClass: "icon-ubuntu" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.sockets + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.cpu.threads + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/ubuntu18.04: Ubuntu 18.04 LTS or higher + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 2147483648 + } + ] + + labels: + os.template.kubevirt.io/ubuntu18.04: "true" + workload.template.kubevirt.io/desktop: "true" + flavor.template.kubevirt.io/medium: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: ubuntu-desktop-medium-v0.11.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: medium + spec: + domain: + + cpu: + sockets: 1 + cores: 1 + threads: 1 + resources: + requests: + memory: 4Gi + devices: + rng: {} + networkInterfaceMultiqueue: true + inputs: + - type: tablet + bus: virtio + name: tablet + disks: + - disk: + bus: virtio + name: rootdisk + - disk: + bus: virtio + name: cloudinitdisk + interfaces: + - masquerade: {} + name: default + terminationGracePeriodSeconds: 0 + networks: + - name: default + pod: {} + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + - cloudInitNoCloud: + userData: |- + #cloud-config + password: ubuntu + chpasswd: { expire: False } + name: cloudinitdisk + +parameters: +- description: VM name + from: 'ubuntu-[a-z0-9]{16}' + generate: expression + name: NAME +- name: PVCNAME + description: Name of the PVC with the disk image + required: true +--- +# Source: dist/templates/ubuntu-desktop-small.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: ubuntu-desktop-small-v0.11.0 + annotations: + openshift.io/display-name: "Ubuntu 18.04 (Xenial Xerus) VM" + description: >- + This template can be used to create a VM suitable for + Ubuntu 18.04 (Xenial Xerus). + The template assumes that a PVC is available which is providing the + necessary Ubuntu disk image. + + Recommended disk image (needs to be converted to raw) + http://cloud-images.ubuntu.com/xenial/current/xenial-server-cloudimg-amd64-disk1.img + tags: "hidden,kubevirt,virtualmachine,ubuntu" + + iconClass: "icon-ubuntu" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.sockets + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.cpu.threads + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/ubuntu18.04: Ubuntu 18.04 LTS or higher + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 2147483648 + } + ] + + labels: + os.template.kubevirt.io/ubuntu18.04: "true" + workload.template.kubevirt.io/desktop: "true" + flavor.template.kubevirt.io/small: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: ubuntu-desktop-small-v0.11.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: small + spec: + domain: + + cpu: + sockets: 1 + cores: 1 + threads: 1 + resources: + requests: + memory: 2Gi + devices: + rng: {} + networkInterfaceMultiqueue: true + inputs: + - type: tablet + bus: virtio + name: tablet + disks: + - disk: + bus: virtio + name: rootdisk + - disk: + bus: virtio + name: cloudinitdisk + interfaces: + - masquerade: {} + name: default + terminationGracePeriodSeconds: 0 + networks: + - name: default + pod: {} + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + - cloudInitNoCloud: + userData: |- + #cloud-config + password: ubuntu + chpasswd: { expire: False } + name: cloudinitdisk + +parameters: +- description: VM name + from: 'ubuntu-[a-z0-9]{16}' + generate: expression + name: NAME +- name: PVCNAME + description: Name of the PVC with the disk image + required: true +--- +# Source: dist/templates/ubuntu-desktop-tiny.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: ubuntu-desktop-tiny-v0.11.0 + annotations: + openshift.io/display-name: "Ubuntu 18.04 (Xenial Xerus) VM" + description: >- + This template can be used to create a VM suitable for + Ubuntu 18.04 (Xenial Xerus). + The template assumes that a PVC is available which is providing the + necessary Ubuntu disk image. + + Recommended disk image (needs to be converted to raw) + http://cloud-images.ubuntu.com/xenial/current/xenial-server-cloudimg-amd64-disk1.img + tags: "hidden,kubevirt,virtualmachine,ubuntu" + + iconClass: "icon-ubuntu" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.sockets + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.cpu.threads + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/ubuntu18.04: Ubuntu 18.04 LTS or higher + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 2147483648 + } + ] + + labels: + os.template.kubevirt.io/ubuntu18.04: "true" + workload.template.kubevirt.io/desktop: "true" + flavor.template.kubevirt.io/tiny: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: ubuntu-desktop-tiny-v0.11.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: tiny + spec: + domain: + + cpu: + sockets: 1 + cores: 1 + threads: 1 + resources: + requests: + memory: 2Gi + devices: + rng: {} + networkInterfaceMultiqueue: true + inputs: + - type: tablet + bus: virtio + name: tablet + disks: + - disk: + bus: virtio + name: rootdisk + - disk: + bus: virtio + name: cloudinitdisk + interfaces: + - masquerade: {} + name: default + terminationGracePeriodSeconds: 0 + networks: + - name: default + pod: {} + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + - cloudInitNoCloud: + userData: |- + #cloud-config + password: ubuntu + chpasswd: { expire: False } + name: cloudinitdisk + +parameters: +- description: VM name + from: 'ubuntu-[a-z0-9]{16}' + generate: expression + name: NAME +- name: PVCNAME + description: Name of the PVC with the disk image + required: true +--- +# Source: dist/templates/win2k12r2-desktop-large.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: win2k12r2-desktop-large-v0.7.0 + annotations: + openshift.io/display-name: "Microsoft Windows Server 2012 R2 VM" + description: >- + This template can be used to create a VM suitable for + Microsoft Windows Server 2012 R2. + The template assumes that a PVC is available which is providing the + necessary Windows disk image. + tags: "hidden,kubevirt,virtualmachine,windows" + iconClass: "icon-windows" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + defaults.template.kubevirt.io/network: default + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/win2k19: Microsoft Windows Server 2019 + name.os.template.kubevirt.io/win2k16: Microsoft Windows Server 2016 + name.os.template.kubevirt.io/win2k12r2: Microsoft Windows Server 2012 R2 + name.os.template.kubevirt.io/win2k8r2: Microsoft Windows Server 2008 R2 + name.os.template.kubevirt.io/win2k8: Microsoft Windows Server 2008 + name.os.template.kubevirt.io/win10: Microsoft Windows 10 + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 536870912 + }, { + "name": "windows-virtio-bus", + "path": "jsonpath::.spec.domain.devices.disks[*].disk.bus", + "rule": "enum", + "message": "virto disk bus type has better performance, install virtio drivers in VM and change bus type", + "values": ["virtio"], + "justWarning": true + }, { + "name": "windows-disk-bus", + "path": "jsonpath::.spec.domain.devices.disks[*].disk.bus", + "rule": "enum", + "message": "disk bus has to be either virtio or sata", + "values": ["virtio", "sata"] + }, { + "name": "windows-cd-bus", + "path": "jsonpath::.spec.domain.devices.disks[*].cdrom.bus", + "valid": "jsonpath::.spec.domain.devices.disks[*].cdrom", + "rule": "enum", + "message": "cd bus has to be sata", + "values": ["sata"] + } + ] + + labels: + os.template.kubevirt.io/win2k19: "true" + os.template.kubevirt.io/win2k16: "true" + os.template.kubevirt.io/win2k12r2: "true" + os.template.kubevirt.io/win2k8r2: "true" + os.template.kubevirt.io/win2k8: "true" + os.template.kubevirt.io/win10: "true" + workload.template.kubevirt.io/desktop: "true" + flavor.template.kubevirt.io/large: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: win2k12r2-desktop-large-v0.7.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: large + spec: + domain: + clock: + utc: {} + timer: + hpet: + present: false + pit: + tickPolicy: delay + rtc: + tickPolicy: catchup + hyperv: {} + cpu: + sockets: 2 + cores: 1 + threads: 1 + resources: + requests: + memory: 8Gi + features: + acpi: {} + apic: {} + hyperv: + relaxed: {} + vapic: {} + spinlocks: + spinlocks: 8191 + devices: + disks: + - disk: + bus: sata + name: rootdisk + interfaces: + - masquerade: {} + model: e1000e + name: default + inputs: + - type: tablet + bus: usb + name: tablet + terminationGracePeriodSeconds: 0 + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + networks: + - name: default + pod: {} + +parameters: +- name: NAME + description: VM name + generate: expression + from: "win2k12-[a-z0-9]{6}" +- name: PVCNAME + description: Name of the PVC with the disk image + required: true +--- +# Source: dist/templates/win2k12r2-desktop-medium.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: win2k12r2-desktop-medium-v0.7.0 + annotations: + openshift.io/display-name: "Microsoft Windows Server 2012 R2 VM" + description: >- + This template can be used to create a VM suitable for + Microsoft Windows Server 2012 R2. + The template assumes that a PVC is available which is providing the + necessary Windows disk image. + tags: "hidden,kubevirt,virtualmachine,windows" + iconClass: "icon-windows" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + defaults.template.kubevirt.io/network: default + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/win2k19: Microsoft Windows Server 2019 + name.os.template.kubevirt.io/win2k16: Microsoft Windows Server 2016 + name.os.template.kubevirt.io/win2k12r2: Microsoft Windows Server 2012 R2 + name.os.template.kubevirt.io/win2k8r2: Microsoft Windows Server 2008 R2 + name.os.template.kubevirt.io/win2k8: Microsoft Windows Server 2008 + name.os.template.kubevirt.io/win10: Microsoft Windows 10 + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 536870912 + }, { + "name": "windows-virtio-bus", + "path": "jsonpath::.spec.domain.devices.disks[*].disk.bus", + "rule": "enum", + "message": "virto disk bus type has better performance, install virtio drivers in VM and change bus type", + "values": ["virtio"], + "justWarning": true + }, { + "name": "windows-disk-bus", + "path": "jsonpath::.spec.domain.devices.disks[*].disk.bus", + "rule": "enum", + "message": "disk bus has to be either virtio or sata", + "values": ["virtio", "sata"] + }, { + "name": "windows-cd-bus", + "path": "jsonpath::.spec.domain.devices.disks[*].cdrom.bus", + "valid": "jsonpath::.spec.domain.devices.disks[*].cdrom", + "rule": "enum", + "message": "cd bus has to be sata", + "values": ["sata"] + } + ] + + labels: + os.template.kubevirt.io/win2k19: "true" + os.template.kubevirt.io/win2k16: "true" + os.template.kubevirt.io/win2k12r2: "true" + os.template.kubevirt.io/win2k8r2: "true" + os.template.kubevirt.io/win2k8: "true" + os.template.kubevirt.io/win10: "true" + workload.template.kubevirt.io/desktop: "true" + flavor.template.kubevirt.io/medium: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: win2k12r2-desktop-medium-v0.7.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: medium + spec: + domain: + clock: + utc: {} + timer: + hpet: + present: false + pit: + tickPolicy: delay + rtc: + tickPolicy: catchup + hyperv: {} + cpu: + sockets: 1 + cores: 1 + threads: 1 + resources: + requests: + memory: 4Gi + features: + acpi: {} + apic: {} + hyperv: + relaxed: {} + vapic: {} + spinlocks: + spinlocks: 8191 + devices: + disks: + - disk: + bus: sata + name: rootdisk + interfaces: + - masquerade: {} + model: e1000e + name: default + inputs: + - type: tablet + bus: usb + name: tablet + terminationGracePeriodSeconds: 0 + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + networks: + - name: default + pod: {} + +parameters: +- name: NAME + description: VM name + generate: expression + from: "win2k12-[a-z0-9]{6}" +- name: PVCNAME + description: Name of the PVC with the disk image + required: true +--- +# Source: dist/templates/win2k12r2-server-large.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: win2k12r2-server-large-v0.7.0 + annotations: + openshift.io/display-name: "Microsoft Windows Server 2012 R2 VM" + description: >- + This template can be used to create a VM suitable for + Microsoft Windows Server 2012 R2. + The template assumes that a PVC is available which is providing the + necessary Windows disk image. + tags: "hidden,kubevirt,virtualmachine,windows" + iconClass: "icon-windows" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + defaults.template.kubevirt.io/network: default + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/win2k19: Microsoft Windows Server 2019 + name.os.template.kubevirt.io/win2k16: Microsoft Windows Server 2016 + name.os.template.kubevirt.io/win2k12r2: Microsoft Windows Server 2012 R2 + name.os.template.kubevirt.io/win2k8r2: Microsoft Windows Server 2008 R2 + name.os.template.kubevirt.io/win2k8: Microsoft Windows Server 2008 + name.os.template.kubevirt.io/win10: Microsoft Windows 10 + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 536870912 + }, { + "name": "windows-virtio-bus", + "path": "jsonpath::.spec.domain.devices.disks[*].disk.bus", + "rule": "enum", + "message": "virto disk bus type has better performance, install virtio drivers in VM and change bus type", + "values": ["virtio"], + "justWarning": true + }, { + "name": "windows-disk-bus", + "path": "jsonpath::.spec.domain.devices.disks[*].disk.bus", + "rule": "enum", + "message": "disk bus has to be either virtio or sata", + "values": ["virtio", "sata"] + }, { + "name": "windows-cd-bus", + "path": "jsonpath::.spec.domain.devices.disks[*].cdrom.bus", + "valid": "jsonpath::.spec.domain.devices.disks[*].cdrom", + "rule": "enum", + "message": "cd bus has to be sata", + "values": ["sata"] + } + ] + + labels: + os.template.kubevirt.io/win2k19: "true" + os.template.kubevirt.io/win2k16: "true" + os.template.kubevirt.io/win2k12r2: "true" + os.template.kubevirt.io/win2k8r2: "true" + os.template.kubevirt.io/win2k8: "true" + os.template.kubevirt.io/win10: "true" + workload.template.kubevirt.io/server: "true" + flavor.template.kubevirt.io/large: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: win2k12r2-server-large-v0.7.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: large + spec: + domain: + clock: + utc: {} + timer: + hpet: + present: false + pit: + tickPolicy: delay + rtc: + tickPolicy: catchup + hyperv: {} + cpu: + sockets: 2 + cores: 1 + threads: 1 + resources: + requests: + memory: 8Gi + features: + acpi: {} + apic: {} + hyperv: + relaxed: {} + vapic: {} + spinlocks: + spinlocks: 8191 + devices: + disks: + - disk: + bus: sata + name: rootdisk + interfaces: + - masquerade: {} + model: e1000e + name: default + terminationGracePeriodSeconds: 0 + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + networks: + - name: default + pod: {} + +parameters: +- name: NAME + description: VM name + generate: expression + from: "win2k12-[a-z0-9]{6}" +- name: PVCNAME + description: Name of the PVC with the disk image + required: true +--- +# Source: dist/templates/win2k12r2-server-medium.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: win2k12r2-server-medium-v0.7.0 + annotations: + openshift.io/display-name: "Microsoft Windows Server 2012 R2 VM" + description: >- + This template can be used to create a VM suitable for + Microsoft Windows Server 2012 R2. + The template assumes that a PVC is available which is providing the + necessary Windows disk image. + tags: "hidden,kubevirt,virtualmachine,windows" + iconClass: "icon-windows" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + defaults.template.kubevirt.io/network: default + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/win2k19: Microsoft Windows Server 2019 + name.os.template.kubevirt.io/win2k16: Microsoft Windows Server 2016 + name.os.template.kubevirt.io/win2k12r2: Microsoft Windows Server 2012 R2 + name.os.template.kubevirt.io/win2k8r2: Microsoft Windows Server 2008 R2 + name.os.template.kubevirt.io/win2k8: Microsoft Windows Server 2008 + name.os.template.kubevirt.io/win10: Microsoft Windows 10 + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 536870912 + }, { + "name": "windows-virtio-bus", + "path": "jsonpath::.spec.domain.devices.disks[*].disk.bus", + "rule": "enum", + "message": "virto disk bus type has better performance, install virtio drivers in VM and change bus type", + "values": ["virtio"], + "justWarning": true + }, { + "name": "windows-disk-bus", + "path": "jsonpath::.spec.domain.devices.disks[*].disk.bus", + "rule": "enum", + "message": "disk bus has to be either virtio or sata", + "values": ["virtio", "sata"] + }, { + "name": "windows-cd-bus", + "path": "jsonpath::.spec.domain.devices.disks[*].cdrom.bus", + "valid": "jsonpath::.spec.domain.devices.disks[*].cdrom", + "rule": "enum", + "message": "cd bus has to be sata", + "values": ["sata"] + } + ] + + labels: + os.template.kubevirt.io/win2k19: "true" + os.template.kubevirt.io/win2k16: "true" + os.template.kubevirt.io/win2k12r2: "true" + os.template.kubevirt.io/win2k8r2: "true" + os.template.kubevirt.io/win2k8: "true" + os.template.kubevirt.io/win10: "true" + workload.template.kubevirt.io/server: "true" + flavor.template.kubevirt.io/medium: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: win2k12r2-server-medium-v0.7.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: medium + spec: + domain: + clock: + utc: {} + timer: + hpet: + present: false + pit: + tickPolicy: delay + rtc: + tickPolicy: catchup + hyperv: {} + cpu: + sockets: 1 + cores: 1 + threads: 1 + resources: + requests: + memory: 4Gi + features: + acpi: {} + apic: {} + hyperv: + relaxed: {} + vapic: {} + spinlocks: + spinlocks: 8191 + devices: + disks: + - disk: + bus: sata + name: rootdisk + interfaces: + - masquerade: {} + model: e1000e + name: default + terminationGracePeriodSeconds: 0 + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + networks: + - name: default + pod: {} + +parameters: +- name: NAME + description: VM name + generate: expression + from: "win2k12-[a-z0-9]{6}" +- name: PVCNAME + description: Name of the PVC with the disk image + required: true +--- +# Source: dist/templates/windows10-desktop-large.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: windows10-desktop-large-v0.7.0 + annotations: + openshift.io/display-name: "Microsoft Windows 10 VM" + description: >- + This template can be used to create a VM suitable for + Microsoft Windows 10. + The template assumes that a PVC is available which is providing the + necessary Windows disk image. + tags: "hidden,kubevirt,virtualmachine,windows" + iconClass: "icon-windows" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + defaults.template.kubevirt.io/network: default + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/win10: Microsoft Windows 10 + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 2147483648 + }, { + "name": "windows-virtio-bus", + "path": "jsonpath::.spec.domain.devices.disks[*].disk.bus", + "rule": "enum", + "message": "virto disk bus type has better performance, install virtio drivers in VM and change bus type", + "values": ["virtio"], + "justWarning": true + }, { + "name": "windows-disk-bus", + "path": "jsonpath::.spec.domain.devices.disks[*].disk.bus", + "rule": "enum", + "message": "disk bus has to be either virtio or sata", + "values": ["virtio", "sata"] + }, { + "name": "windows-cd-bus", + "path": "jsonpath::.spec.domain.devices.disks[*].cdrom.bus", + "valid": "jsonpath::.spec.domain.devices.disks[*].cdrom", + "rule": "enum", + "message": "cd bus has to be sata", + "values": ["sata"] + } + ] + + labels: + os.template.kubevirt.io/win10: "true" + workload.template.kubevirt.io/desktop: "true" + flavor.template.kubevirt.io/large: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: windows10-desktop-large-v0.7.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: large + spec: + domain: + clock: + utc: {} + timer: + hpet: + present: false + pit: + tickPolicy: delay + rtc: + tickPolicy: catchup + hyperv: {} + cpu: + sockets: 2 + cores: 1 + threads: 1 + resources: + requests: + memory: 8Gi + features: + acpi: {} + apic: {} + hyperv: + relaxed: {} + vapic: {} + spinlocks: + spinlocks: 8191 + devices: + disks: + - disk: + bus: sata + name: rootdisk + interfaces: + - masquerade: {} + model: e1000e + name: default + inputs: + - type: tablet + bus: usb + name: tablet + terminationGracePeriodSeconds: 0 + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + networks: + - name: default + pod: {} + +parameters: +- name: NAME + description: VM name + generate: expression + from: "windows-[a-z0-9]{6}" +- name: PVCNAME + description: Name of the PVC with the disk image + required: true +--- +# Source: dist/templates/windows10-desktop-medium.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: windows10-desktop-medium-v0.7.0 + annotations: + openshift.io/display-name: "Microsoft Windows 10 VM" + description: >- + This template can be used to create a VM suitable for + Microsoft Windows 10. + The template assumes that a PVC is available which is providing the + necessary Windows disk image. + tags: "hidden,kubevirt,virtualmachine,windows" + iconClass: "icon-windows" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + defaults.template.kubevirt.io/network: default + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/win10: Microsoft Windows 10 + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 2147483648 + }, { + "name": "windows-virtio-bus", + "path": "jsonpath::.spec.domain.devices.disks[*].disk.bus", + "rule": "enum", + "message": "virto disk bus type has better performance, install virtio drivers in VM and change bus type", + "values": ["virtio"], + "justWarning": true + }, { + "name": "windows-disk-bus", + "path": "jsonpath::.spec.domain.devices.disks[*].disk.bus", + "rule": "enum", + "message": "disk bus has to be either virtio or sata", + "values": ["virtio", "sata"] + }, { + "name": "windows-cd-bus", + "path": "jsonpath::.spec.domain.devices.disks[*].cdrom.bus", + "valid": "jsonpath::.spec.domain.devices.disks[*].cdrom", + "rule": "enum", + "message": "cd bus has to be sata", + "values": ["sata"] + } + ] + + labels: + os.template.kubevirt.io/win10: "true" + workload.template.kubevirt.io/desktop: "true" + flavor.template.kubevirt.io/medium: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: windows10-desktop-medium-v0.7.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: medium + spec: + domain: + clock: + utc: {} + timer: + hpet: + present: false + pit: + tickPolicy: delay + rtc: + tickPolicy: catchup + hyperv: {} + cpu: + sockets: 1 + cores: 1 + threads: 1 + resources: + requests: + memory: 4Gi + features: + acpi: {} + apic: {} + hyperv: + relaxed: {} + vapic: {} + spinlocks: + spinlocks: 8191 + devices: + disks: + - disk: + bus: sata + name: rootdisk + interfaces: + - masquerade: {} + model: e1000e + name: default + inputs: + - type: tablet + bus: usb + name: tablet + terminationGracePeriodSeconds: 0 + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + networks: + - name: default + pod: {} + +parameters: +- name: NAME + description: VM name + generate: expression + from: "windows-[a-z0-9]{6}" +- name: PVCNAME + description: Name of the PVC with the disk image + required: true +--- +# Source: dist/templates/windows-server-large.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: windows-server-large-v0.7.0 + annotations: + openshift.io/display-name: "Microsoft Windows Server 2012 R2+ VM" + description: >- + This template can be used to create a VM suitable for + Microsoft Windows Server 2012 R2 and newer. + The template assumes that a PVC is available which is providing the + necessary Windows disk image. + tags: "hidden,kubevirt,virtualmachine,windows" + iconClass: "icon-windows" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + defaults.template.kubevirt.io/network: default + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/win2k19: Microsoft Windows Server 2019 + name.os.template.kubevirt.io/win2k16: Microsoft Windows Server 2016 + name.os.template.kubevirt.io/win2k12r2: Microsoft Windows Server 2012 R2 + name.os.template.kubevirt.io/win2k8r2: Microsoft Windows Server 2008 R2 + name.os.template.kubevirt.io/win2k8: Microsoft Windows Server 2008 + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 536870912 + }, { + "name": "windows-virtio-bus", + "path": "jsonpath::.spec.domain.devices.disks[*].disk.bus", + "rule": "enum", + "message": "virto disk bus type has better performance, install virtio drivers in VM and change bus type", + "values": ["virtio"], + "justWarning": true + }, { + "name": "windows-disk-bus", + "path": "jsonpath::.spec.domain.devices.disks[*].disk.bus", + "rule": "enum", + "message": "disk bus has to be either virtio or sata", + "values": ["virtio", "sata"] + }, { + "name": "windows-cd-bus", + "path": "jsonpath::.spec.domain.devices.disks[*].cdrom.bus", + "valid": "jsonpath::.spec.domain.devices.disks[*].cdrom", + "rule": "enum", + "message": "cd bus has to be sata", + "values": ["sata"] + } + ] + + labels: + os.template.kubevirt.io/win2k19: "true" + os.template.kubevirt.io/win2k16: "true" + os.template.kubevirt.io/win2k12r2: "true" + os.template.kubevirt.io/win2k8r2: "true" + os.template.kubevirt.io/win2k8: "true" + workload.template.kubevirt.io/server: "true" + flavor.template.kubevirt.io/large: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: windows-server-large-v0.7.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: large + spec: + domain: + clock: + utc: {} + timer: + hpet: + present: false + pit: + tickPolicy: delay + rtc: + tickPolicy: catchup + hyperv: {} + cpu: + sockets: 2 + cores: 1 + threads: 1 + resources: + requests: + memory: 8Gi + features: + acpi: {} + apic: {} + hyperv: + relaxed: {} + vapic: {} + spinlocks: + spinlocks: 8191 + devices: + disks: + - disk: + bus: sata + name: rootdisk + interfaces: + - masquerade: {} + model: e1000e + name: default + terminationGracePeriodSeconds: 0 + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + networks: + - name: default + pod: {} + +parameters: +- name: NAME + description: VM name + generate: expression + from: "windows-[a-z0-9]{6}" +- name: PVCNAME + description: Name of the PVC with the disk image + required: true +--- +# Source: dist/templates/windows-server-medium.yaml +apiVersion: template.openshift.io/v1 +kind: Template +metadata: + name: windows-server-medium-v0.7.0 + annotations: + openshift.io/display-name: "Microsoft Windows Server 2012 R2+ VM" + description: >- + This template can be used to create a VM suitable for + Microsoft Windows Server 2012 R2 and newer. + The template assumes that a PVC is available which is providing the + necessary Windows disk image. + tags: "hidden,kubevirt,virtualmachine,windows" + iconClass: "icon-windows" + openshift.io/provider-display-name: "KubeVirt" + openshift.io/documentation-url: "https://github.com/kubevirt/common-templates" + openshift.io/support-url: "https://github.com/kubevirt/common-templates/issues" + template.openshift.io/bindable: "false" + + template.kubevirt.io/version: v1alpha1 + defaults.template.kubevirt.io/disk: rootdisk + defaults.template.kubevirt.io/network: default + template.kubevirt.io/editable: | + /objects[0].spec.template.spec.domain.cpu.cores + /objects[0].spec.template.spec.domain.resources.requests.memory + /objects[0].spec.template.spec.domain.devices.disks + /objects[0].spec.template.spec.volumes + /objects[0].spec.template.spec.networks + + name.os.template.kubevirt.io/win2k19: Microsoft Windows Server 2019 + name.os.template.kubevirt.io/win2k16: Microsoft Windows Server 2016 + name.os.template.kubevirt.io/win2k12r2: Microsoft Windows Server 2012 R2 + name.os.template.kubevirt.io/win2k8r2: Microsoft Windows Server 2008 R2 + name.os.template.kubevirt.io/win2k8: Microsoft Windows Server 2008 + + validations: | + [ + { + "name": "minimal-required-memory", + "path": "jsonpath::.spec.domain.resources.requests.memory", + "rule": "integer", + "message": "This VM requires more memory.", + "min": 536870912 + }, { + "name": "windows-virtio-bus", + "path": "jsonpath::.spec.domain.devices.disks[*].disk.bus", + "rule": "enum", + "message": "virto disk bus type has better performance, install virtio drivers in VM and change bus type", + "values": ["virtio"], + "justWarning": true + }, { + "name": "windows-disk-bus", + "path": "jsonpath::.spec.domain.devices.disks[*].disk.bus", + "rule": "enum", + "message": "disk bus has to be either virtio or sata", + "values": ["virtio", "sata"] + }, { + "name": "windows-cd-bus", + "path": "jsonpath::.spec.domain.devices.disks[*].cdrom.bus", + "valid": "jsonpath::.spec.domain.devices.disks[*].cdrom", + "rule": "enum", + "message": "cd bus has to be sata", + "values": ["sata"] + } + ] + + labels: + os.template.kubevirt.io/win2k19: "true" + os.template.kubevirt.io/win2k16: "true" + os.template.kubevirt.io/win2k12r2: "true" + os.template.kubevirt.io/win2k8r2: "true" + os.template.kubevirt.io/win2k8: "true" + workload.template.kubevirt.io/server: "true" + flavor.template.kubevirt.io/medium: "true" + template.kubevirt.io/type: "base" + template.kubevirt.io/version: "v0.11.1" + +objects: +- apiVersion: kubevirt.io/v1alpha3 + kind: VirtualMachine + metadata: + name: ${NAME} + labels: + vm.kubevirt.io/template: windows-server-medium-v0.7.0 + vm.kubevirt.io/template.version: "v0.11.1" + vm.kubevirt.io/template.revision: "1" + app: ${NAME} + spec: + running: false + template: + metadata: + labels: + kubevirt.io/domain: ${NAME} + kubevirt.io/size: medium + spec: + domain: + clock: + utc: {} + timer: + hpet: + present: false + pit: + tickPolicy: delay + rtc: + tickPolicy: catchup + hyperv: {} + cpu: + sockets: 1 + cores: 1 + threads: 1 + resources: + requests: + memory: 4Gi + features: + acpi: {} + apic: {} + hyperv: + relaxed: {} + vapic: {} + spinlocks: + spinlocks: 8191 + devices: + disks: + - disk: + bus: sata + name: rootdisk + interfaces: + - masquerade: {} + model: e1000e + name: default + terminationGracePeriodSeconds: 0 + volumes: + - name: rootdisk + persistentVolumeClaim: + claimName: ${PVCNAME} + networks: + - name: default + pod: {} + +parameters: +- name: NAME + description: VM name + generate: expression + from: "windows-[a-z0-9]{6}" +- name: PVCNAME + description: Name of the PVC with the disk image + required: true