Upstream salt-formula-maas change [1] gated applying "maas_sshprefs"
low state by `region.sshprefs` being declared in reclass, which is
not true for our model.
Mend our region.sls patch to pass mcp.rsa.pub to MaaS unconditionally.
This fixes baremetal SSH login with mcp.rsa.
While at it, fix duplicate SSH key upload on MaaS state retry.
JIRA: FUEL-281
[1] https://github.com/salt-formulas/salt-formula-maas/commit/
ec61dd6
Change-Id: I93941a689058f9f48f34861898fbe3ee6ce4e2b4
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
---
diff --git a/maas/region.sls b/maas/region.sls
-index d3227ca..8a2243d 100644
--- a/maas/region.sls
+++ b/maas/region.sls
-@@ -179,8 +179,14 @@
+@@ -242,12 +242,16 @@
+ - require:
- module: maas_config
+-{%- if region.get('sshprefs', False) %}
maas_sshprefs:
- module.run:
- - name: maas.process_sshprefs
+# - name: maas.process_sshprefs
+# - require:
+ cmd.run:
-+ - name: "maas login {{ region.admin.username }} http://{{ region.bind.host }}:5240/MAAS/api/2.0 - < /var/lib/maas/.maas_credentials && SSH_KEY=$(cat authorized_keys | head -1) && maas opnfv sshkeys create \"key=$SSH_KEY\""
++ - name: "maas login {{ region.admin.username }} http://{{ region.bind.host }}:5240/MAAS/api/2.0 - < /var/lib/maas/.maas_credentials && SSH_KEY=$(cat authorized_keys | head -1) && (maas opnfv sshkeys read | grep -q \"$SSH_KEY\" || maas opnfv sshkeys create \"key=$SSH_KEY\")"
+ - cwd: "/home/ubuntu/.ssh"
- require:
- module: maas_config
+-{%- endif %}
+ {%- endif %}