Skip to content

Commit

Permalink
fix broken etcd3 module integration test (#239)
Browse files Browse the repository at this point in the history
* fix broken etcd3 module integration test

* rewrite etcd3 test role as role-only integration test

* etcd3 module integration test changes:
- add setup_etcd3 as dependency in meta
- skip python2.6 target as etcd3 won't install

* fix aliases
  • Loading branch information
eric-belhomme authored Apr 28, 2020
1 parent c2e37d2 commit da4e5d3
Show file tree
Hide file tree
Showing 11 changed files with 6 additions and 110 deletions.
5 changes: 3 additions & 2 deletions tests/integration/targets/etcd3/aliases
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
destructive
shippable/posix/group1
destructive
skip/aix
skip/osx
skip/freebsd
disabled
skip/python2.6 # installing etcd3 python module will fail on python < 2.7
13 changes: 0 additions & 13 deletions tests/integration/targets/etcd3/defaults/main.yml

This file was deleted.

1 change: 1 addition & 0 deletions tests/integration/targets/etcd3/meta/main.yml
Original file line number Diff line number Diff line change
@@ -1,2 +1,3 @@
dependencies:
- setup_pkg_mgr
- setup_etcd3
1 change: 1 addition & 0 deletions tests/integration/targets/etcd3/tasks/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@

# ============================================================


- name: run_tests for supported distros
include_tasks: run_tests.yml
when:
Expand Down
86 changes: 1 addition & 85 deletions tests/integration/targets/etcd3/tasks/run_tests.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
---
# test code for the etcd3 module
# (c) 2017, Jean-Philippe Evrard <[email protected]>
# 2020, SCC France, Eric Belhomme <[email protected]>

# This file is part of Ansible
#
Expand All @@ -19,86 +20,6 @@

# ============================================================

- name: python 2
set_fact:
python_suffix: ""
when: ansible_python_version is version('3', '<')

- name: python 3
set_fact:
python_suffix: "-py3"
when: ansible_python_version is version('3', '>=')

- include_vars: '{{ item }}'
with_first_found:
- files:
- '{{ ansible_distribution }}-{{ ansible_distribution_major_version }}{{ python_suffix }}.yml'
- '{{ ansible_distribution }}-{{ ansible_distribution_version }}{{ python_suffix }}.yml'
- '{{ ansible_os_family }}{{ python_suffix }}.yml'
- 'default{{ python_suffix }}.yml'
paths: '../vars'

# Install requirements for etcd3 module
- name: Install etcd3 packages
package:
name: "{{ etcd3_deps_packages }}"
state: present

- name: Install etcd3 module
pip:
name: etcd3
state: present

# Check if re-installing etcd3 is required
- name: Check if etcd3ctl exists for re-use.
shell: "ETCDCTL_API=3 {{ etcd3_path }}/etcdctl --endpoints=localhost:2379 get foo"
args:
executable: /bin/bash
changed_when: false
failed_when: false
register: _testetcd3ctl

# Installing etcd3
- name: If can't reuse, prepare download folder
file:
path: "{{ etcd3_download_location }}"
state: directory
register: _etcddownloadexists
when:
- _testetcd3ctl.rc != 0

- name: Delete download folder if already exists (to start clean)
file:
path: "{{ etcd3_download_location }}"
state: absent
when:
- _testetcd3ctl.rc != 0
- _etcddownloadexists is not changed

- name: Recreate download folder if purged
file:
path: "{{ etcd3_download_location }}"
state: directory
when:
- _testetcd3ctl.rc != 0
- _etcddownloadexists is not changed

- name: Download etcd3
unarchive:
src: "{{ etcd3_download_url }}"
dest: "{{ etcd3_download_location }}"
remote_src: yes
when:
- _testetcd3ctl.rc != 0

# Running etcd3 and kill afterwards if it wasn't running before.
- name: Run etcd3
shell: "{{ etcd3_path }}/etcd &"
register: _etcd3run
changed_when: true
when:
- _testetcd3ctl.rc != 0

# Integration tests
- name: Check mode, show need change
etcd3:
Expand Down Expand Up @@ -171,8 +92,3 @@
- _etcd3_absnt_chgtst is changed
- _etcd3_absnt_idmptnttst is not changed
- _etcd3_absnt_idmptntchktst is not changed

- name: kill etcd3
command: "pkill etcd"
when:
- _testetcd3ctl.rc != 0
1 change: 0 additions & 1 deletion tests/integration/targets/etcd3/vars/RedHat-py3.yml

This file was deleted.

3 changes: 0 additions & 3 deletions tests/integration/targets/etcd3/vars/RedHat.yml

This file was deleted.

3 changes: 0 additions & 3 deletions tests/integration/targets/etcd3/vars/Suse.yml

This file was deleted.

1 change: 0 additions & 1 deletion tests/integration/targets/etcd3/vars/Ubuntu-16-py3.yml

This file was deleted.

1 change: 0 additions & 1 deletion tests/integration/targets/etcd3/vars/Ubuntu-16.yml

This file was deleted.

1 change: 0 additions & 1 deletion tests/integration/targets/etcd3/vars/default.yml

This file was deleted.

0 comments on commit da4e5d3

Please sign in to comment.