* Update pre-commit actions This was done by running "pre-commit autoupdate --freeze". * Remove pre-commit only dependencies from requirements.in Including them in the file would create the illusion that those were the versions actually used in CI, but they are not. The exact versions are determined by the pre-commit hooks which are pinned in .pre-commit-config.yaml. * Ansible Lint: Fix role-name[path] * Ansible Lint: Fix name[play] * Ansible Lint: Fix key-order[task] * Ansible Lint: Fix jinja[spacing] * Ansible Lint: Fix no-free-form * Ansible Lint: Fix var-naming[no-reserved] * Ansible Lint: Fix yaml[comments] * Ansible Lint: Fix yaml[line-length] * Ansible Lint: Fix name[casing] * Ansible Lint: Fix no-changed-when * Ansible Lint: Fix fqcn[action] * Ansible Lint: Fix args[module] * Improve task naming
52 lines
2.1 KiB
YAML
52 lines
2.1 KiB
YAML
---
|
|
- name: Apply overrides
|
|
hosts: all
|
|
tasks:
|
|
- name: Override host variables (1/2)
|
|
ansible.builtin.set_fact:
|
|
# See:
|
|
# https://github.com/flannel-io/flannel/blob/67d603aaf45ef80f5dd39f43714fc5e6f8a637eb/Documentation/troubleshooting.md#Vagrant
|
|
flannel_iface: eth1
|
|
|
|
# In this scenario, we have multiple interfaces that the VIP could be
|
|
# broadcasted on. Since we have assigned a dedicated private network
|
|
# here, let's make sure that it is used.
|
|
kube_vip_iface: eth1
|
|
|
|
# The test VMs might be a bit slow, so we give them more time to join the cluster:
|
|
retry_count: 45
|
|
|
|
# IPv6 configuration
|
|
# ######################################################################
|
|
|
|
# The API server will be reachable on IPv6 only
|
|
apiserver_endpoint: fdad:bad:ba55::333
|
|
|
|
# We give MetalLB address space for both IPv4 and IPv6
|
|
metal_lb_ip_range:
|
|
- fdad:bad:ba55::1b:0/112
|
|
- 192.168.123.80-192.168.123.90
|
|
|
|
# k3s_node_ip is by default set to the IPv4 address of flannel_iface.
|
|
# We want IPv6 addresses here of course, so we just specify them
|
|
# manually below.
|
|
k3s_node_ip: "{{ node_ipv4 }},{{ node_ipv6 }}"
|
|
|
|
- name: Override host variables (2/2)
|
|
# Since "extra_args" depends on "k3s_node_ip" and "flannel_iface" we have
|
|
# to set this AFTER overriding the both of them.
|
|
ansible.builtin.set_fact:
|
|
# A few extra server args are necessary:
|
|
# - the network policy needs to be disabled.
|
|
# - we need to manually specify the subnets for services and pods, as
|
|
# the default has IPv4 ranges only.
|
|
extra_server_args: >-
|
|
{{ extra_args }}
|
|
--tls-san {{ apiserver_endpoint }}
|
|
{{ '--node-taint node-role.kubernetes.io/master=true:NoSchedule' if k3s_master_taint else '' }}
|
|
--disable servicelb
|
|
--disable traefik
|
|
--disable-network-policy
|
|
--cluster-cidr=10.42.0.0/16,fdad:bad:ba55:4200::/56
|
|
--service-cidr=10.43.0.0/16,fdad:bad:ba55:4300::/108
|