Browse Source

Use common playbook to wait for SSH (#4734)

pull/4738/head
Maxime Guyot 5 years ago
committed by Kubernetes Prow Robot
parent
commit
5e3bd2dff1
7 changed files with 17 additions and 38 deletions
  1. 1
      .gitlab-ci/terraform.yml
  2. 9
      tests/cloud_playbooks/create-aws.yml
  3. 5
      tests/cloud_playbooks/create-do.yml
  4. 13
      tests/cloud_playbooks/create-gce.yml
  5. 10
      tests/cloud_playbooks/roles/packet-ci/tasks/create-vms.yml
  6. 12
      tests/cloud_playbooks/wait-for-ssh.yml
  7. 5
      tests/scripts/testcases_run.sh

1
.gitlab-ci/terraform.yml

@ -37,6 +37,7 @@
CI_PLATFORM: tf
script:
- cd tests && make create-${CI_PLATFORM} -s ; cd -
- ansible-playbook tests/cloud_playbooks/wait-for-ssh.yml
- ansible-playbook cluster.yml --become
# - tests/scripts/testcases_prepare.sh
after_script:

9
tests/cloud_playbooks/create-aws.yml

@ -22,12 +22,3 @@
template:
src: ../templates/inventory-aws.j2
dest: "{{ inventory_path }}"
- name: Wait until SSH is available
wait_for:
host: "{{ item.public_ip }}"
port: 22
timeout: 300
state: started
delegate_to: localhost
with_items: "{{ ec2.instances }}"

5
tests/cloud_playbooks/create-do.yml

@ -90,8 +90,3 @@
src: ../templates/inventory-do.j2
dest: "{{ inventory_path }}"
when: state == 'present'
- name: Wait for SSH to come up
wait_for: host={{ item.droplet.ip_address }} port=22 delay=10 timeout=180 state=started
with_items: "{{ droplets.results }}"
when: state == 'present'

13
tests/cloud_playbooks/create-gce.yml

@ -71,16 +71,3 @@
state: absent
recurse: yes
when: delete_group_vars
- name: Wait for instances
hosts: "waitfor_hosts"
gather_facts: false
tasks:
- name: Wait for SSH to come up.
wait_for:
host: "{{ inventory_hostname }}"
port: 22
delay: 60
timeout: 240
state: started
delegate_to: localhost

10
tests/cloud_playbooks/roles/packet-ci/tasks/create-vms.yml

@ -40,16 +40,6 @@
until:
- vm_ips.stdout | ipaddr
- name: Wait for SSH to become available on vms
wait_for:
host: "{{ item.stdout }}"
port: 22
delay: 30
timeout: 240
state: started
with_items:
- "{{ vm_ips.results }}"
- name: "Create inventory for CI test in file /tmp/{{ test_name }}/inventory"
template:
src: "inventory.j2"

12
tests/cloud_playbooks/wait-for-ssh.yml

@ -0,0 +1,12 @@
---
- hosts: all
become: False
gather_facts: False
tasks:
- name: Wait until SSH is available
wait_for:
host: "{{ ansible_ssh_host }}"
port: 22
timeout: 240
delegate_to: localhost

5
tests/scripts/testcases_run.sh

@ -7,12 +7,15 @@ echo "PYPATH is $PYPATH"
pwd
ls
echo ${PWD}
cd tests && make create-${CI_PLATFORM} -s ; cd -
export ANSIBLE_REMOTE_USER=$SSH_USER
export ANSIBLE_BECOME=true
export ANSIBLE_BECOME_USER=root
cd tests && make create-${CI_PLATFORM} -s ; cd -
ansible-playbook tests/cloud_playbooks/wait-for-ssh.yml
# Check out latest tag if testing upgrade
test "${UPGRADE_TEST}" != "false" && git fetch --all && git checkout "$KUBESPRAY_VERSION"
# Checkout the CI vars file so it is available

Loading…
Cancel
Save