docker_compose - Fix idempotency when services have no enabled profiles (#192)

* Initial Commit

* Adding integration tests

* Fixing integration and adding changelog fragment
This commit is contained in:
Ajpantuso
2021-08-20 07:33:35 -04:00
committed by GitHub
parent 50d3b9c280
commit 4dfc3ae5d7
3 changed files with 28 additions and 12 deletions
@@ -30,6 +30,7 @@
- profile_all
stop_grace_period: 1s
test_cases:
- test_name: no services enabled
- test_name: enable 1
profiles_value:
- profile_1
@@ -61,7 +62,7 @@
docker_compose:
project_name: "{{ pname }}"
definition: "{{ test_service | from_yaml }}"
profiles: "{{ test_case.profiles_value }}"
profiles: "{{ test_case.profiles_value | default(omit) }}"
stopped: "{{ test_case.stopped_value | default(omit) }}"
state: present
register: profiles_outputs
@@ -77,20 +78,21 @@
- assert:
that:
- profiles_outputs.results[0].services[cname_1][cname_1_name].state.running
- profiles_outputs.results[0].services[cname_2] == {}
- not profiles_outputs.results[1].services[cname_1][cname_1_name].state.running
- profiles_outputs.results[0] is not changed
- profiles_outputs.results[1].services[cname_1][cname_1_name].state.running
- profiles_outputs.results[1].services[cname_2] == {}
- not profiles_outputs.results[2].services[cname_1][cname_1_name].state.running
- profiles_outputs.results[2].services[cname_2][cname_2_name].state.running
- profiles_outputs.results[2].services[cname_2] == {}
- not profiles_outputs.results[3].services[cname_1][cname_1_name].state.running
- not profiles_outputs.results[3].services[cname_2][cname_2_name].state.running
- profiles_outputs.results[4].services[cname_1][cname_1_name].state.running
- profiles_outputs.results[4].services[cname_2][cname_2_name].state.running
- not profiles_outputs.results[5].services[cname_1][cname_1_name].state.running
- not profiles_outputs.results[5].services[cname_2][cname_2_name].state.running
- profiles_outputs.results[6].services[cname_1][cname_1_name].state.running
- profiles_outputs.results[6].services[cname_2][cname_2_name].state.running
- profiles_outputs.results[3].services[cname_2][cname_2_name].state.running
- not profiles_outputs.results[4].services[cname_1][cname_1_name].state.running
- not profiles_outputs.results[4].services[cname_2][cname_2_name].state.running
- profiles_outputs.results[5].services[cname_1][cname_1_name].state.running
- profiles_outputs.results[5].services[cname_2][cname_2_name].state.running
- not profiles_outputs.results[6].services[cname_1][cname_1_name].state.running
- not profiles_outputs.results[6].services[cname_2][cname_2_name].state.running
- profiles_outputs.results[7].services[cname_1][cname_1_name].state.running
- profiles_outputs.results[7].services[cname_2][cname_2_name].state.running
vars:
cname_1_name: "{{ pname + '_' + cname_1 + '_1' }}"
cname_2_name: "{{ pname + '_' + cname_2 + '_1' }}"