From 99b2747f4d908ea16be7032ddba9fbca765ca615 Mon Sep 17 00:00:00 2001 From: Jimmy McCrory Date: Thu, 22 Sep 2016 21:10:37 -0700 Subject: [PATCH] Use lineinfile to add missing user secrets Using a shell command to find and add missing secrets leads to each one always being reported as 'changed'. For more clear and accurate output, lookup the user's existing secrets and use lineinfile to only add mark changed what was missing. Change-Id: I62b628edf987a182d06a0374822216c33d606c0b --- .../playbooks/user-secrets-adjustment.yml | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/scripts/upgrade-utilities/playbooks/user-secrets-adjustment.yml b/scripts/upgrade-utilities/playbooks/user-secrets-adjustment.yml index 728f67604b..979268ad76 100644 --- a/scripts/upgrade-utilities/playbooks/user-secrets-adjustment.yml +++ b/scripts/upgrade-utilities/playbooks/user-secrets-adjustment.yml @@ -22,12 +22,15 @@ - name: Read example user secrets file shell: "grep '^[a-zA-Z]' {{ playbook_dir }}/../../../etc/openstack_deploy/user_secrets.yml" register: secrets - - name: Add missing secret - shell: | - if ! grep '^{{ item }}' /etc/openstack_deploy/{{ _osa_secrets_file_name }}; then - echo {{ item }} | tee -a /etc/openstack_deploy/{{ _osa_secrets_file_name }} - fi - with_items: secrets.stdout_lines + - name: Read user secrets file + shell: "grep '^[a-zA-Z]' /etc/openstack_deploy/{{ _osa_secrets_file_name }}" + register: user_secrets + - name: Add missing secrets + lineinfile: + dest: "/etc/openstack_deploy/{{ _osa_secrets_file_name }}" + line: "{{ item }}" + with_items: "{{ secrets.stdout_lines }}" + when: user_secrets.stdout.find("{{ item }}") == -1 - name: Generate new secrets shell: "{{ playbook_dir }}/../../../scripts/pw-token-gen.py --file /etc/openstack_deploy/{{ _osa_secrets_file_name }}" vars: