0945
This commit is contained in:
@@ -460,19 +460,73 @@
|
|||||||
|
|
||||||
# ============================ COPY BLOCK SCRIPTS TO DEV2 ============================
|
# ============================ COPY BLOCK SCRIPTS TO DEV2 ============================
|
||||||
|
|
||||||
- name: Copy block scripts to DEV2 via wrapper
|
- name: Ensure staging dir on DEV2 (via wrapper)
|
||||||
delegate_to: localhost
|
delegate_to: localhost
|
||||||
ansible.builtin.shell: |
|
ansible.builtin.shell: |
|
||||||
export DEV2_CMD='mkdir -p "{{ block_dst_dir }}" \
|
export DEV2_CMD='mkdir -p "{{ block_dst_dir }}"'
|
||||||
&& cat > "{{ block_dst_dir }}/{{ item }}" <<'__PTSD_EOF__'
|
|
||||||
{{ lookup('file', block_src_dir ~ '/' ~ item) }}
|
|
||||||
__PTSD_EOF__
|
|
||||||
&& chmod 0755 "{{ block_dst_dir }}/{{ item }}"'
|
|
||||||
{{ dev2_exec_cmd }}
|
{{ dev2_exec_cmd }}
|
||||||
args: { executable: /bin/bash }
|
args: { executable: /bin/bash }
|
||||||
|
changed_when: false
|
||||||
|
|
||||||
|
- name: Copy block scripts controller to DEV2 direct (LLDP direct or LLDP4 fallback)
|
||||||
|
when: dev2_conn_final in ["direct_lldp", "lldp4_fallback"]
|
||||||
|
delegate_to: localhost
|
||||||
|
ansible.builtin.shell: |
|
||||||
|
set -e
|
||||||
|
if [ "{{ dev2_conn_final }}" = "direct_lldp" ]; then
|
||||||
|
HOST="{{ lldp_dev2_ip }}"
|
||||||
|
PASSFILE="{{ dev2_passfile_used_direct }}"
|
||||||
|
else
|
||||||
|
HOST="{{ lldp_dev2_ip }}"
|
||||||
|
PASSFILE="{{ dev2_passfile_used_lldp4 }}"
|
||||||
|
fi
|
||||||
|
|
||||||
|
sshpass -f "$PASSFILE" scp {{ ssh_opts_common }} -P "{{ dev2_port }}" \
|
||||||
|
"{{ block_src_dir }}/{{ item }}" \
|
||||||
|
"{{ dev2_ssh_user }}@${HOST}:{{ block_dst_dir }}/{{ item }}"
|
||||||
|
args: { executable: /bin/bash }
|
||||||
loop: "{{ block_files }}"
|
loop: "{{ block_files }}"
|
||||||
changed_when: true
|
changed_when: true
|
||||||
|
|
||||||
|
- name: Copy block scripts controller to DEV1 staging (for tunnel or LLDP6 via DEV1)
|
||||||
|
when: dev2_conn_final in ["tunnel", "lldp6_via_dev1"]
|
||||||
|
delegate_to: localhost
|
||||||
|
ansible.builtin.shell: |
|
||||||
|
set -e
|
||||||
|
sshpass -p "{{ dev1_pass }}" scp {{ ssh_opts_common }} \
|
||||||
|
"{{ block_src_dir }}/{{ item }}" \
|
||||||
|
"{{ dev1_user }}@{{ inventory_hostname }}:/tmp/{{ item }}"
|
||||||
|
args: { executable: /bin/bash }
|
||||||
|
loop: "{{ block_files }}"
|
||||||
|
changed_when: true
|
||||||
|
|
||||||
|
- name: Stage DEV2 passfile on DEV1 (for DEV1 to DEV2 scp)
|
||||||
|
when: dev2_conn_final in ["tunnel", "lldp6_via_dev1"]
|
||||||
|
delegate_to: localhost
|
||||||
|
ansible.builtin.shell: |
|
||||||
|
set -e
|
||||||
|
PASSFILE="{{ dev2_passfile_used_tunnel if dev2_conn_final == 'tunnel' else dev2_passfile_used_lldp6 }}"
|
||||||
|
sshpass -p "{{ dev1_pass }}" scp {{ ssh_opts_common }} \
|
||||||
|
"$PASSFILE" \
|
||||||
|
"{{ dev1_user }}@{{ inventory_hostname }}:/tmp/ptsd_passfile_dev2"
|
||||||
|
args: { executable: /bin/bash }
|
||||||
|
changed_when: true
|
||||||
|
|
||||||
|
- name: Copy block scripts DEV1 to DEV2 (tunnel or LLDP6 via DEV1)
|
||||||
|
when: dev2_conn_final in ["tunnel", "lldp6_via_dev1"]
|
||||||
|
ansible.builtin.raw: >
|
||||||
|
{{ pathprefix }}
|
||||||
|
(HOST="{{ dev2_host }}";
|
||||||
|
PASSFILE="/tmp/ptsd_passfile_dev2";
|
||||||
|
for f in {{ block_files | join(' ') }}; do
|
||||||
|
sshpass -f "$PASSFILE" scp {{ ssh_opts_common }} -P {{ dev2_port }} "/tmp/$f" "{{ dev2_ssh_user }}@${HOST}:{{ block_dst_dir }}/$f" >/dev/null 2>&1 || exit 1;
|
||||||
|
sshpass -f "$PASSFILE" ssh {{ ssh_opts_common }} -p {{ dev2_port }} "{{ dev2_ssh_user }}@${HOST}" "chmod 0755 {{ block_dst_dir }}/$f" >/dev/null 2>&1 || exit 1;
|
||||||
|
done;
|
||||||
|
exit 0)
|
||||||
|
register: dev1_to_dev2_copy
|
||||||
|
changed_when: true
|
||||||
|
failed_when: dev1_to_dev2_copy.rc != 0
|
||||||
|
|
||||||
post_tasks:
|
post_tasks:
|
||||||
- name: Cleanup note
|
- name: Cleanup note
|
||||||
delegate_to: localhost
|
delegate_to: localhost
|
||||||
|
|||||||
Reference in New Issue
Block a user