dest: "{{ clone_dest }}/"
     validate_certs: False
     checksum: "{{ civetweb_sha256s }}"
+  register: package_result
+  until: package_result is succeeded
+  retries: 10
+  delay: 5
 
 - name: unarchive civetweb
   unarchive:
 
     dest: "{{ dpdk_dest }}"
     validate_certs: False
     checksum: "{{ dpdk_md5[dpdk_version] }}"
+  register: package_result
+  until: package_result is succeeded
+  retries: 10
+  delay: 5
 
 - unarchive:
     src: "{{ dpdk_dest }}/{{ dpdk_file }}"
 
     dest: "{{ i40evf_dest }}/{{ i40evf_gzfile }}"
     validate_certs: False
     checksum: "{{ i40evf_checksum[i40evf_version] }}"
+  register: package_result
+  until: package_result is succeeded
+  retries: 10
+  delay: 5
 
 - name: Unarchive the i40evf file
   unarchive:
 
   get_url:
     url: "{{ l2fwd_url }}"
     dest: "{{ l2fwd_dest }}"
+  register: package_result
+  until: package_result is succeeded
+  retries: 10
+  delay: 5
 
 - unarchive:
     src: "{{ l2fwd_dest }}/{{ l2fwd_file }}"
 
     dest: "{{ pktgen_dest }}"
     validate_certs: False
     checksum: "{{ pktgen_sha256s[pktgen_version] }}"
+  register: package_result
+  until: package_result is succeeded
+  retries: 10
+  delay: 5
 
 - unarchive:
     src: "{{ pktgen_dest }}/{{ pktgen_file }}"
 
     dest: "{{ trex_dest }}"
     validate_certs: False
     checksum: "{{ trex_sha256s[trex_version] }}"
+  register: package_result
+  until: package_result is succeeded
+  retries: 10
+  delay: 5
 
 - name: unarchive Trex
   unarchive: