--- # Log the admin in, then set the Max* values on each managed group. The helper # writes only on a real diff, so changed_when reflects an actual change. Group # names and values come from p4_group_limits (host_vars). - name: "Ensure the admin is logged in for group operations" ansible.builtin.command: "/p4/common/bin/p4login {{ perforce_id }}" become: true become_user: "{{ perforce_user }}" changed_when: false - name: "Set the resource limits on each managed group" ansible.builtin.command: >- /p4/common/bin/manage_p4group.py set-limits {{ perforce_id }} {{ item.name }} --owner {{ perforce_admin_user }} {% for field, value in item.limits.items() %}--set {{ field }}={{ value }} {% endfor %} become: true become_user: "{{ perforce_user }}" loop: "{{ p4_group_limits }}" loop_control: label: "{{ item.name }}" register: set_limits_result changed_when: "'changed' in set_limits_result.stdout"