community.general/tests/integration/targets/consul/tasks/consul_agent_service.yml

89 lines
2.3 KiB
YAML

---
# Copyright (c) 2024, Michael Ilg (@Ilgmi)
# GNU General Public License v3.0+ (see LICENSES/GPL-3.0-or-later.txt or https://www.gnu.org/licenses/gpl-3.0.txt)
# SPDX-License-Identifier: GPL-3.0-or-later
- name: Create a service
community.general.consul_agent_service:
name: nginx
service_port: 80
address: localhost
tags:
- http
meta:
nginx_version: 1.25.3
register: result
- set_fact:
nginx_service: "{{result.service}}"
- assert:
that:
- result is changed
- result.service.ID is defined
- result.service.Service == 'nginx'
- result.service.Address == 'localhost'
- result.service.Port == 80
- result.service.Tags[0] == 'http'
- result.service.Meta.nginx_version is defined
- result.service.Meta.nginx_version == '1.25.3'
- result.service.ContentHash is defined
- name: Update service
community.general.consul_agent_service:
id: "{{ nginx_service.ID }}"
name: "{{ nginx_service.Service }}"
service_port: 8080
address: 127.0.0.1
tags:
- http
- new_tag
meta:
nginx_version: 1.0.0
nginx: 1.25.3
register: result
- assert:
that:
- result is changed
- result.service.ID is defined
- result.service.Service == 'nginx'
- result.service.Address == '127.0.0.1'
- result.service.Port == 8080
- result.service.Tags[0] == 'http'
- result.service.Tags[1] == 'new_tag'
- result.service.Meta.nginx_version is defined
- result.service.Meta.nginx_version == '1.0.0'
- result.service.Meta.nginx is defined
- result.service.Meta.nginx == '1.25.3'
- result.service.ContentHash is defined
- name: Update service not changed when updating again without changes
community.general.consul_agent_service:
id: "{{ nginx_service.ID }}"
name: "{{ nginx_service.Service }}"
service_port: 8080
address: 127.0.0.1
tags:
- http
- new_tag
meta:
nginx_version: 1.0.0
nginx: 1.25.3
register: result
- assert:
that:
- result is not changed
- result.operation is not defined
- name: Remove service
community.general.consul_agent_service:
id: "{{ nginx_service.ID }}"
state: absent
register: result
- assert:
that:
- result is changed
- result is not failed
- result.operation == 'remove'