diff --git a/tests/e2e/ansible/install_build_deps.yaml b/tests/e2e/ansible/install_build_deps.yaml index 3d81225a..b605dab0 100644 --- a/tests/e2e/ansible/install_build_deps.yaml +++ b/tests/e2e/ansible/install_build_deps.yaml @@ -13,10 +13,16 @@ name: "{{ build_pkgs[ansible_distribution | lower] }}" state: present - block: - - name: Download and extract Go tarball + - name: Download Go tarball + get_url: + url: https://go.dev/dl/go{{ go_version }}.linux-{{ target_arch }}.tar.gz + dest: /tmp/go{{ go_version }}.linux-{{ target_arch }}.tar.gz + retries: 3 + delay: 10 + - name: Extract Go tarball unarchive: # TODO: use facts - src: https://go.dev/dl/go{{ go_version }}.linux-{{ target_arch }}.tar.gz + src: /tmp/go{{ go_version }}.linux-{{ target_arch }}.tar.gz creates: /usr/local/go dest: /usr/local remote_src: yes diff --git a/tests/e2e/ansible/install_containerd.yaml b/tests/e2e/ansible/install_containerd.yaml index 4f6d1021..2dcd4116 100644 --- a/tests/e2e/ansible/install_containerd.yaml +++ b/tests/e2e/ansible/install_containerd.yaml @@ -31,6 +31,7 @@ containerd config default > /etc/containerd/config.toml args: executable: /bin/bash + warn: false - name: Restart containerd service service: name: containerd diff --git a/tests/e2e/ansible/install_docker.yaml b/tests/e2e/ansible/install_docker.yaml index 8577e781..066edb85 100644 --- a/tests/e2e/ansible/install_docker.yaml +++ b/tests/e2e/ansible/install_docker.yaml @@ -22,17 +22,23 @@ - gnupg - lsb-release state: present + retries: 3 + delay: 10 - name: Add docker repo GPG key apt_key: url: https://download.docker.com/linux/ubuntu/gpg keyring: /etc/apt/trusted.gpg.d/docker.gpg state: present + retries: 3 + delay: 10 - name: Add docker repo apt_repository: repo: "deb [arch={{ target_arch }} signed-by=/etc/apt/trusted.gpg.d/docker.gpg] https://download.docker.com/linux/ubuntu {{ ansible_lsb.codename }} stable" filename: docker update_cache: yes state: present + retries: 3 + delay: 10 - name: Install docker packages package: name: @@ -40,6 +46,8 @@ - docker-ce - docker-ce-cli state: present + retries: 3 + delay: 10 - name: Create the docker group group: name: docker @@ -54,10 +62,14 @@ - docker.io - docker-buildx state: present + retries: 3 + delay: 10 - name: Create the docker group group: name: docker state: present + retries: 3 + delay: 10 when: docker_exist.rc != 0 and ansible_distribution == "Ubuntu" and ansible_distribution_version == "22.04" - name: Handle docker installation on CentOS. block: @@ -65,10 +77,14 @@ dnf: name: yum-utils state: present + retries: 3 + delay: 10 - name: Add docker yum repo shell: yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo args: creates: /etc/yum.repos.d/docker-ce.repo + retries: 3 + delay: 10 - name: Install docker packages dnf: name: @@ -76,6 +92,8 @@ - docker-ce - docker-ce-cli state: present + retries: 3 + delay: 10 when: docker_exist.rc != 0 and ansible_distribution == "CentOS" # # In order to prevent "systemd: docker.service Start request repeated too quickly" diff --git a/tests/e2e/ansible/install_kubeadm.yaml b/tests/e2e/ansible/install_kubeadm.yaml index 97ef5a5b..b8dca6e8 100644 --- a/tests/e2e/ansible/install_kubeadm.yaml +++ b/tests/e2e/ansible/install_kubeadm.yaml @@ -29,15 +29,27 @@ file: path: "{{ cni_home }}/bin" state: directory + - name: Download CNI plugins + get_url: + url: "https://github.com/containernetworking/plugins/releases/download/{{ cni_version }}/cni-plugins-linux-{{ target_arch }}-{{ cni_version }}.tgz" + dest: /tmp/cni-plugins.tgz + retries: 3 + delay: 10 - name: Install CNI plugins unarchive: # TODO: use facts - src: "https://github.com/containernetworking/plugins/releases/download/{{ cni_version }}/cni-plugins-linux-{{ target_arch }}-{{ cni_version }}.tgz" + src: /tmp/cni-plugins.tgz dest: "{{ cni_home }}/bin" remote_src: yes + - name: Download crictl + get_url: + url: "https://github.com/kubernetes-sigs/cri-tools/releases/download/{{ k8s_version }}/crictl-{{ k8s_version }}-linux-{{ target_arch }}.tar.gz" + dest: /tmp/crictl.tar.gz + retries: 3 + delay: 10 - name: Install crictl unarchive: - src: "https://github.com/kubernetes-sigs/cri-tools/releases/download/{{ k8s_version }}/crictl-{{ k8s_version }}-linux-{{ target_arch }}.tar.gz" + src: /tmp/crictl.tar.gz creates: /usr/local/bin/crictl dest: /usr/local/bin remote_src: yes @@ -46,6 +58,8 @@ url: https://storage.googleapis.com/kubernetes-release/release/{{ k8s_version }}/bin/linux/{{ target_arch }}/{{ item }} dest: /usr/local/bin mode: '+x' + retries: 3 + delay: 10 with_items: - kubeadm - kubelet diff --git a/tests/e2e/ansible/install_test_deps.yaml b/tests/e2e/ansible/install_test_deps.yaml index 527bc413..337a9b42 100644 --- a/tests/e2e/ansible/install_test_deps.yaml +++ b/tests/e2e/ansible/install_test_deps.yaml @@ -8,6 +8,8 @@ package: name: "{{ test_pkgs[ansible_distribution | lower] }}" state: present + retries: 3 + delay: 10 # Install bats from source so that we get the latest features. - name: Install bats from sources block: @@ -20,6 +22,8 @@ repo: https://github.com/bats-core/bats-core.git dest: bats-core force: yes + retries: 3 + delay: 10 - name: Install bats shell: cmd: ./install.sh /usr/local @@ -35,16 +39,25 @@ ignore_errors: yes - name: Install kustomize shell: | - curl -s "https://raw.githubusercontent.com/kubernetes-sigs/kustomize/master/hack/install_kustomize.sh" | bash + curl -s --retry 3 --retry-delay 10 "https://raw.githubusercontent.com/kubernetes-sigs/kustomize/master/hack/install_kustomize.sh" | bash cp -f ./kustomize /usr/local/bin args: creates: /usr/local/bin/kustomize + warn: false + retries: 3 + delay: 10 when: kustomize_exist.rc != 0 - block: - - name: Download and extract Go tarball + - name: Download Go tarball + get_url: + url: https://go.dev/dl/go{{ go_version }}.linux-{{ target_arch }}.tar.gz + dest: /tmp/go{{ go_version }}.linux-{{ target_arch }}.tar.gz + retries: 3 + delay: 10 + - name: Extract Go tarball unarchive: # TODO: use facts - src: https://go.dev/dl/go{{ go_version }}.linux-{{ target_arch }}.tar.gz + src: /tmp/go{{ go_version }}.linux-{{ target_arch }}.tar.gz creates: /usr/local/go dest: /usr/local remote_src: yes diff --git a/tests/e2e/ansible/start_docker_registry.yaml b/tests/e2e/ansible/start_docker_registry.yaml index a8eead8e..fad63ac9 100644 --- a/tests/e2e/ansible/start_docker_registry.yaml +++ b/tests/e2e/ansible/start_docker_registry.yaml @@ -17,6 +17,8 @@ # TODO: this is ubuntu specific... name: python3-pip state: present + retries: 3 + delay: 10 # The docker pip is needed by the docker_container ansible module itself. - name: Install docker pip pip: @@ -30,6 +32,8 @@ if [ "$version_ge" = "2.29.0" ]; then pip3 install requests==2.28.1 fi + retries: 3 + delay: 10 - name: Start a docker registry docker_container: name: "{{ local_registry_name }}" @@ -38,6 +42,8 @@ ports: - "{{ local_registry_port }}:{{ local_registry_port }}" state: started + retries: 3 + delay: 10 # # Remove the docker registry container. #