kubernetesbare-metalk8s-sig-cluster-lifecycleawskubesprayhigh-availabilityansiblekubernetes-clustergce
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
59 lines
1.9 KiB
59 lines
1.9 KiB
---
|
|
apiVersion: kubevirt.io/v1
|
|
kind: VirtualMachineInstance
|
|
metadata:
|
|
generateName: {{ cloud_image }}-
|
|
namespace: {{ pod_namespace }}
|
|
annotations:
|
|
kubespray.com/ci.template-path: "tests/cloud_playbooks/roles/packet-ci/templates/vm.yml.j2"
|
|
ansible_groups: "{{ node_groups | join(',') }}"
|
|
inventory_name: "{{ name | d(cloud_image ~ '-' ~ index) }}"
|
|
# This does not use a dns prefix because dots are hard to escape with map(attribute=) in Jinja
|
|
labels:
|
|
kubevirt.io/os: {{ cloud_image }}
|
|
kubevirt.io/size: small
|
|
ci_job_id: "{{ ci_job_id }}"
|
|
ci_job_name: "{{ lookup('ansible.builtin.env', 'CI_JOB_NAME_SLUG') }}"
|
|
# leverage the Kubernetes GC for resources cleanup
|
|
ownerReferences:
|
|
- apiVersion: v1
|
|
kind: Pod
|
|
name: "{{ pod_name }}"
|
|
uid: "{{ pod_uid }}"
|
|
spec:
|
|
domain:
|
|
devices:
|
|
blockMultiQueue: true
|
|
disks:
|
|
- disk:
|
|
bus: virtio
|
|
name: containervolume
|
|
cache: writethrough
|
|
- disk:
|
|
bus: virtio
|
|
name: cloudinitvolume
|
|
interfaces:
|
|
- name: default
|
|
bridge: {}
|
|
cpu:
|
|
cores: {{ vm_cpu_cores }}
|
|
sockets: {{ vm_cpu_sockets }}
|
|
threads: {{ vm_cpu_threads }}
|
|
resources:
|
|
requests:
|
|
memory: "{{ vm_memory * memory_allocation_ratio }}Mi"
|
|
cpu: {{ vm_cpu_cores * cpu_allocation_ratio }}
|
|
limits:
|
|
memory: "{{ vm_memory }}Mi"
|
|
cpu: {{ vm_cpu_cores }}
|
|
networks:
|
|
- name: default
|
|
pod: {}
|
|
terminationGracePeriodSeconds: 0
|
|
volumes:
|
|
- name: containervolume
|
|
containerDisk:
|
|
image: quay.io/kubespray/vm-{{ cloud_image }}
|
|
- name: cloudinitvolume
|
|
cloudInit{{ 'ConfigDrive' if cloud_image.startswith('flatcar') else 'NoCloud' }}:
|
|
userDataBase64: '{{ ((ignition_config | to_json) if cloud_image.startswith('flatcar') else cloudinit_config) | b64encode }}'
|