From 2fba94c5e5a57d6d3bd1147641beb62e361ce14b Mon Sep 17 00:00:00 2001
From: orange-llajeanne <71634751+orange-llajeanne@users.noreply.github.com>
Date: Mon, 13 Jun 2022 18:40:12 +0200
Subject: [PATCH] fix a typo in the "matallb_auto_assign" variable name (#8949)

* fix a typo in the "matallb_auto_assign" variable name

* add metallb check to fail when deprecated "matallb_auto_assign" variable is defined
---
 inventory/sample/group_vars/k8s_cluster/addons.yml          | 2 +-
 roles/kubernetes-apps/metallb/defaults/main.yml             | 2 +-
 roles/kubernetes-apps/metallb/tasks/main.yml                | 6 ++++++
 .../kubernetes-apps/metallb/templates/metallb-config.yml.j2 | 2 +-
 4 files changed, 9 insertions(+), 3 deletions(-)

diff --git a/inventory/sample/group_vars/k8s_cluster/addons.yml b/inventory/sample/group_vars/k8s_cluster/addons.yml
index 51c5dd81e..e7f64ce2e 100644
--- a/inventory/sample/group_vars/k8s_cluster/addons.yml
+++ b/inventory/sample/group_vars/k8s_cluster/addons.yml
@@ -165,7 +165,7 @@ metallb_speaker_enabled: true
 # metallb_ip_range:
 #   - "10.5.0.50-10.5.0.99"
 # metallb_pool_name: "loadbalanced"
-# matallb_auto_assign: true
+# metallb_auto_assign: true
 # metallb_speaker_nodeselector:
 #   kubernetes.io/os: "linux"
 # metallb_controller_nodeselector:
diff --git a/roles/kubernetes-apps/metallb/defaults/main.yml b/roles/kubernetes-apps/metallb/defaults/main.yml
index cd2162e47..1d2be5301 100644
--- a/roles/kubernetes-apps/metallb/defaults/main.yml
+++ b/roles/kubernetes-apps/metallb/defaults/main.yml
@@ -19,4 +19,4 @@ metallb_speaker_tolerations:
     operator: Exists
 metallb_controller_tolerations: []
 metallb_pool_name: "loadbalanced"
-matallb_auto_assign: true
+metallb_auto_assign: true
diff --git a/roles/kubernetes-apps/metallb/tasks/main.yml b/roles/kubernetes-apps/metallb/tasks/main.yml
index 952275a8d..e5920fcc7 100644
--- a/roles/kubernetes-apps/metallb/tasks/main.yml
+++ b/roles/kubernetes-apps/metallb/tasks/main.yml
@@ -18,6 +18,12 @@
     - metallb_protocol == 'bgp' and metallb_speaker_enabled
     - metallb_peers is not defined or not metallb_peers
 
+- name: Kubernetes Apps | Check that the deprecated 'matallb_auto_assign' variable is not used anymore
+  fail:
+    msg: "'matallb_auto_assign' configuration variable is deprecated, please use 'metallb_auto_assign' instead"
+  when:
+    - matallb_auto_assign is defined
+
 - name: Kubernetes Apps | Check AppArmor status
   command: which apparmor_parser
   register: apparmor_status
diff --git a/roles/kubernetes-apps/metallb/templates/metallb-config.yml.j2 b/roles/kubernetes-apps/metallb/templates/metallb-config.yml.j2
index 9bd753871..35f3d4e7e 100644
--- a/roles/kubernetes-apps/metallb/templates/metallb-config.yml.j2
+++ b/roles/kubernetes-apps/metallb/templates/metallb-config.yml.j2
@@ -31,7 +31,7 @@ data:
 {% for ip_range in metallb_ip_range %}
       - {{ ip_range }}
 {% endfor %}
-{% if matallb_auto_assign == false %}
+{% if metallb_auto_assign == false %}
       auto-assign: false
 {% endif %}
 {% if metallb_additional_address_pools is defined %}{% for pool in metallb_additional_address_pools %}
-- 
GitLab